c语言函数最新进展 c语言函数用法大全

C语言 函数问题

用结构体比较方便易懂,我用结构体帮你做了一下,你可以看一看,可以运行的,我试过了。

创新互联建站-专业网站定制、快速模板网站建设、高性价比延长网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式延长网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖延长地区。费用合理售后完善,十年实体公司更值得信赖。

#includestdio.h

#define N 4

#define M 5

struct student//建立学生数据结如源构体

{

char name[15];

float score[M];

float ave;

}stu[N];

void average(struct student stu[])//求平均成绩函数

{

int i,j,k;

float t;

for(i=0;iN;i++)

{

for(j=1;jM;j++)//冒泡排序将5个评委评分从低到高排列,然后取中间的评分求平均值。

for(k=0;kM-j;k++)

if(stu[i].score[j]stu[i].score[j+1])

{

t=stu[i].score[j];

stu[i].score[j]=stu[i].score[j+1];

stu[i].score[j+1]=t;

}

for(j=1;jM-1;j++)//历橡和去掉最高和最低分后求平均分

{

stu[i].ave+=stu[i].score[j];

}

stu[i].ave/=M-2;

}

}

void sort(struct student stu[])//排序函数

{

int i,j;

struct student temp;

for(i=1;iN;i++)//冒泡排序法

for(j=0;jN-i;j++)

if(stu[j].avestu[j+1].ave)

{

temp=stu[j];

stu[j]=stu[j+1];

stu[j+1]=temp;

}

}

main()

{

int i,j;

for(i=0;iN;i++)//输入学生数据

{

printf("请肢盯输入第%d个学生的姓名:",i+1);

scanf("%s",stu[i].name);

for(j=0;jM;j++)

{

printf("请输入该生第%d个评委的评分:",j+1);

scanf("%f",stu[i].score[j]);

}

}

average(stu);//执行函数

sort(stu);

printf("\n按平均成绩逆序输出为:\n");//逆序打印数据

printf("姓名 \t成绩\n");

for(i=0;iN;i++)

printf("%s \t%.2f\n",stu[i].name,stu[i].ave);

}

希望可以帮到你,呵呵


文章名称:c语言函数最新进展 c语言函数用法大全
标题来源:http://azwzsj.com/article/dshodjh.html