用c++编写一个程序,要求创建一个类,输入若干个学生的数据,包括学号,姓名和三门课程的成绩; C++ 输入3个学生的数据,每个学生的数据包括学号、姓名、三...

作者&投稿:空施 (若有异议请与网页底部的电邮联系)

参考代码:

#include <iostream>
#include <string>

using namespace std;

#define MAX 100

class Student
{
private:
string num;
string name;
double subject[3];
double total;

public:
void input(Student s[], int);
void sort(Student s[], int);
void print(Student s[], int);

}stu[MAX];

void Student::input(Student s[], int n)
{
for (int i = 0; i < n; i++)
{
cout << "输入第" << i + 1 << "个学生的学号:";
cin >> s[i].num;
cout << "输入第" << i + 1 << "个学生的姓名:";
cin >> s[i].name;
s[i].total = 0;
for (int j = 0; j < 3; j++)
{
cout << "输入第" << j + 1 << "门课的成绩:";
cin >> s[i].subject[j];
s[i].total += s[i].subject[j];
}
cout << endl;
}
}

void Student::sort(Student s[], int n)
{
for (int i = 0; i < n-1; i++)
{
for (int j = i + 1; j < n; j++)
{
if (s[i].total < s[j].total)
{
Student tmp = s[i];
s[i] = s[j];
s[j] = tmp;
}
}
}
}

void Student::print(Student s[], int n)
{
for (int i = 0; i < n; i++)
{
cout << "第" << i + 1 << "名" << endl;
cout << "学号:" << s[i].num << endl;
cout << "姓名:" << s[i].name << endl;
for (int j = 0; j < 3; j++)
{
cout << "第" << j + 1 << "门课的成绩:" << s[i].subject[j] << endl;
}
cout << endl;
}
}

int main()
{
int num;
cout << "输入学生个数:";
cin >> num;
cout << endl;
Student s;
s.input(stu, num);
s.sort(stu, num);
s.print(stu, num);
return 0;
}


1、#include <iostream>#include <string>using namespace std;#define 

