帮忙看一下这个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:
然后,根据用户输入的选项执行相应的操作。
错误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语言程序错在哪里了的主要内容,如果未能解决你的问题,请参考以下文章