二维数组答疑
我想计算两个二维数组的乘积,为何运行出来,只有第一个元素的结果?#include <stdio.h>
int main()
{
int a={
{1,2,3},
{4,5,6}};
int b={
{1,4},
{2,5},
{3,6}};
int i,j;
int sum=0,p;
int c;
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
for(p=0;p<3;p++)
{
sum=sum+a*b;
}
c=sum;
printf("%d ",c);
j++;
sum=0;
}
i++;
}
return 0;
} #include <stdio.h>
int main()
{
int a={
{1,2,3},
{4,5,6}};
int b={
{1,4},
{2,5},
{3,6}};
int i,j;
int sum=0,p;
int c;
for(i=0;i<2;i++)
{
for(j=0;j<2;j++)
{
for(p=0;p<3;p++)
{
sum=sum+a*b;
}
c=sum;
printf("%d ",c);
j++; //这里for里已经j++了这里再++肯定直接跳出循环了啊
sum=0;
}
i++; //这里和上面一个道理 说白了你这3层嵌套值执行了一次
}
return 0;
}
页:
[1]