歌星大奖赛系统——C语言

2024-04-28

可直接启动,无需修改程序代码

C语言程序设计实习报告

学院:艺术与传媒学院 专业:资讯艺术设计

班级:162104

学号:20101001518

姓名:何智皓

可直接启动,无需修改程序代码

歌星大奖赛系统

题目要求:

(1)、在歌星大奖赛中,有10个评委为参赛的选手打分,分数为1到100分。选手最后得分为:去掉一个最高分和一个最低分后其余8个分数的平均值。请编写一个程序实现。

(2)、同时对评委评分进行裁判,即在10个评委中找出最公平(即评分最接近平均分)和最不公平的评委。

【提示】

这个问题的第一个要求算法十分简单,但是要注意在程序中判断最大、最小值的变量是如何赋值的。第二个要求为了考虑效率,要用到排序技术。

一、 需求分析

根据题目第一个要求,有10个评委,需要依次输入10个分数,并在10个数中取出最大值和最小值;而且所输入的分数在1到100之间,否则该分数需要重新输入。第二个要求,需要将10个分数分别与去掉最大最小值之后的八个数的平均值进行比较。

二、 总体设计

根据题目要求,定义一个数组,将依次输入的10个分数存入这个数组中,再对数组中的数进行去值、求平均值、差值比较的操作。

三、 详细设计

可直接启动,无需修改程序代码

根据题目要求,将这个程序设计成2个函数,一个主函数main(),另一个函数impartial()用于进行差值比较。

1、 主函数

(1)、流程图

(2)、具体说明

#include<stdio.h>

#include<math.h>

int main()

{

int i;

int integer,average,sum,max,min,max1,min1;

int a[10];

max=-32768;

可直接启动,无需修改程序代码

min=32767;

sum=0;

for(i=1;i<=10;i++)

{

printf("请输入评委分数 %d=",i);

scanf("%d",&integer);

a[i-1]=integer;

sum+=integer;

if(integer>max)max=integer;

if(integer<min)min=integer;

}

average=(sum-max-min)/8;

printf("去掉一个最高分:%d\n去掉一个最低分:%d\n",max,min); printf("平均分为:%d\n",average);

min1=32767;

for(i=0;i<10;i++)

{

if(abs(a[i]-average)<min1){min1=abs(a[i]-average);}

}

for(i=0;i<10;i++)

if(abs(a[i]-average)==min1){printf("最接近平均分的评委分

可直接启动,无需修改程序代码

数:%d\n",a[i]);

printf("该评委为数字:%d\n",i+1);}

max1=-32767;

for(i=0;i<10;i++)

{

if(abs(a[i]-average)>max1){max1=abs(a[i]-average);}

}

for(i=0;i<10;i++)

if(abs(a[i]-average)==max1){printf("最不接近平均分的评委分数:%d\n",a[i]);

printf("该评委为数字:%d\n",i+1);}

四、 上机操作

依次输入分数

可直接启动,无需修改程序代码

去掉最高分去掉最低分

输出结果,按任意键退出。


歌星大奖赛系统——C语言.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:基层动物防疫服务组织运行模式的新探索

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219