黑马程序员技术交流社区
标题: 怎么改才能更好点呢 总感觉有地方还可以改改 [打印本页]
作者: geng 时间: 2014-11-18 14:31
标题: 怎么改才能更好点呢 总感觉有地方还可以改改
本帖最后由 geng 于 2014-11-18 17:33 编辑
// 提示输入5个学生的成绩,算出平均分、最高分、最低分、然后输出
int main()
{
int a, b, c, d, e;
printf("输入5个分数(用空格键隔开)\n");
scanf("%d %d %d %d %d", &a, &b , &c, &d, &e);
int ages[] = {a, b, c, d, e};
int arrayAverage(int a[], int count);// 平均数声明
int arrayMax(int a[], int count); // 最大值声明
int arrayMin(int a[], int count); // 最小值声明
int average = arrayAverage(ages, sizeof(ages)/sizeof(int));// 平均数
int max = arrayMax(ages, sizeof(ages)/sizeof(int)); // 最大值
int min = arrayMin(ages, sizeof(ages)/sizeof(int));// 最小值
printf("平均分数是:%d,最高分数是:%d,最低分数是:%d\n", average, max, min);
}
int arrayAverage(int a[], int count)
{
int sum = 0;
for (int i = 0; i < count; i++)
{
sum += a;
}
int average = sum / count;
return average;
}
int arrayMax(int a[], int count)
{
int max = a[0];
for (int i = 1; i < count; i++)
{
if (max < a)
{
max = a;
}
}
return max;
}
int arrayMin(int a[], int count)
{
int min = a[0];
for (int i = 1; i < count; i++)
{
if (min > a)
{
min = a;
}
}
return min;
}
作者: 从今以后 时间: 2014-11-18 17:56
“sum += a”这种地方应该是a[i]吧,还有sizeof(ages)/sizeof(int)这玩意弄个int cout = sizeof(ages)/sizeof(int);好一点吧,另外函数声明放主函数前面吧
作者: 天空总是很蓝 时间: 2014-11-18 19:14
学习一下了
作者: geng 时间: 2014-11-19 09:14
非常感谢
作者: weizhang00 时间: 2014-11-19 09:19
再优化成一个循环吧
作者: geng 时间: 2014-11-19 13:25
能说的具体点么 非常感谢
作者: weizhang00 时间: 2014-11-19 14:09
就是一趟循环里,放三个if啊,其实也没什么啦
作者: geng 时间: 2014-11-20 00:23
哦 这个样子啊 了解了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |