第二个for语句最后的分号去掉
/**
* @file score.c
*
* @brief
* @author Zhang Jianfa
* @copyright (C) 2021zhangjianfa. All rights reserved.
* @date 2021-09-11
*/
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
int i,j;
double score[4][3];
for(i = 0; i < 4; i++)
{
for(j = 0; j < 3; j++)
{
printf("请输入第%d位同学的第%d门成绩:", i + 1, j + 1);
scanf("%lf", &score[i][j]);
}
}
}
第二个for循环你多写了个分号
你好,你的代码主要是两个问题:
1.scanf参数".1%lf"里加位数限制是错误的写法,会导致输入为0。正确的写法应该是scanf("%lf", &score[x][y]);
2.for(y = 0; y < 3; y++)后多了一个";",应该删除此分号。
希望对你有用!
附上代码。加了调试信息,方便查看结果。
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char * argv[]) {
int x, y, z;
double score[4][3];
for(x = 0; x < 4; x++)
{
for(y = 0; y < 3; y++)
{
printf("请输入第%d同学的第%d门课成绩:\n", x + 1, y + 1);
scanf("%lf", &score[x][y]); ///< scanf参数里加位数限制,会导致输入0
}
}
///< 打印信息
printf("成绩打印:\r\n");
for(x = 0; x < 4; x++)
{
for(y = 0; y < 3; y++)
{
printf("请输入第%d同学的第%d门课成绩:%lf\n", x + 1, y + 1, score[x][y]);
}
}
return 0;
}