![]() |
#2
rjsp2016-12-12 08:58
|

void main()
{
printf("*****************************************************************\n");
printf("|这是我的数组程序设计【数组应用2】 |\n");
printf("|设计要求: |\n");
printf("|①读入数组下标,求出数组A靠边元素之和; |\n");
printf("|②求从A[0][0]开始的互不相邻的各元素之和; |\n");
printf("|③当m=n时,分别求两条对角线上的元素之和,否则打印出m!=n的信息。|\n");
printf("*****************************************************************\n");
printf("\n");
int m=1;//默认下标
int n=1;
int **A;//动态数组
InPut_m_n:printf("请输入数组A[m][n]的下标m、n,并以逗号隔开(m、n取值在0~100的整数):\n");
scanf("%d,%d",&m,&n);
if(m<1||m>100||n<1||n>100)
{
printf("输入数据越界,请重新输入!\n");
goto InPut_m_n;//输入数据越界重新输入
}
printf("\n");
printf("随机生成%d×%d二维数组如下:\n",m,n);
**A=array_create_rand(m,n);//构造数组
for(int a=0;a<m;a++)//显示元素
{
printf("\n");
for(int b=0;b<n;b++)
printf("%3d",A[a][b]);
}
printf("\n\n");
}
int array_create_rand(int m,int n)//动态数组初始化
{
int **A;
A=(int**)malloc(m*sizeof(int*));//行
if(!A) exit(ERROR);
for(int i0=0;i0<m;i0++)
{
A[i0]=(int*)malloc(n*sizeof(int));//列
if(!A[i0]) exit(ERROR);
}
srand((unsigned)time(NULL));//随机时间
for(int j=0;j<m;j++)
for(int i=0;i<n;i++)
A[j][i]=rand()%100;//0~100之间随机数
return **A;
}
{
printf("*****************************************************************\n");
printf("|这是我的数组程序设计【数组应用2】 |\n");
printf("|设计要求: |\n");
printf("|①读入数组下标,求出数组A靠边元素之和; |\n");
printf("|②求从A[0][0]开始的互不相邻的各元素之和; |\n");
printf("|③当m=n时,分别求两条对角线上的元素之和,否则打印出m!=n的信息。|\n");
printf("*****************************************************************\n");
printf("\n");
int m=1;//默认下标
int n=1;
int **A;//动态数组
InPut_m_n:printf("请输入数组A[m][n]的下标m、n,并以逗号隔开(m、n取值在0~100的整数):\n");
scanf("%d,%d",&m,&n);
if(m<1||m>100||n<1||n>100)
{
printf("输入数据越界,请重新输入!\n");
goto InPut_m_n;//输入数据越界重新输入
}
printf("\n");
printf("随机生成%d×%d二维数组如下:\n",m,n);
**A=array_create_rand(m,n);//构造数组
for(int a=0;a<m;a++)//显示元素
{
printf("\n");
for(int b=0;b<n;b++)
printf("%3d",A[a][b]);
}
printf("\n\n");
}
int array_create_rand(int m,int n)//动态数组初始化
{
int **A;
A=(int**)malloc(m*sizeof(int*));//行
if(!A) exit(ERROR);
for(int i0=0;i0<m;i0++)
{
A[i0]=(int*)malloc(n*sizeof(int));//列
if(!A[i0]) exit(ERROR);
}
srand((unsigned)time(NULL));//随机时间
for(int j=0;j<m;j++)
for(int i=0;i<n;i++)
A[j][i]=rand()%100;//0~100之间随机数
return **A;
}
求解什么问题?

下面有完整程序包:
只有本站会员才能查看附件,请 登录