
C语言 数组 主对角线之积
#include<stdio.h>main(){intl,y,a[4][4],sum=1;printf("pleaseinputsixteennumbers:\n");s...
#include <stdio.h>
main()
{
int l,y,a[4][4],sum=1;
printf("please input sixteen numbers:\n");
scanf("%d",&a[l][y]);
for(l=0;l<4;l++)
{
for(y=0;y<4;y++)
{
printf("%d",a[l][y]);
}
}
printf("主对角线元素之积为:\n");
for(l=0;l<4;l++)
for(y=0;y<4;y++)
{
if(l==y)
sum=sum*a[l][y];
}
printf("%d",sum);
}
出来的是乱码,求解正确编法。 展开
main()
{
int l,y,a[4][4],sum=1;
printf("please input sixteen numbers:\n");
scanf("%d",&a[l][y]);
for(l=0;l<4;l++)
{
for(y=0;y<4;y++)
{
printf("%d",a[l][y]);
}
}
printf("主对角线元素之积为:\n");
for(l=0;l<4;l++)
for(y=0;y<4;y++)
{
if(l==y)
sum=sum*a[l][y];
}
printf("%d",sum);
}
出来的是乱码,求解正确编法。 展开
1个回答
展开全部
scanf("%d",&a[l][y]);这句话有问题,此时的l和y都没有赋值,数组可以用循环的方式输入;
另外计算主对角线元素乘积用单循环就可以实现。程序如下:
#include <stdio.h>
main()
{
int l,y,a[4][4],sum=1;
printf("please input sixteen numbers:\n");
for(l=0;l<4;l++)
{
for(y=0;y<4;y++)
{
scanf("%d",&a[l][y]);
}
}
for(l=0;l<4;l++)
{
for(y=0;y<4;y++)
{
printf("%d\t",a[l][y]);
}
printf("\n");
}
printf("主对角线元素之积为:\n");
for(l=0;l<4;l++)
{
sum*=a[l][l];
}
printf("%d\n",sum);
}
另外计算主对角线元素乘积用单循环就可以实现。程序如下:
#include <stdio.h>
main()
{
int l,y,a[4][4],sum=1;
printf("please input sixteen numbers:\n");
for(l=0;l<4;l++)
{
for(y=0;y<4;y++)
{
scanf("%d",&a[l][y]);
}
}
for(l=0;l<4;l++)
{
for(y=0;y<4;y++)
{
printf("%d\t",a[l][y]);
}
printf("\n");
}
printf("主对角线元素之积为:\n");
for(l=0;l<4;l++)
{
sum*=a[l][l];
}
printf("%d\n",sum);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询