编写一段C语言程序,定义如图所示的一个三行三列的数组,类型为整形,并完成下列各题:

(1)定义数组的时候给数组初始化,并且输出二维数组,输出数组元素的格式为“%2d”。
(2)输出二维数组对角线元素之和;
(3)输出二维数组中最小的那个元素的值,输出的格式为:
数组中值最小的元素为:数组名[行号][列号]=元素值
(4)有提示性的输出语句。

#include<stdio.h>

int main()

{ int i,j,s1=0,s2=0,a[3][3]= {9,8,7,1,2,3,4,5,6},i1=0,j1=0;

  printf("二维数组:\n");

  for(i=0; i<3; i++)

  { s1+=a[i][i];

    s2+=a[i][2-i];

    for(j=0; j<3; j++)

    { printf("%2d",a[i][j]);

      if(a[i][j]<a[i1][j1])

      { i1=i;

        j1=j;

      }

    }

    printf("\n");

  }

  printf("主对角线之和=%d\n",s1);

  printf("次对角线之和=%d\n",s2);

  printf("数组中值最小的元素为:a[%d][%d]=%d\n",i1,j1,a[i1][j1]);

  return 0;

}

温馨提示:内容为网友见解,仅供参考
无其他回答

c语言编程:输入一个三行三列矩阵的各元素整数值,输出第一列和第三列元...
printf("第一列元素之和:%5d\\n第三列元素之和:%5d\\n",sum1,sum3);getchar();}

编程题C语言,在键盘上输入一个3行3列矩阵的各个元素的值?
void fun(int a[3][3])修改为:int fun(int a[3][3])才行的。再填充以下内容:

C语言:定义一个三行三列的矩阵,将其变成转置矩阵并将其输出。 哪儿错了...
{ int s[][3]={{1,2,3},{4,5,6},{7,8,9}};int t[3][3];for(int i=0;i<3;i++){ for(int j=0;j<3;j++){ t[i][j]=s[j][i];printf("%d\\t",t[i][j]);} } printf("\\n");}

C语言:在键盘上输入一个3行3列矩阵的各个元素的值(值为整数),然后输出...
int a[2][2];int sum=0;for(int i=0;i<=2;i++)for(int j=0;j<=2;j++)scanf("%d",&a[i][j]);for(i=0;i<=2;i++)sum+=(a[1][i]+a[2][i]);大致是这样的,你看看。。。

C语言 定义三行四列的整形组数并赋初值,要求按逆顺序输出数组中的元素...
int main(){ int a[3][4],k=0;int b[16];for(int i=0;i<3;i++)for(int j=0;j<4;j++){ scanf("%d",&a[i][j]);\/\/输入 } for(int i=2;i>=0;i--)for(int j=3;j>=0;j--)\/\/输出 { printf("%d ",a[i][j]);if(j==0)printf("\\n");} return 0;} ...

如何用C语言程序编写“利用函数将给定的3*3二维数组转置”
void zhuang zhi(int a[3][3]){int m,n,i;for(m=0;m<2;m++)for(i=0;i<3;i++){if(m!=1||i!=0){n=a[i][m];a[i][m]=a[m][i];a[m][i]=n;} } } int main(){ inta[3][3];inti,j;for(i=0;i<...

C语言 定义三行三列数组 求每行每列和以及数组和 运行后第三列数组...
这里 for(i=0;i<2;i++)x[3][i]=0;和这里 for(j=0;j<5;j++)x[j][3]=0;i和j都改为<4 都是初始化问题 这样应该可以了

c语言,编写程序,分行输出一个三位数的每一个数字,即分三行输出各位数字...
include <stdio.h>int main(){ int i; scanf("%d",&i); printf("个位数:%d\\n",i%10); printf("十位数:%d\\n",i\/10%10); printf("百位数:%d\\n",i\/100); return 0;}

用c语言编写 建立一个三行四列二维数据编写程序,从键盘输入数组,并按...
首先定义一个 int a[3][4]然后scanf("%d",a);接着定义一个int 的指针指向数组最后一位,int *p=&a[2][3];用一个循环while(p>a) p-- 打印出*p的值,差不多就这样,试一下

3乘3的数组,C语言,求三行三列和对角线的和
{ int a[3][3];int i,j,sum=0,sum2=0,k;printf("input arrry:");for(i=0;i<3;i++)for(j=0;j<3;j++){ scanf("%d",&a[i][j]);} for(i=0;i<3;i++)for(j=0;j<3;j++){ printf(" %d ",a[i][j]);if(j==2) printf("\\n");} for(i=0;i<3;i++)f...

相似回答