問題及代碼:
/*煙台大學計算機與控制工程學院
*檔案名稱:成績處理
*作者:馬豔豔
*完成日期:2016年4月2日
*問題描述:輸入n(<=100)個學生的姓名、學号和成績,将其中高于平均成績的姓名、學号和成績輸出。
*輸入描述:第一行為學生人數 n
第二行到第n+1行,每行一個學生的姓名、學号和成績。
學号和成績都是整數。
*輸出描述:高于平均成績的姓名、學号和成績
一名學生占一行
一行中各項間有一個空格
*/
#include <iostream>
using namespace std;
int main()
{
float sum=0;
float aver;
int i,j,n;
cin>>n;
struct student
{
char name[10];
long num;
int score;
}stu[n];
for(i=0;i<n;i++)
{
cin>>stu[i].name>>stu[i].num>>stu[i].score;
}
for(j=0;j<n;j++)
{
sum+=stu[j].score;
}
aver=sum/n;
for(i=0;i<n;i++)
{
if(stu[i].score>aver)
cout<<stu[i].name<<" "<<stu[i].num<<" "<<stu[i].score<<endl;
}
return 0;
}
運作結果: