#包含?& ltstdlib.h & gt
#定義?ARRAY_LEN?100?/*數組長度*/
typedef?struct?{
int?沒有;?/*學生ID */
夏爾?name[ARRAY _ LEN];?/*姓名*/
浮動?score 1;?/*正常成績*/
浮動?score2?/*中期業績*/
浮動?得分3;?/*最終成績*/
浮動?總分;?/*學期成績*/
}?學生;
/*初始化*/
作廢?initInfo?(學生?斯圖[],?int?*stuNum)?{
*stuNum?=?2;?/*學生人數設置*/
}
/*輸入學生信息*/
作廢?inputInfo?(學生?斯圖[],?int?stuIndex)?{
int?我;
printf?("學生%d ↓\n ",stu index+1);
printf?(“學號:“);
scanf?(" %d ",& ampstu[stuIndex]。否);
printf?(“姓名:“);
scanf?(" %s ",& ampstu[stuIndex]。姓名);
printf?(“平時成績:“);
scanf?(" %f ",& ampstu[stu index]. score 1);
printf?(“中期業績”:);
scanf?(" %f ",& ampstu[stu index]. score 2);
printf?(“期末成績:“);
scanf?(" %f ",& ampstu[stu index]. score 3);
putchar?(' \ n ');
}
/*計算學期成績*/
作廢?calculationScore?(學生?斯圖[],?int?stuIndex)?{
浮動?SCO 1比率?=?0.1;?/*平時成績占比*/
浮動?sco2Ratio?=?0.2;?/*中期業績的比例*/
浮動?sco3Ratio?=?0.7;?/*占最終成績的比例*/
stu[stuIndex]。總分?=?stu[stuIndex].score1?*?SCO 1比率?+
stu[stuIndex].score2?*?sco2Ratio?+
stu[stuIndex].score3?*?sco3Ratio
}
/*輸出學生成績*/
作廢?printInfo?(學生?斯圖[],?int?stuIndex)?{
int?我;
printf?(" %d\t ",stu[stuIndex].否);
printf?(" %s\t ",stu[stuIndex].姓名);
printf?(" %.2f\t\t ",stu[stu index]. score 1);
printf?(" %.2f\t\t ",stu[stu index]. score 2);
printf?(" %.2f\t\t ",stu[stu index]. score 3);
printf?(" %.2f ",stu[stuIndex].total score);
putchar?(' \ n ');
}
int?主要?(作廢)?{
int?stuNum,我;
學生?stu[ARRAY _ LEN];
initInfo?(斯圖& ampstuNum);
/*輸入,計算*/
看跌期權。(“請輸入學生信息:“);
putchar?(' \ n ');
為了什麽?(I = 0;?我& ltstuNum?i++)?{
inputInfo?(斯圖,我);
calculationScore?(斯圖,我);
}
putchar?(' \ n ');
printf?(" %d名學生的分數已輸入!" ,?stuNum);
putchar?(' \ n ');
看跌期權。(" = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = n ");
/*輸出*/
看跌期權。(“學號\姓名\普通成績\期中成績\期末成績\期中成績”);
為了什麽?(I = 0;?我& ltstuNum?i++)
printInfo?(斯圖,我);
getch?();?/*屏幕持久性*/
回歸?0;
}運行結果
下圖改為2個學生,上面的源代碼是學科要求的5個學生。