简单C语言改错,刚开始学的,编了一个小程序就是不知道哪里有问题,不会改。求C语言大神帮忙

2025-03-21 11:57:55
推荐回答(3个)
回答1:

这句,你多写了个双引号。

你的问题很多,你里边有两个函数都没有写执行体

void num_kecheng();

void inputstu();

这两个函数仅仅定义了,但是没有方法执行

你的flag变量定义了两次而且都没有给赋初值,你全局定义了一次局部又定义了一次。看你的代码估计就想用一个所以不要再main()函数中在定义了。我大概把问题找完了,因为没具体看你的代码是做什么的,所以后边两个方法你自己补齐一下

#include

#include

#define N 10

#define M 3

int password();

void menu();

void num_score();

void kecheng_score();

void num_kecheng();

void inputstu();

int score[N][M],i,j,num,flag=0;

float sum;

int main()

{

int select;

password();

while(flag)

{

system("cls");

menu();

printf("*************************\n");

printf(" 请选择主菜单序号1-5:");

scanf("%d",&select);

switch(select)

{

case 1:num_score() ;break;

case 2:kecheng_score();break;

case 3:num_kecheng();break;

case 4:inputstu();break;

case 5:flag=0;

}

}

}

int password()

{

int i;

long pw;

system("cls");

for(i=3;i>0;i--)

{

printf("\n\t\t 请输入密码(您还有%d次机会)\n\t\t",i);

scanf("%d",&pw);

if(pw==123456){flag=1;break;}

else flag=0;

}

return flag;

}

void menu()

{

printf("\n\n");

printf(" 欢迎使用学生查询系统!\n\n");

printf("***********************************");

printf(" 请选择查询对象: \n\n");

printf(" 1 欢迎使用学生查询系统!\n\n");

printf(" 2 据学查询成绩及平均成绩\n\n");

printf(" 3 据学生学查询学生成绩\n\n");

printf(" 4 学生原始数据依次输入\n\n");

printf(" 5 退出本系统\n\n");

}

void num_score()

{

printf("请输入查询学生的学号\n");

scanf("%d",&num);

for(i=0;i

if(num==score[i][0])

for(j=1;j

{

printf("%d号课程成绩是%d\n",j,score[i][j]);

sum+=score[i][j];

}

printf("%d号学生的平均成绩为%d\n",num,sum/(M-1));

}

void kecheng_score()

{

printf("查询课程的代号(1-%d): \n",M-1);

scanf("%d",&j);

for(i=0;i

{

printf("查询课程的代号(1-%d): \n",M-1);

scanf("%d",&score[i][j]);

}

}

void num_kecheng(){

}

void inputstu(){

}

回答2:

kecheng_score函数缺一个}结束

回答3: