C/C++複習:成績統計(結構體)
阿新 • • 發佈:2019-01-28
/* *Copyright(c)2016,煙臺大學計算機與控制工程學院 *All right reserved. *檔名稱:77.cpp *作 者:董凱琦 *完成日期:2016年4月26日 *版 本 號:v1.0 * *問題描述:建立一個簡單的學生資訊表,包括:姓名、性別、年齡及一門課程的成績,統計輸出學生的平均成績和不及格同學姓名和不及格人數。 *輸入描述:n 和 n個學生的姓名,性別,年齡,成績。 *程式輸出:學生的平均成績和不及格同學姓名和不及格人數。 */ #include<iostream> #include<iomanip> using namespace std; struct student { char name[20]; char sex; int age; float score; } ; void input(struct student stud[],int n) { int i; for(i=0; i<n; i++) { cin>>stud[i].name; //輸入姓名 cin.get(); cin>>stud[i].sex; //輸入性別 cin>>stud[i].age; //輸入年齡 cin>>stud[i].score; //輸入成績 } } void total(struct student stud[],int n) { int i,num=0; float ave,sum=0; for(i=0;i<n;i++) { if(stud[i].score<60) { num++; cout<<stud[i].name<<"不及格"<<endl; } } for(i=0;i<n;i++) { sum+=stud[i].score; } ave=sum/n; cout<<"平均成績為:"<<setprecision(3)<<ave<<endl; cout<<"不及格人數為:"<<num<<endl; } int main() { struct student stud[100]; int n; cin>>n; input(stud,n); //輸入n個學生的資訊 total(stud,n); //統計並輸出平均成績和不及格同學姓名和不及格人數 return 0; }