_he_he_he_
2018-10-26 16:05
#include <stdio.h>
int sum = 0.00;
int max;
int min;
double maen;
int i;
int j;
int summation(int score[])
{
for(i = 0; i < 10; i++)
{
sum += score[i];
}
return sum;
}
int maximal(int score[])
{
max = score[0];
for(i = 0; i < 10; i++)
{
if(score[i] > max)
{
max = score[i];
}
}
return max;
}
int minimum(int score[])
{
min = score[0];
for(i = 0; i<10; i++)
{
if(score[i] < min)
{
min = score[i];
}
}
return min;
}
double average(int score[])
{
double a = summation(score);
maen = a / 10;
return maen;
}
void descending_order(int score[])
{
for(i = 0; i < 9; i++)
{
for(j = 0; j <= i; j++)
{
int n = 0;
if(score[j] > score[j + 1])
{
n = score[j];
score[j] = score[j + 1];
score[j + 1] = n;
}
}
}
for(i = 0; i < 10; i++)
{
if(i < 9)
{
printf("%d, ", score[i]);
}else{
printf("%d", score[i]);
}
}
}
int main()
{
int score[10]={67,98,75,63,82,79,81,91,66,84};
printf("班级总分为:%d\n", summation(score));
printf("班级的最高分为:%d\n", maximal(score));
printf("班级的最低分为:%d\n", minimum(score));
printf("班级的平均分为:%.2f\n", average(score));
descending_order(score);
}
第一点我需要吐槽的是你的代码没有可读性,很杂乱。第二我已经看出来的你的问题了,全局变量和局部变量名重复了,导致改变了变量中的值。我建议你不要全局变量,只在函数中定义局部变量,当你需要哪些变量的时,在定义。这样即使两个局部变量名重复了也不影响变量中的值。
C语言入门
926210 学习 · 20797 问题
相似问题