|
今天一起分析C語言的算法之15:裁判求平均分。
算法:
體操比賽,共有10個(gè)評委,最高分10分,求這個(gè)體操運(yùn)動員的最終成績。
提示:去掉最高分,去掉最低分,求平均分。
1.編程思路分析
編程思路:
1、用冒泡法將10個(gè)評委打分按分?jǐn)?shù)高低進(jìn)行排序;
2、去掉最低分和最高分,剩下的8個(gè)分?jǐn)?shù)求平均值。
2.程序范例
int main()
{
float cost[10] = {0};
/*定義一個(gè)中間變量一個(gè)數(shù)組和*/
float Temp,sum = 0;
float average = 0; //定義一個(gè)平均變量
int i, j;
printf("請輸入10名評委所給出的分?jǐn)?shù):\n");
/*循環(huán)輸入10個(gè)數(shù)*/
for(i = 0 ; i < 10 ; i++)
{
printf("第 %d 個(gè)評委給的分?jǐn)?shù)為:",i+1);
scanf("%f",&cost[ i]);
}
/*設(shè)置循環(huán)次數(shù)為8次*/
for(i = 0 ; i < 10 ; i++)
{
/*從最后一個(gè)數(shù)開始與前一個(gè)數(shù)比較*/
for(j = 10 ; j > i ; j--)
{
/*比前一個(gè)數(shù)大則交換位置*/
if(cost[j] > cost [j-1])
{
Temp = cost[j];
cost[j] = cost[j-1];
cost[j-1] = Temp;
}
}
}
for(i = 1;i < 9 ; i++)
{
sum += cost[ i];
}
average = sum /8;
printf("這個(gè)體操運(yùn)動員最后的成績?yōu)椋?f\r\n",average);
}
程序運(yùn)行結(jié)果案例:
51hei圖片_20220804092143.jpg (47.29 KB, 下載次數(shù): 62)
下載附件
2022-8-4 10:01 上傳
|
評分
-
查看全部評分
|