當前位置:首頁 » 考試成績 » 用對象數組定義五個學生成績

用對象數組定義五個學生成績

發布時間: 2020-12-13 14:02:09

A. c++程序問題 。建立一個對象數組,內放5個學生的數據(學號、成績),設立一個


#include<iostream>

#include<string.h>

usingnamespacestd;

classstudent

{

public:

student(stringnumber,intid)

{

this->number=number;

this->id=id;


}

intgetscore(){

returnid;


}

stringgetname(){

returnnumber;

}

private:

stringnumber;

intid;


};

intmain()

{

studentstu[5]={student("001",100),student("002",100),student("003",99),student("004",95),student("0055",86)};

intmax_score=stu[0].getscore();

for(inti=0;i<5;i++)

{

if(max_score<stu[i].getscore())

{

max_score=stu[i].getscore();

}


}

cout<<"最高分為"<<max_score<<endl;


for(intj=0;j<5;j++)

{

if(stu[j].getscore()==max_score)

{

cout<<"最高分的學生學號為:"<<stu[j].getname()<<endl;

}


}


}

//運行結果為:

./a.out

最高分為100

最高分的學生學號為:001

最高分的學生學號為:002

B. C語言:建立對象數組,內放5個學生數據(學號是字元串類型、成績是整型),設立max函數

#include<stdio.h>
intmax(int[]);
intmain()
{
chara[5][3];//字元串以結尾
intb[5],n,c;
for(n=0;n<5;n++)
{
scanf("%s",a[n]);
scanf("%d",&b[n]);
}
c=max(b);
printf("%s%d",a[c],b[c]);
return0;
}
intmax(intq[5])
{
intm=q[0];
intf,e=0;//初始專化屬e
for(f=1;f<5;f++)
{
if(m<q[f])
{
m=q[f];
e=f;
}
}
returne;
}

C. 用對象數組定義五個學生成績,輸出1,3,5個學生的學號和成績,用c++做

類似的,C++書上應該都有,有時間的話,把書上的代碼敲一下。 #include using namespace std; class Student { private: int id; float score; public: Student() { id = 0; score = 0; } Student(int id, float score) { this->id = id; this->score = score; } float getScore() {return score; } int getID() {return id; } }; void max(Student* s, int size) { if (s == NULL || size < 1) return; int l = 0; for (int i = 1; i size; i++) { if (s[i].getScore() > s[l].getScore()) l = i; } cout << "Student with ID \"" << s[l].getID() << "\" has the largest grade." << endl; } int main() { const int num = 5; Student students[num] = { Student(1, 78), Student(2, 92), Student(4, 81), Student(4, 89), Student(5, 68) }; max(students, 1); return 0; }

D. 建立一個對象數組,內放5個學生的數據(學號,成績),用指針指向數組首元素, 輸出第1,3,5個學生的數據

哥們
好久沒寫程序了
今天費了很大的力氣幫你寫了
要是你不嫌棄的話你就先用著~~

#include <iostream.h>

class student
{
public:
student(int a=0,int b=0);
~student();
student(student &m);
void display(void);//顯示學號和成績
void setnum(int n);
void setmark(int m);
private:
int num;
int mark;
};
student::student(int a,int b)
{
num=a;
mark=b;
}
void student::setnum(int n)
{
num=n;}
void student::setmark(int m)
{
mark=m;}
void student::display(void)
{
cout<<"學號:"<<num<<endl;
cout<<"成績:"<<mark<<endl;
}
student::student(student &m)
{
num=m.num;
mark=m.mark;
}
student::~student()
{
}

int main()
{
int i,m,n;
student *p;
p=new student[5];
for(i=0;i<5;i++)
{
cout<<"請輸入學號:";
cin>>n;
(p+i)->setnum(n);
cout<<"請輸入成績:";
cin>>m;
(p+i)->setmark(m);
}

for(i=0;i<5;i++)
{
if (i==0||i==2||i==4)
(p+i)->display();
}
delete []p;
return 0;
}

我是新手~
還請大家指教~~

E. 立一個對象數組,內放5個學生的數據(學號、成績),設立一個函數max,然後輸出最大學生的學號和成績

xuesheng(int a,int b)
{
xuehao=a;
chengji=b;
}
怎麼沒有返回值,就算沒有也應該是void.

