c - 循环scanf问题,多次尝试后崩溃

标签 c loops for-loop scanf

所以我试图制作一个使用数组输入成绩的程序,这是主循环。问题是它成功地要求输入,但在第 5 个学生、第 1 科目之后,它崩溃了,我哪里出错了???

当studloop=4时崩溃开始;梯度循环=2

float data[4][7];
for(studLoop = 0; studLoop < 5; studLoop++){

    ave=0;
    printf("\nStudent %d ID#", studLoop+1);
    data[studLoop][0] = inputNum();
    for(gradLoop = 1; gradLoop < 7; gradLoop++){

        printf("Subject %d: ", gradLoop);
        data[studLoop][gradLoop] = inputNum();
        gradLoop = checkGrade(data[studLoop][gradLoop], gradLoop, ave);

    }
    data[studLoop][7] = ave / 6;
    printf("press any key to continue...");
    getch();
    system("cls");
}

最佳答案

既然您尝试存储 5 个学生和每个学生的 7 个成绩,那么:

float data[4][7];

应该是

float data[5][7];

关于c - 循环scanf问题,多次尝试后崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53476428/

相关文章:

c - 在c语言中如何在printf中添加空格?

c++ - 如何在没有 if-else 的情况下无限循环或循环到极限

WPF 播放和停止多个 MediaElements

c - 在 C 中打印字长直方图

Javascript for 循环性能

php - PHP和C语言中的自增运算符

c - 如何读取 C 中的管道内容?

c++ - 优化for循环的函数调用

c - CLion IDE 中的文件 I/O

Python 3.4 : Trying to . rjust 一个完整的数字循环