2、MAX 100class Student{private:string num;string name;double subject[3];

3、double total;public:void input(Student s[], int);void sort(Student s[], int);
void print(Student s[], int);}stu[MAX];void Student::input(Student s[], int n)
{for (int i = 0; i < n; i++){cout << "输入第" << i + 1 << "个学生的学号:";

4、cin >> s[i].num;cout << "输入第" << i + 1 << "个学生的姓名:";cin >> s[i].name;
s[i].total = 0;for (int j = 0; j < 3; j++){cout << "输入第" << j + 1 << "门课的成绩:";
cin >> s[i].subject[j];s[i].total += s[i].subject[j];}cout << endl;}
void Student::sort(Student s[], int n){for (int i = 0; i < n-1; i++){for (int j = i + 1; j < n; j++){if (s[i].total < s[j].total){Student tmp = s[i];

5、s[i] = s[j];s[j] = tmp;}void Student::print(Student s[], int n)
{for (int i = 0; i < n; i++){cout << "第" << i + 1 << "名" << endl;cout << "学号:" << s[i].num << endl;cout << "姓名:" << s[i].name << endl;for (int j = 0; j < 3; j++){cout << "第" << j + 1 << "门课的成绩:" << s[i].subject[j] << endl;}cout << endl;}
int main(){int num;cout << "输入学生个数:";cin >> num;cout << endl;
Student s;s.input(stu, num);s.sort(stu, num);s.print(stu, num);return 0;}



非常感谢,你的代码很好。以后有这样的问题可以问你吗?

编写一个程序,输入N个学生数据,包括学号、姓名、C++成绩,要求输出这些学生的数据、平均分与成绩等级。~

#include
using namespace std;
class Student
{
private:
int no;
char name[10];
int deg;
static int sum;
static int num;
public:
void setdata(int n,char na[],int d)
{
no=n;
strcpy(name,na);
deg=d;
sum+=d;
num++;
}
static double avg()
{
return sum/num;
}
void disp()
{
cout<<no<<name<<deg<<endl;
}
};
int Student::sum=0;
int Student::num=0;
int main()
{
int n;
cin>>n;
Student stu1,stu2;
stu1.setdata(201,"s",55);
stu2.setdata(203,"sss",88);
stu1.disp();
stu2.disp();
int s = Student::avg();
cout<<s<<endl;
}

扩展资料
#include
int main()
{
int x,y;
printf("请输入x:");
scanf("%d",&x);
if(x>-5 && x<0)
y = x;
else if(x==0)
y = x-1;
else if(x>0 && x<10)

#includeusing namespace std;struct student{ char number[20]; char name[20]; int fen[3]; int sum;};int main(){ student s[3]; for(int i=0;i>s[i].number; cout>s[i].name; cout>s[i].fen[0]>>s[i].fen[1]>>s[i].fen[2]; s[i].sum = s[i].fen[0]+s[i].fen[1]+s[i].fen[2];} for(i=0;i<3;i++) { cout<<"第"<<i+1<<"个学生学号:"; cout<<s[i].number<<endl; cout<<"第"<<i+1<<"个学生姓名:"; cout<<s[i].name<<endl; cout<<"第"<<i+1<<"个学生成绩:"; cout<<s[i].fen[0]<<' '<<s[i].fen[1]<<' '<<s[i].fen[2]<<endl; cout<<"第"<<i+1<<"个学生总成绩:"<<s[i].sum<<endl;} return 0;}

如何用c语言编写一个程序,实现按从大到小的顺序排序输出10个数
答:用选择排序法编写c语言,实现从键盘上输入10个数,按从大到小的顺序排序输出。代码如下:include<stdio.h> int main(){ int i,j,a[10],t;printf("输入数");for (i = 0; i < 10; i++)scanf("%d",&a[i]);for (i = 0; i < 10; i++){ for (j = i + 1; j < 10;j...

C语言编写一个程序,急用!!高分悬赏(正确答案追加分数)
答:infilename,"rt");outfp = fopen(outfilename,"wt");if(infp == NULL || outfp == NULL) {printf("无法打开数据文件。\n");return 1;}while(fscanf(infp,"%d%d%lf%lf%lf%lf",&year,&id,&a,&b,&c,&d) == 6)if(id == 1) fprintf(outfp,"%lf %lf %lf %lf\n"...

利用c语言,编写一个程序,定义一个函数 功能为对一个数组中的数字进行逆...
答:include<stdlib.h> void*nizhi(int *newarry,int a){ int mid=0;printf("请输入数组的元素,数字之间以空格分隔.\n");for(int i=0;i<a;i++)scanf("%d",&newarry[i]);printf("你新建立的数组是:\n");for(int i=0;i<a;i++)printf("%d\t",newarry[i]);for(int j=a-1,...

C语言问题求助!!编写一个程序用指针形式实现插入排序,原始数组在main函 ...
答:C语言问题求助!!编写一个程序用指针形式实现插入排序,原始数组在main函数中创建。  我来答 1个回答 #热议# 电视剧《王牌部队》有哪些槽点? 听不清啊 高能答主 2013-11-28 · 把复杂的事情简单说给你听 知道顶级答主 回答量:7.8万 采纳率:90% 帮助的人:9441万 我也去答题访问个人页 关注...

用C来编写为某小型公司编写一个职工工资管理程序,不用C++,急需...
答:cout<<"简易职工薪水管理程序 by 做他\n";// delete this line cout<<"版权没有 请随意复制或修改任何代码\n";//delete this line cout<<"请选择操作:1.录入 2.删除 3.修改 4.查询 5.显示所有员工 6.退出 :";int choose=0;cin>>choose;assert(!cin.fail());while (choose!=6){ i...

创建一个名为Rational的类,进行分数运算。编写一个程序测试该类...
答:include<iostream> include <string> using namespace std;class CRational { private:int m_nNumeraror;//分子 intm_nDenominator;//分母 public://默认构造函数 CRational(){ m_nNumeraror = 0;m_nDenominator = 1;} //重载构造函数 CRational(int numeraror,int denominator){ m_nNumeraror...

C语言。请帮忙编一个程序
答:多项式相加,也就是合并同类项。include <iostream> using namespace std;struct list { int coef;//系数 int exp;//指数 list *next;};list *Creat()//创建带头结点的链表 { list *h,*r,*s;//h是头结点,存放项的个数,指向第一项 r=h=new list;h->next=NULL;while(1){ s=new ...

编写一个c语言程序,实现录入学生学号和姓名信息的功能
答:1、首先创建一个c语言项目。然后右键头文件,创建一个Stu的头文件。2、然后编写头文件的代码。再将数据结构的增删改查和结构体写入头文件。3、然后在源文件中创建main源文件和Stu源文件。再main文件中写入int mian()代码。4、然后在mian主函数中,写入while语句无限循环。再写入Init函数。5、然后在...

用c语言编写一个程序,接受用户输入字符串;编写一个函数,讲用户的指定...
答:include <stdio.h> define N 20 int main(void){ char ch[N], find;int i;printf("请输入字符串:");scanf("%s", ch);printf("请输入你要查找的字符:");scanf("%c", &find);for(i=0; i<N; i++){ if (ch[i] != find)putchar(ch[i]);} return 0;} ...

用c语言编一个程序 要求1:输入一个年份,输出是在屏幕上显示该年的日历...
答:printf("\n4 Exit\n"); //选择退出程序 scanf("%d",&option);switch(option) //用来选择执行 { case 1:while(1){ printf("\nPlease input the year,month and day(XXXX,XX,XX):"); //提示输入 scanf("%d,%d,%d,%c",&year,&month,&day); //读入数据 da=DaySearch(year,month,...