F. 建立一個對象數組,內放5個學生的數據(學號,1門成績).利用指針,統計平均成績並輸出第1,3,5個學生的數據.

#include <iostream>
using namespace std;
class Student
{
public:
Student(int,int);
int num;
int grade;
} ;//這里給你加了一個分號。
Student::Student(int n,int g)
{
num=n;
grade=g;
}
int main()
{
Student a[5]={Student(1,50),Student(2,70),Student(3,88),Student(4,100),Student(5,72)};
int i,sum=0;//加了一個i的定義
for(i=0;i<5;i++)
{int *p=&a[i].grade;
sum+=*p;
p++;
}
int average=sum/5;
cout<<"平均成績是:"<<average<<endl;
cout<<a[0].grade<<endl;
cout<<a[2].grade<<endl;
cout<<a[4].grade<<endl;
return 0;
}

c++builder輸出如下:

G. 建立一個對象數組,內放五個學生的數據(學號,成績),建立一個函數max,用指向對象的

建立對象如下:

class Student

{

public:

Student(string n,float s):number(n),score(s){}

friend void max(Student *); //聲明友元函數

private:

string number; //將學號聲明為字元串

float score;

};

(7)用對象數組定義五個學生成績擴展閱讀

所謂的對象數組,就是專指包含了一屬組相關的對象,但是在對象數組的使用中一定要清楚一點:數組一定要先開辟空間,但是因為其是引用數據類型,所以數組裡面的每一個對象都是null值,則在使用的時候數組中的每一個對象必須分別進行實例化操作。

對象數組的聲明:

先定義,再開辟空間

類名稱 對象數組名[] = null;

對象數組名 = new 類名稱[長度];

定義並開辟數組

類名稱 對象數組名[] = new 類名稱[長度];

在聲明對象數組後 ,必須對每個數組成員進行實例化話 才能直接使用,否則報空指針異常!

H. 建立一個對象數組,內放5個學生的數據(學號成績)用指針指向數組首元素,輸出第1,3,5個學生的成績,

int * pt //錯誤!
改為:
Student * pt 試試

I. C++,建立一個對象數組,內放5個學生的數據(學號成績)我的程序錯在哪裡

構造函數不對,是兩個參數(int,int)。
所有你得:
p=new Student(1,1)[5];
否則自己加一個構造函數內
Student::Student();
然後再加一個輸入的函數input(...);
才能容p=new Student()[5];
*(p+1).input(...);

J. 建立一個對象數組,放五個學生數據(自己輸入學號,成績),設立一個函數MAX,用對象指針做函數參數

#include<iostream>
using namespace std ;
class student {
private:
int num;
int score;
public:
friend student *MAX(student *stu);
void input(){cout<<"輸入學號和成績:"<<endl;cin>>num>>score;}
int getNum(){return num;}
};
student *MAX(student *stu)
{
student *max=&stu[0];
for(int i=1;i<5;i++)
if(stu[0].num<stu[i].num)
max=&stu[i];
return max;

}

int main()
{

student STU[5],*max;

for(int j=0;j<5;j++)
STU[j].input();
max=MAX(STU);
cout<<"最大學號是"<<(*max).getNum()<<endl;
return 0;
}
這是比較學號大內小,並輸出最大學號,容因為引用學得不好,所以會比較麻煩一點

熱點內容
武漢大學學生會輔導員寄語 發布:2021-03-16 21:44:16 瀏覽:612
七年級學生作文輔導學案 發布:2021-03-16 21:42:09 瀏覽:1
不屑弟高考成績 發布:2021-03-16 21:40:59 瀏覽:754
大學畢業證會有成績單 發布:2021-03-16 21:40:07 瀏覽:756
2017信陽學院輔導員招聘名單 發布:2021-03-16 21:40:02 瀏覽:800
查詢重慶2018中考成績查詢 發布:2021-03-16 21:39:58 瀏覽:21
結業考試成績怎麼查詢 發布:2021-03-16 21:28:40 瀏覽:679
14中醫醫師資格筆試考試成績查分 發布:2021-03-16 21:28:39 瀏覽:655
名著賞析課程標准 發布:2021-03-16 21:27:57 瀏覽:881
北京大學商業領袖高端培訓課程 發布:2021-03-16 21:27:41 瀏覽:919