下面是我要运行的程序。我遇到问题的部分正在运行 用于计算总票数的 for 循环。我不明白为什么 total_votes += col_totals[i] 不起作用。当我运行该程序时,我得到一个没有意义的总数。例如。 42003993.
int main()
{
int votes[5][4]={192,48,206,37,
147,90,312,21,
186,12,121,38,
114,21,408,39,
267,13,382,29};
char cand[4]={'A','B','C','D'};
int row_totals[5];
int col_totals[4];
int row, col;
for(col=0;col<=3;col++) {
col_totals[col]=0;
for(row=0;row<=4;row++) {
col_totals[col] += votes[row][col];
}
}
total_votes 是我遇到的麻烦。我必须使用 row_totals 或 col_totals 创建一个 for 循环来计算总票数。这是我的:
int total_votes;
int i;
for (i=0; i<=3; i++) {
total_votes += col_totals[i];
}
float percent[4]; //Not finished yet
for(row=0;row<=4;row++)
{
row_totals[row]=0;
for(col=0;col<=3;col++)
{
row_totals[row] += votes[row][col];
}
}
以下是仅供引用的其余代码:如果不添加更多详细信息,我将无法发布,所以这里有一些填充文本。
printf(" Candidate Candidate Candidate Candidate Total\n");
printf(" Precinct A B C D Votes\n");
for(row=0;row<=4;row++)
{
printf("%6d",row+1);
for(col=0;col<=3;col++)
{
printf("%12d",votes[row][col]);
}
printf("%11d\n",row_totals[row]);
}
printf("\nTotal:");
for (col = 0; col <=3; col++) {
for(row=0;row<=4;row++);
{
printf("%12d",col_totals[col]);
}
}
printf("%11d\n", total_votes);
return 0;
}
最佳答案
int total_votes = 0;
您从 += total_votes 开始,但最初的 total_votes 是多少?如果不设置为0,它是一个随机数,它是你创建变量之前给它的内存地址保存的
关于c - 所以我正在用 C 编写一个投票程序,但我无法想出一个 for 循环来计算总票数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46797227/