资源预览内容
第1页 / 共3页
第2页 / 共3页
第3页 / 共3页
亲,该文档总共3页全部预览完了,如果喜欢就下载吧!
资源描述
题目:给定N个学生的基本信息,包括学号(由5个数字组成的字符串)、姓名(长度小于10的不包含空白字符的非空字符串)和3门课程的成绩(0,100区间内的整数),要求输出总分最高学生的姓名、学号和总分。输入格式:输入在一行中给出正整数N(le10)。随后N行,每行给出一位学生的信息,格式为“学号 姓名 成绩1 成绩2 成绩3”,中间以空格分隔。输出格式:在一行中输出总分最高学生的姓名、学号和总分,间隔一个空格。题目保证这样的学生是唯一的。代码:#include struct personint subject3;int avg;char name10,num5;void dataLaunch(struct person student,int gradeLength,int nameLength);void sort(struct person student,int adress,int n);void average(struct person student,int n);int main()int adress30;int n,pp;struct person student30;scanf(%d,&n);dataLaunch(student,n,10);average(student,n);sort(student,adress,n);pp=adress0;printf(%s %s %d,studentpp.name,studentpp.num,studentpp.avg*3);return 0;void dataLaunch(struct person student,int gradeLength,int nameLength)int i,j;for(i=0;igradeLength;i+)scanf(%s %s %d %d %d,studenti.num,studenti.name,&studenti.subject0,&studenti.subject1,&studenti.subject2);void average(struct person student,int n)int i;for(i=0;in;i+)studenti.avg=(studenti.subject0+studenti.subject1+studenti.subject2)/3;void sort(struct person student,int adress,int n)int temp30,temp130;int i,j,demo,flag=0;for(i=0;in;i+)tempi=studenti.avg;temp1i=studenti.avg;while(flag=0)flag=1;for(i=0;itempi)demo=tempi,tempi=tempi+1,tempi+1=demo;flag=0;break;for(i=0;in;i+)for(j=0;jn;j+)if(tempi=temp1j)adressi=j;temp1j=-1;break;
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号