C语言编程题:定义一个5╳5的矩阵,求对角线上的元素之和。

要求:1)5╳5的矩阵是一个整型二维数组。2)对角线上交叉的元素只加一次。... 要求:1)5╳5的矩阵是一个整型二维数组。
2)对角线上交叉的元素只加一次。
展开
 我来答
问明6E
高粉答主

2019-05-30 · 每个回答都超有意思的
知道答主
回答量:279
采纳率:100%
帮助的人:12.4万
展开全部

#include<stdio.h>

#include<stdlib.h>

#include<time.h>

void main()

{

int a[4][4],i,j,s1=0,s2=0,sum=0;

srand(time(NULL));//生成随机种子

for(i=0;i<5;i++)//赋值

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

a<i>[j]=rand()%10+0;

printf("随机生成的数组为:\n");

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

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

{

printf("%d\t",a<i>[j]);

if(j==4)

printf("\n");

}

printf("\n");

s1=a[0][0]+a[0][4]+a[1][1]+a[1][3]+a[2][2]+a[3][1]+a[3][3]+a[4][0]+a[4][4];

printf("此数组对角线之和值为:%d\n",s1);

}

扩展资料:

printf()用法:

printf()函数是格式化输出函数,一般用于向标准输出设备按规定格式输出信息。在编写程序时经常会用到此函数。函数的原型为:

int printf(const char*format,...);函数返回值为整型。若成功则返回输出的字符数,输出出错则返回负值。

printf()函数的调用格式为:

printf("<格式化字符串>",<参量表>);其中格式化字符串包括两部分内容:一部分是正常字符,这些字符将按原样输出;另一部分是格式化规定字符,以"%"开始,后跟一个或几个规定字符,用来确定输出内容格式。

参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出;参数个数一样多,各参数之间用","分开,且顺序一一对应,否则将会出现意想不到的错误。

规定符

%d十进制有符号整数

%u十进制无符号整数

%f浮点数

%s字符串

%c单个字符

%p指针的值

%e指数形式的浮点数

%x,%X无符号以十六进制表示的整数

%o无符号以八进制表示的整数

%g把输出的值按照%e或者%f类型中输出长度较小的方式输出

%p输出地址符

%lu 32位无符号整数

%llu 64位无符号整数



百度网友f140e0f
推荐于2018-02-26
知道答主
回答量:2
采纳率:100%
帮助的人:1773
展开全部
#include<stdio.h>
void main()
{
int Fire[5][5];
int i = 0;
int j = 0;
int sum = 0;
printf("请输入一个5×5的矩阵:\n");
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
scanf("%d",&Fire[i][j]);
}
}
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
if(i == j)
sum += Fire[i][j];
if(i+j == 4 && i!=j)
sum += Fire[i][j];
}
}
printf("对角线元素之和为:%d\n",sum);
}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友b3f293a30
2012-06-11 · TA获得超过326个赞
知道小有建树答主
回答量:139
采纳率:0%
帮助的人:175万
展开全部
#include<stdio.h>
int main()
{
int a[5][5]={{1,2,3,4,5},{1,2,3,4,5},{1,2,3,4,5},{1,2,3,4,5},{1,2,3,4,5}};
int sum=0,i;
for (i=0;i<5;i++)
sum=sum+a[i][i];
for (i=0;i<5;i++)
sum=sum+a[i][4-i];
printf("%d\n",sum);
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
na1d38
2012-06-11 · TA获得超过6623个赞
知道大有可为答主
回答量:1944
采纳率:50%
帮助的人:645万
展开全部
for循环的时候i,j同时递增就能够实现了。
追问
能把详细过程写出来吗?可以追加财富值,谢谢了
追答
#include 
int main(){
int a[][5]={1,2,3,4,5,
1,2,3,4,5,
1,2,3,4,5,
1,2,3,4,5,
1,2,3,4,5};
int result = 0;
int i,j;
for(i=0,j=0;i<5;i++,j++){
result = result + a[i][j];
}
printf("Result is %d\n",result);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式