[试图从scanf更改时出现问题

问题描述 投票:0回答:1

//开始学习如何使用fgets,但是在尝试获取成绩输入时,我做错了。这个想法是用户可以输入任意多次的成绩,但是当输入高于100时会提示他们下一个问题//

while (i < 100) { //till array reaches 100

    printf("Please enter Student 1's grade %d: \n", i + 1);
    fgets(FirstStuGrade[i],100,stdin);
    if (FirstStuGrade[i] > 100) //if grade entered is greater than 100 break out of loop using break statement
        break;
    sum1 = sum1 + FirstStuGrade[i]; //add in sum the grade
    i = i + 1; //increment for next iteration
    countfirst++; //keeping count of number of grades entered
}

printf("Please enter Student 1's number of absences:\n");
fgets(intFirstStudentNumAbs,50,stdin);
c arrays
1个回答
0
投票

如果变量:FirstStuGrade[i]

定义为:

char FirstStuGrade[100][80];

然后是功能行:

fgets(FirstStuGrade[i],100,stdin);

可能会起作用。如果不是,则可能不会传递以nul结尾的char数组,而是一个char

© www.soinside.com 2019 - 2024. All rights reserved.