设有一包含10个元素的学生结构体数组,结构体包括学号、姓名、5门课程成绩等分量,利用结构体指针变量操作
设有一包含10个元素的学生结构体数组,结构体包括学号、姓名、5门课程成绩等分量,利用结构体指针变量操作数组,求总成绩最高的学生学号和姓名。...
设有一包含10个元素的学生结构体数组,结构体包括学号、姓名、5门课程成绩等分量,利用结构体指针变量操作数组,求总成绩最高的学生学号和姓名。
展开
若以下回答无法解决问题,邀请你更新回答
1个回答
展开全部
看看是否有帮助?
#include "stdafx.h"
#include "iomanip.h"
#include "stdio.h"
#include "time.h"
struct STUDENT{
char xh[20];
char xm[20];
int yw;
int sx;
int wl;
int zz;
int ty;
};
void RecordIn(STUDENT *pstu){//
for(char i=0;i<10;i++){
cout<<"请输入学生学号:"<<endl;
cin>>(pstu+i)->xh;
cout<<"请输入学生姓名:"<<endl;
cin>>(pstu+i)->xm;
cout<<"输入语言成绩:"<<endl;
cin>>(pstu+i)->yw;
cout<<"输入数学成绩:"<<endl;
cin>>(pstu+i)->sx;
cout<<"输入物理成绩:"<<endl;
cin>>(pstu+i)->wl;
cout<<"输入政治成绩:"<<endl;
cin>>(pstu+i)->zz;
cout<<"输入体育成绩:"<<endl;
cin>>(pstu+i)->ty;
}
cout<<"录入完毕……"<<endl;
}
void SerchMax(STUDENT *p){
int total[10]={0,10,2,3,9,4,5,6,7,8},Max=0,iMax;
for(char i=0;i<10;i++){
*(total+i)=p->yw+p->sx+p->wl+p->zz+p->ty;
}
for(i=0;i<10;i++){printf("%d : ",*(total+i));
if(*(total+i)>Max){
Max=*(total+i);
iMax=i;
}
}
printf("总成绩最高学生学号为:%s 姓名为:%s\n\n",(p+iMax)->xh,(p+iMax)->xm);
}
void main(void){
STUDENT student[10],*pstu=student;
RecordIn(pstu);
SerchMax(pstu);
}
#include "stdafx.h"
#include "iomanip.h"
#include "stdio.h"
#include "time.h"
struct STUDENT{
char xh[20];
char xm[20];
int yw;
int sx;
int wl;
int zz;
int ty;
};
void RecordIn(STUDENT *pstu){//
for(char i=0;i<10;i++){
cout<<"请输入学生学号:"<<endl;
cin>>(pstu+i)->xh;
cout<<"请输入学生姓名:"<<endl;
cin>>(pstu+i)->xm;
cout<<"输入语言成绩:"<<endl;
cin>>(pstu+i)->yw;
cout<<"输入数学成绩:"<<endl;
cin>>(pstu+i)->sx;
cout<<"输入物理成绩:"<<endl;
cin>>(pstu+i)->wl;
cout<<"输入政治成绩:"<<endl;
cin>>(pstu+i)->zz;
cout<<"输入体育成绩:"<<endl;
cin>>(pstu+i)->ty;
}
cout<<"录入完毕……"<<endl;
}
void SerchMax(STUDENT *p){
int total[10]={0,10,2,3,9,4,5,6,7,8},Max=0,iMax;
for(char i=0;i<10;i++){
*(total+i)=p->yw+p->sx+p->wl+p->zz+p->ty;
}
for(i=0;i<10;i++){printf("%d : ",*(total+i));
if(*(total+i)>Max){
Max=*(total+i);
iMax=i;
}
}
printf("总成绩最高学生学号为:%s 姓名为:%s\n\n",(p+iMax)->xh,(p+iMax)->xm);
}
void main(void){
STUDENT student[10],*pstu=student;
RecordIn(pstu);
SerchMax(pstu);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询