社区
新手乐园
帖子详情
求解决问题
st_laohu
2012-03-23 08:52:05
如何从用户输入的10个学生的(学号,姓名,成绩)获取他们成绩之和呢?????
...全文
173
16
打赏
收藏
求解决问题
如何从用户输入的10个学生的(学号,姓名,成绩)获取他们成绩之和呢?????
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
16 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
InfoStation信息站
2012-03-24
打赏
举报
回复
//下面是我以前写过的作业,程序正确,基本上可以满足你说的功能,类和结构体都实现了,自己拿去改改,别太懒了哦,有用的话就采纳
#include <iostream>
#include <iomanip>
using namespace std;
struct student
{
int no;
char name[10];
double math;
double english;
double politics;
double total;
}stu[5];
void input(struct student*stu_array,int n);
void sum(struct student*stu_array,int n);
void output(struct student*stu_array,int n);
void input(struct student*stu_array,int n)
{
for(int i=0;i<5;i++)
{
cout<<"请输入学生"<<i+1<<"学号"<<endl;
cin>>stu_array[i].no;
cout<<"请输入学生"<<i+1<<"姓名"<<endl;
cin>>stu_array[i].name;
cout<<"请输入学生"<<i+1<<"数学成绩"<<endl;
cin>>stu_array[i].math;
cout<<"请输入学生"<<i+1<<"英语成绩"<<endl;
cin>>stu_array[i].english;
cout<<"请输入学生"<<i+1<<"政治成绩"<<endl;
cin>>stu_array[i].politics;
}
}
void sum(struct student*stu_array,int n)
{
for(int i=0;i<5;i++)
{stu_array[i].total=stu_array[i].math+stu_array[i].english+stu_array[i].politics; }
for(int i=0;i<4;i++)
{
student temp;
for(int j=i+1;j<5;j++)
if(stu_array[i].total<stu_array[j].total)
{
temp=stu_array[i];
stu_array[i]=stu_array[j];
stu_array[j]=temp;
}
}
}
void output(struct student*stu_array,int n)
{
int i;
for( i=0;i<5;i++)
{cout<<"学号"<<setw(5)<<" 姓名"<<setw(5)<<" 数学"<<setw(5)<<" 英语"<<setw(5)<<" 政治 "<<setw(5)<<" 总成绩 "<<endl;
cout<<stu_array[i].no<<setw(8)<<stu_array[i].name<<setw(8)<<stu_array[i].math<<setw(8)<<stu_array[i].english<<setw(8);
cout<<stu_array[i].politics<<setw(8)<<stu_array[i].total<<endl;
}
}
int main()
{
input(stu,5);
sum(stu,5);
output(stu,5);
system("PAUSE");
return EXIT_SUCCESS;
}
——————————————————————————————————————————————
#include <iostream>
#include <iomanip>
using namespace std;
class student
{
public:
void input();
friend void sum(student*,int n);
void output();
private:
int no;
char name[10];
double math;
double english;
double politics;
double total;
};
void student::input()
{
cout<<"请输入学生学号"<<endl;
cin>>no;
cout<<"请输入学生姓名"<<endl;
cin>>name;
cout<<"请输入学生数学成绩"<<endl;
cin>>math;
cout<<"请输入学生英语成绩"<<endl;
cin>>english;
cout<<"请输入学生政治成绩"<<endl;
cin>>politics;
}
void sum(student*stu_array,int n)
{
for(int i=0;i<5;i++)
{stu_array[i].total=stu_array[i].math+stu_array[i].english+stu_array[i].politics; }
for(int i=0;i<4;i++)
{
student temp;
for(int j=i+1;j<5;j++)
if(stu_array[i].total<stu_array[j].total)
{
temp=stu_array[i];
stu_array[i]=stu_array[j];
stu_array[j]=temp;
}
}
}
void student::output()
{
cout<<"学号"<<setw(5)<<" 姓名"<<setw(5)<<" 数学"<<setw(5)<<" 英语"<<setw(5)<<" 政治 "<<setw(5)<<" 总成绩 "<<endl;
cout<<no<<setw(8)<<name<<setw(8)<<math<<setw(8)<<english<<setw(8);
cout<<politics<<setw(8)<<total<<endl;
}
int main()
{
student s[5];
for(int i=0;i<5;i++)
{ cout<<"please input information of students:"<<endl;
s[i].input();
cout<<endl;
}
sum(s,5);
for(int i=0;i<5;i++)
{
cout<<"print information of students:"<<endl;
s[i].output();
}
system("PAUSE");
return EXIT_SUCCESS;
}
InfoStation信息站
2012-03-24
打赏
举报
回复
//下面是我以前写过的作业,程序正确,基本上可以满足你说的功能,类和结构体都实现了,自己拿去改改,别太懒了哦,有用的话就采纳
#include <iostream>
#include <iomanip>
using namespace std;
struct student
{
int no;
char name[10];
double math;
double english;
double politics;
double total;
}stu[5];
void input(struct student*stu_array,int n);
void sum(struct student*stu_array,int n);
void output(struct student*stu_array,int n);
void input(struct student*stu_array,int n)
{
for(int i=0;i<5;i++)
{
cout<<"请输入学生"<<i+1<<"学号"<<endl;
cin>>stu_array[i].no;
cout<<"请输入学生"<<i+1<<"姓名"<<endl;
cin>>stu_array[i].name;
cout<<"请输入学生"<<i+1<<"数学成绩"<<endl;
cin>>stu_array[i].math;
cout<<"请输入学生"<<i+1<<"英语成绩"<<endl;
cin>>stu_array[i].english;
cout<<"请输入学生"<<i+1<<"政治成绩"<<endl;
cin>>stu_array[i].politics;
}
}
void sum(struct student*stu_array,int n)
{
for(int i=0;i<5;i++)
{stu_array[i].total=stu_array[i].math+stu_array[i].english+stu_array[i].politics; }
for(int i=0;i<4;i++)
{
student temp;
for(int j=i+1;j<5;j++)
if(stu_array[i].total<stu_array[j].total)
{
temp=stu_array[i];
stu_array[i]=stu_array[j];
stu_array[j]=temp;
}
}
}
void output(struct student*stu_array,int n)
{
int i;
for( i=0;i<5;i++)
{cout<<"学号"<<setw(5)<<" 姓名"<<setw(5)<<" 数学"<<setw(5)<<" 英语"<<setw(5)<<" 政治 "<<setw(5)<<" 总成绩 "<<endl;
cout<<stu_array[i].no<<setw(8)<<stu_array[i].name<<setw(8)<<stu_array[i].math<<setw(8)<<stu_array[i].english<<setw(8);
cout<<stu_array[i].politics<<setw(8)<<stu_array[i].total<<endl;
}
}
int main()
{
input(stu,5);
sum(stu,5);
output(stu,5);
system("PAUSE");
return EXIT_SUCCESS;
}
——————————————————————————————————————————————
#include <iostream>
#include <iomanip>
using namespace std;
class student
{
public:
void input();
friend void sum(student*,int n);
void output();
private:
int no;
char name[10];
double math;
double english;
double politics;
double total;
};
void student::input()
{
cout<<"请输入学生学号"<<endl;
cin>>no;
cout<<"请输入学生姓名"<<endl;
cin>>name;
cout<<"请输入学生数学成绩"<<endl;
cin>>math;
cout<<"请输入学生英语成绩"<<endl;
cin>>english;
cout<<"请输入学生政治成绩"<<endl;
cin>>politics;
}
void sum(student*stu_array,int n)
{
for(int i=0;i<5;i++)
{stu_array[i].total=stu_array[i].math+stu_array[i].english+stu_array[i].politics; }
for(int i=0;i<4;i++)
{
student temp;
for(int j=i+1;j<5;j++)
if(stu_array[i].total<stu_array[j].total)
{
temp=stu_array[i];
stu_array[i]=stu_array[j];
stu_array[j]=temp;
}
}
}
void student::output()
{
cout<<"学号"<<setw(5)<<" 姓名"<<setw(5)<<" 数学"<<setw(5)<<" 英语"<<setw(5)<<" 政治 "<<setw(5)<<" 总成绩 "<<endl;
cout<<no<<setw(8)<<name<<setw(8)<<math<<setw(8)<<english<<setw(8);
cout<<politics<<setw(8)<<total<<endl;
}
int main()
{
student s[5];
for(int i=0;i<5;i++)
{ cout<<"please input information of students:"<<endl;
s[i].input();
cout<<endl;
}
sum(s,5);
for(int i=0;i<5;i++)
{
cout<<"print information of students:"<<endl;
s[i].output();
}
system("PAUSE");
return EXIT_SUCCESS;
}
st_laohu
2012-03-24
打赏
举报
回复
那要求英语的总分呢~[Quote=引用 12 楼 zhangshuaizaxia 的回复:]
讲下思路啦
你把每科的成绩求和如:sum=arr_[0].english+arr_[1].english……arr_[i].english,然后average=sum/i,就可以了啦
[/Quote]
ziyue007
2012-03-24
打赏
举报
回复
帮顶,不难的,机构体就成
InfoStation信息站
2012-03-24
打赏
举报
回复
这是函数原型说明,没必要写参数,写参数其实也没用,但是类型申明不能省,所以必须写students*
st_laohu
2012-03-24
打赏
举报
回复
friend void sum(
student*,
int n);
为什么*号后面没参数呢?
[Quote=引用 10 楼 zhangshuaizaxia 的回复:]
//下面是我以前写过的作业,程序正确,基本上可以满足你说的功能,类和结构体都实现了,自己拿去改改,别太懒了哦,有用的话就采纳
#include <iostream>
#include <iomanip>
using namespace std;
struct student
{
int no;
char name[10];
double math;
do……
[/Quote]
InfoStation信息站
2012-03-24
打赏
举报
回复
讲下思路啦
你把每科的成绩求和如:sum=arr_[0].english+arr_[1].english……arr_[i].english,然后average=sum/i,就可以了啦
st_laohu
2012-03-24
打赏
举报
回复
那怎么求他们每科总分的平均分?
[Quote=引用 10 楼 zhangshuaizaxia 的回复:]
//下面是我以前写过的作业,程序正确,基本上可以满足你说的功能,类和结构体都实现了,自己拿去改改,别太懒了哦,有用的话就采纳
#include <iostream>
#include <iomanip>
using namespace std;
struct student
{
int no;
char name[10];
double math;
do……
[/Quote]
shn521
2012-03-23
打赏
举报
回复
如果只存信息,那类和结构体都行
st_laohu
2012-03-23
打赏
举报
回复
还要查询每个学生的信息啊~
[Quote=引用 6 楼 shn521 的回复:]
你的学号,姓名需要记录吗?
如果不需要,那你直接把成绩存到一个int数组里,然后求和就可以了啊
[/Quote]
shn521
2012-03-23
打赏
举报
回复
你的学号,姓名需要记录吗?
如果不需要,那你直接把成绩存到一个int数组里,然后求和就可以了啊
st_laohu
2012-03-23
打赏
举报
回复
是否一定要用结构体数组??
[Quote=引用 2 楼 shn521 的回复:]
定义个结构体数组
[/Quote]
st_laohu
2012-03-23
打赏
举报
回复
我用了类来做了=。=
[Quote=引用 2 楼 shn521 的回复:]
定义个结构体数组
[/Quote]
st_laohu
2012-03-23
打赏
举报
回复
每次输的是(学号,姓名 ,成绩)啊 ~
[Quote=引用 1 楼 w170532934 的回复:]
每输入一个成绩就累加起来不就可以了么?
[/Quote]
shn521
2012-03-23
打赏
举报
回复
定义个结构体数组
W170532934
2012-03-23
打赏
举报
回复
每输入一个成绩就累加起来不就可以了么?
合道
求
财,敏捷4P:人、意图、制度、
解决问题
本文探讨敏捷方法论的核心理念,即'合道
求
财'。通过以人为本,追
求
最短时间内的最高商业价值,敏捷应对市场变化,提高产品多样性和时效性。文章分析敏捷宣言的精髓,强调个体互动、客户合作的重要性,并提出敏捷转型的四个关键要素:人、意图、制度和
解决问题
。
求
大佬
解决问题
,
本文介绍了Markdown编辑器的使用方法和新功能。编辑器进行了功能拓展与语法支持,如全新界面设计、图片拖拽、KaTeX数学公式等。还介绍了功能快捷键、标题创建、文本样式改变等基本语法,以及表格、甘特图、UML图表等的创建,最后说明了导出与导入功能。
求
大神帮助
解决问题
本文探讨了使用单向循环链表解决约瑟夫环问题的方法,详细介绍了链表的创建、密码输入及出列顺序的输出流程。作者在实现过程中遇到了代码运行结果出现乱码的问题,寻
求
解决方案。
求
高手
解决问题
该系统通过C++实现,用于管理多个学校的运动项目成绩,包括男子项目和女子项目的录入、查询及排序功能。系统能够统计各校总分、男女团体总分,并提供不同条件下的排序输出。
求
大佬帮
解决问题
博主在win7系统电脑上下载FFmpeg,完成所有设置后仍报错,希望有大佬帮忙解决该问题。
新手乐园
33,315
社区成员
41,769
社区内容
发帖
与我相关
我的任务
新手乐园
C/C++ 新手乐园
复制链接
扫一扫
分享
社区描述
C/C++ 新手乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章