帮忙看一下这个C语言程序错在哪里了

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了帮忙看一下这个C语言程序错在哪里了相关的知识,希望对你有一定的参考价值。

nclude<stdio.h>
int ReadScore(long num[],float score[],int n)

int i=0;
scanf("%ld%f",&num[i],&score[i]);
while(score[i]>=0)

i++;
scanf("%ld%f",&num[i],&score[i]);

return i;
//录入每个学生的学号和考试成绩
int FindMax(int score[],long num[],int n,long*pMaxNum)

int i;
int maxScore;
maxScore=score[0];
*pMaxNum=num[0];
for(i=0;i<n;i++)
if(score[i]>maxScore)
maxScore=score[i];
*pMaxNum=num[i];

return(maxScore,*pMaxNum);
//计算并输出最高分及相应学生的学号
void sort(int score[],long num[],int n)

int i,j,h;
long t;
for(i=0;i<n-1;i++)
for(j=0;j<n-i-1;j++)
if(num[j]>num[j+1])
t=num[j];num[j]=num[j+1];num[j+1]=t;
h=score[j];score[j+1]=score[j],score[j]=h;

printf("form:\n");
for(i=0;i<n;i++)
printf("%ld %d",num[i],score[i]);
// 按学号由小到大排出成绩表
void main()
int a,k=0,i,n;
int maxScore,*pMaxNum;
int ReadScore(long num[],float score[],int n);
int FindMax(int score[],long num[],int k,long*pMaxNum);
void sort(int score[],long num[],int n);
printf("1.Appdend record\n 2.Caculate Max.score of course and number\n3.Sort in ascending order by number\n0.Exist\nPlease enter your choise:\n");
scanf("%d",&a);//程序运行后先显示如下菜单
while(a!=0)//输入0退出菜单

if(a==1)
ReadScore(num,score,n);//输入1进入“录入每个学生的学号和考试成绩”
if(a==2)

printf("The highest score is: %d\n The student number is :%ld");
FindMax(score,num,n,pMaxNum);
//输入2进入“计算并输出最高分及相应学生的学号”
if(a==3)

sort(num,score,n);
//输入3进入“按学号由小到大排出成绩表”


if(a==1)时下面的语句 ReadScore(num,score,n);调试时出现下面的错误
: error C2065: 'num' : undeclared identifier
: error C2065: 'score' : undeclared identifier

程序原题如下:
某班有最多不超过30人(具体人数由键盘输入)参加某门课程的考试,用一维数组和指针作函数参数,编程实现如下菜单驱动的学生成绩管理系统:
(1)录入每个学生的学号和考试成绩;
(2)计算并输出最高分及相应学生的学号;
(3)按学号由小到大排出成绩表。
要求程序运行后先显示如下菜单,并提示用户输入选项:
1.Append record
2.Caculate Max. score of course and number
3.Sort in ascending order by number
0.Exit
Please enter your choice:
然后,根据用户输入的选项执行相应的操作。

参考技术A 错误1: ReadScore(num,score,n); num 与 score 变量未申明;应该是num 与score数组元素的输入
错误2:头文件包含有误 (估计是楼主没复制好)追问

所以额。。。。。。怎么改???

参考技术B 修改后:
#include "stdio.h"
int max(int x,int y)
int e;
if(x>y) e=x;
else e=y;
return e;

int main()
printf("请输入三个整数\n");
int a,b,c,d;
scanf("%d%d%d",&a,&b,&c);
d=max(max(a,b),c);
printf("最大数是%d\n",d);
return 0;

以上回答你满意么?追问

你没有明白我程序的用意

本回答被提问者和网友采纳
参考技术C int FindMax(int score[],long num[],int n,long*pMaxNum)
这个函数返回的是一个int型参数,pMaxNum是一个long型的指针!怎么能同时返回两个参数呢?

以上是关于帮忙看一下这个C语言程序错在哪里了的主要内容,如果未能解决你的问题,请参考以下文章

帮我看看程序错在哪里了!

c语言问题帮忙调试程序,看看下面程序错在哪儿?

请C语言高手告诉我我错在哪里?

骑士游历C语言递归,请大家帮忙看下哪里错了,谢谢

C # 如何实现PC的串口通讯(一台PC 双串口通讯),以下程序设计为啥不能发送接收,错在了哪里吗?

c语言判断输入的是不是是数字(不止一位)