ccgogogo1121
2021-06-13 17:51
采纳率: 50%
浏览 33

c语言程序设计学生管理系统遇到的问题【菜鸟一枚】

#include<stdio.h>
#include<string.h>

int i=0;
int n;

struct student
{
char number[10];
char name[10];
char sex[4];
int classes;
int chinese,english,maths;
}stu[50];


void input()
{
for(n=0;n<50;n++)
{
printf("请输入学生学号(输入0结束)\n");
scanf("%s",&stu[n].number);
if(stu[n].number==0) { break; }
printf("请输入学生姓名\n");
scanf("%s",stu[n].name);
printf("请输入学生性别\n");
scanf("%s",stu[n].sex);
printf("请输入学生班级\n");
scanf("%d",stu[n].classes);
printf("请输入学生成绩\n");
scanf("%d",&stu[n].chinese);
scanf("%d",&stu[n].english);
scanf("%d",&stu[n].maths);
i=n+1;
}
}


void update()
{int o,j;
char a[10];
printf("请输入需要修改信息的学生学号:");
scanf("%s",&a);
for(n=0;n<i;n++)
{
if(strcmp(a,stu[n].number)==0)
{
printf("学号:%s\n",stu[n].number);
printf("姓名:%s\n",stu[n].name);
printf("班级:%d\n",stu[n].classes);
printf("性别:%s\n",stu[n].sex);
printf("语文成绩:%d\n",stu[n].chinese);
printf("英语成绩:%d\n",stu[n].english);
printf("数学成绩:%d\n",stu[n].maths);
o=n;
}
}
printf("*********************************************\n");
printf("1.学号     2.姓名     3.性别     4.班级\n");
printf("5.语文成绩 6.英语成绩 7.数学成绩 8.退出修改\n");
printf("*********************************************\n");
printf("请选择需要进行的操作");
scanf("%d",&j);
switch(j)
{
case 1:printf("请输入该学生的新学号");
       scanf("%s",stu[o].number);
       break;
case 2:printf("请输入该学生的新姓名");
       scanf("%s",stu[o].name);
       break;
case 3:printf("请输入该学生的新性别");
       scanf("%s",stu[o].sex);
       break;
case 4:printf("请输入该学生的新班级");
       scanf("%d",&stu[o].classes);
       break;
case 5:printf("请输入该学生新的语文成绩");
       scanf("%d",&stu[o].chinese);
       break;
case 6:printf("请输入该学生新的英语成绩");
       scanf("%d",&stu[o].english);
       break;
case 7:printf("请输入该学生新的数学成绩");
       scanf("%d",&stu[o].maths);
       break;
case 8:break;
}


}
}

}

void deal()
{

}

void main(void)
void input()
void update()
{
int x;
while(true)
{
printf("*******************************\n");
printf("*       学生信息管理系统      *\n");
printf("*-----------------------------*\n");
printf("*       1.读入数据            *\n");
printf("*       2.数据修改            *\n");
printf("*       3.数据处理            *\n");
printf("*       4.数据输出            *\n");
printf("*       5.退出                *\n");
printf("*******************************\n");
printf("请选择编号\n");
scanf("%d",&x);
switch(x)
{case 1:input();break;
case 2:update();break;
case 3:deal();break;
case 4:output();break;
case 5:break;}

报错:

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • CSDN专家-sinjack 2021-06-13 17:51
    已采纳

    这提示挺明显的,某个地方少了右大括号}

    提示:写代码的时候,注意好代码规范,该分层注意分层,不然出现这种问题不好排查。

    如有帮忙,望采纳。

    #include<stdio.h>
    #include<string.h>
    int i=0;
    int n;
    struct student
    {
    char number[10];
    char name[10];
    char sex[4];
    int classes;
    int chinese,english,maths;
    }stu[50];
    
    
    void input()
    {
    for(n=0;n<50;n++)
    {
    printf("请输入学生学号(输入0结束)\n");
    scanf("%s",&stu[n].number);
    if(stu[n].number==0) { break; }
    printf("请输入学生姓名\n");
    scanf("%s",stu[n].name);
    printf("请输入学生性别\n");
    scanf("%s",stu[n].sex);
    printf("请输入学生班级\n");
    scanf("%d",stu[n].classes);
    printf("请输入学生成绩\n");
    scanf("%d",&stu[n].chinese);
    scanf("%d",&stu[n].english);
    scanf("%d",&stu[n].maths);
    i=n+1;
    }
    }
    
    
    void update()
    {int o,j;
    char a[10];
    printf("请输入需要修改信息的学生学号:");
    scanf("%s",&a);
    for(n=0;n<i;n++)
    {
    	if(strcmp(a,stu[n].number)==0)
    	{
    	printf("学号:%s\n",stu[n].number);
    	printf("姓名:%s\n",stu[n].name);
    	printf("班级:%d\n",stu[n].classes);
    	printf("性别:%s\n",stu[n].sex);
    	printf("语文成绩:%d\n",stu[n].chinese);
    	printf("英语成绩:%d\n",stu[n].english);
    	printf("数学成绩:%d\n",stu[n].maths);
    	o=n;
    	}
    }
    printf("*********************************************\n");
    printf("1.学号     2.姓名     3.性别     4.班级\n");
    printf("5.语文成绩 6.英语成绩 7.数学成绩 8.退出修改\n");
    printf("*********************************************\n");
    printf("请选择需要进行的操作");
    scanf("%d",&j);
    switch(j)
    {
    case 1:printf("请输入该学生的新学号");
           scanf("%s",stu[o].number);
           break;
    case 2:printf("请输入该学生的新姓名");
           scanf("%s",stu[o].name);
           break;
    case 3:printf("请输入该学生的新性别");
           scanf("%s",stu[o].sex);
           break;
    case 4:printf("请输入该学生的新班级");
           scanf("%d",&stu[o].classes);
           break;
    case 5:printf("请输入该学生新的语文成绩");
           scanf("%d",&stu[o].chinese);
           break;
    case 6:printf("请输入该学生新的英语成绩");
           scanf("%d",&stu[o].english);
           break;
    case 7:printf("请输入该学生新的数学成绩");
           scanf("%d",&stu[o].maths);
           break;
    case 8:break;
    }
    
    
    }
    
    
    void deal()
    {
    }
    
    void main(void){
    int x;
    while(true)
    {
    printf("*******************************\n");
    printf("*       学生信息管理系统      *\n");
    printf("*-----------------------------*\n");
    printf("*       1.读入数据            *\n");
    printf("*       2.数据修改            *\n");
    printf("*       3.数据处理            *\n");
    printf("*       4.数据输出            *\n");
    printf("*       5.退出                *\n");
    printf("*******************************\n");
    printf("请选择编号\n");
    scanf("%d",&x);
    switch(x)
    {case 1:input();break;
    case 2:update();break;
    case 3:deal();break;
    case 4:output();break;
    case 5:break;}
    }
    }
    
    点赞 打赏 评论
  • 有问必答小助手 2021-06-16 14:14

    您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

    如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

    ps: 问答会员【8折】购 ,仅需→¥23.2,即可享受5次/月 有问必答服务,了解详情>>>https://t.csdnimg.cn/RW5m

    点赞 打赏 评论

相关推荐 更多相似问题