我有一个任务来创建一个包含学生姓名和年级的成绩簿,但我被困在要求我添加新学生的地方。该课程仅允许75名学生使用NAMELENGTH为40。
因此,我编写了一个for循环来搜索数组,并且没有错误或警告,但是该程序跳过了scanf函数,要求输入名称。
这是代码:
#define STUDNO 75
#define NAMELENGTH 40
void super(int studNo,char name [STUDNO][NAMELENGTH],int studMark1[STUDNO],int studMark2[STUDNO],int studMark3[STUDNO],int pinNo[][3])
{
int i;
char newName;
int newNo;
printf("\n Add New Student\n");
printf("\nPlease enter a student number: \n");
scanf("%d",&newNo);
printf("Please enter the student name:\n");
scanf("%[^\n]",&newName);
for(i = studNo-1; i >= newNo; i--)
{
name[STUDNO+1][NAMELENGTH]=name[STUDNO][NAMELENGTH];
}
name[newNo][NAMELENGTH] = newName;