gpt4 book ai didi

c - 二维排列练习

转载 作者:太空宇宙 更新时间:2023-11-04 02:20:04 26 4
gpt4 key购买 nike

首先,抱歉我语言不通。我自己正在使用 VC++ Express。

现在我正在研究安排。这本书给了我一个这样的项目:

  • 制作一个 5x5 矩阵。
  • 每列都是主题(其中 4 个)
  • 每一行都是给学生的(同样是 4 位学生)
  • 每个单元格保存一个分数。
  • 在每行/列的末尾,对行/列求和。

alt text
(来源:dcinside.com)

这是我的回答程序:

int main(void)
{
int arr[5][5];
int i,j;

while(1)
{
printf("student: 1.Jim,2.Jombi,3.Joly,4.Moran if you done, type 0\n");
scanf("%d", &i);

if(i=0)
break;

printf("subject: 1.english,2.spanish,3.poolish,4.flash\n");
scanf("%d", &j);

printf("insult score!\n");
scanf("%d", arr[i-1][j-1]);//insulting score
}

for(i=0;i<4;i++)//initialization of sum parts
{
arr[i][4]=0;
arr[4][i]=0;
}

for(i=0;i<4;i++)
for(j=0;j<4;j++)
arr[4][i]+=arr[j][i];

for(i=0;i<4;i++)
for(j=0;j<4;j++)
arr[i][4]+=arr[i][j];


for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
printf("%d ",arr[i][j]);//printing result
printf("\n");
}
return 0;
}

我完全不知道为什么这段代码不起作用。即使当我只尝试“while”部分时,它也没有用。这是为什么?

最佳答案

如前所述,您的if错误

if (i == 0)
/* ^^^ */

而且你的scanf也错了

scanf("%d", &arr[i-1][j-1]);
/* ^^^ */

你真的,真的,真的应该用一些东西(可能是零)初始化数组

int arr[5][5] = {0};

关于c - 二维排列练习,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1729761/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com