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

#include<stdio.h>#include<stdlib.h>#defineN10#defineM3intpassword();voidmenu();voidnu... #include<stdio.h>
#include<stdlib.h>
#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;
float sum;
int main()
{
int select,flag;
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次机会);",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<N;i++)
if(num==score[i][0])
for(j=1;j<M;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<N;i++)
{
printf("查询课程的代号(1-%d): \n",M-1);
scanf("%d",&score[i][j]);
}
展开
 我来答
百度网友2e3bb52
2019-01-05 · TA获得超过241个赞
知道小有建树答主
回答量:392
采纳率:72%
帮助的人:30.7万
展开全部

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

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

void num_kecheng();

void inputstu();

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

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

#include<stdio.h>

#include<stdlib.h>

#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<N;i++)

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

for(j=1;j<M;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<N;i++)

{

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

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

}

}

void num_kecheng(){

}

void inputstu(){

}

wukong6633159
2019-01-05 · 超过47用户采纳过TA的回答
知道答主
回答量:225
采纳率:40%
帮助的人:35.7万
展开全部
kecheng_score函数缺一个}结束
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2019-01-05
展开全部

追问
大佬,可以帮我改好,私信发给我么?
引号删了错误增加到七个了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式