本文實例為大家分享了C語言實現歌手大獎賽計分程序的具體代碼,供大家參考,具體內容如下
1. 題目描述
編寫一個程序,用戶輸入評委人數和分數后,程序可以計算去掉一個最高分和最低分后的平均成績。可多次輸入選手成績,輸入N時退出程序。
2. 源代碼
#include <stdio.h>#include <stdlib.h>float score[99];//成績數據int num=0;//評委數目float sum=0;//總分//輸入打分數據并輸出結果void inputSc(){ if(num==0) { printf("請您輸入評委數目:"); scanf("%d",&num); } int i=0; printf("請您輸入%d位評委評分:/n",num); for(i=0;i<num;i++) { scanf("%f",&score[i]); } //去掉最高分和最低分 avoidMax(score); //輸出結果 printf("平均分:%.2f/n",sum/num); //恢復數目 if(num>2) { num = num+2; }}//成績處理模塊void avoidMax(float *score){ int i=0; float max=*score,min=*score; //尋找最高分、最低分 for(i=0;i<num;i++) { if(*(score+i)>max) max = *(score+i); else if(*(score+i)<min); min = *(score+i); } //將最高分、最低分設置為0 for(i=0;i<num;i++) { if(num>2) { if(*(score+i)==max || *(score+i)==min) { *(score+i) = 0; } } sum += *(score+i); } if(num>2) { num = num-2; }} //主函數int main(){ char key; while(key!='N'&&key!='n') { inputSc(); printf("按任意鍵繼續下一選手成績計算,退出請選擇N:"); fflush(stdin); key = getchar(); } return 0;}
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。
新聞熱點
疑難解答
圖片精選