c语言,实在是不会,有没有大神帮个忙,谢谢了
1、编写程序。定义数组sco存放30名学生的成绩。将成绩由高到低排序,并输出排序结果和所有高于平均分数的成绩(结果保留两位小数)。2、编写程序。先编写一个子函数求x,再通...
1、编写程序。定义数组sco存放30名学生的成绩。将成绩由高到低排序,并输出排序结
果和所有高于平均分数的成绩(结果保留两位小数)。
2、编写程序。先编写一个子函数求x ,再通过主函数调用该子函数,对输入的一个数y,
求y 并输出。 展开
果和所有高于平均分数的成绩(结果保留两位小数)。
2、编写程序。先编写一个子函数求x ,再通过主函数调用该子函数,对输入的一个数y,
求y 并输出。 展开
展开全部
第一题核心是排序,我先用冒泡排序来实现吧。
#include <stdio.h>
#define LEN 30 /*学生人数*/
void bubbleSort(int arr[], int len) { /*由大到小冒泡排序*/
int i, j, temp;
for (i = 0; i < len - 1; i++)
for (j = 0; j < len - 1 - i; j++)
if (arr[j] < arr[j + 1]) {
temp = arr[j];
arr[j] = arr[j + 1];
arr[j + 1] = temp;
}
}
int main()
{
int i;
int sco[LEN] = {70,99,87,65,59,98,85,73,65,59,62,70,80,92,54,35,90,87,37,66,80,33,45,62,68,48,76,56,78,90};
float sum=0,aver=0;
printf ("原始30名学生成绩:\n");
for (i=0;i<LEN;i++) {
printf ("%d\t",sco[i]);
}
printf ("======================================================\n\n");
bubbleSort (sco,LEN);
printf ("30名学生成绩由高到低排序:\n");
for (i=0;i<LEN;i++) {
printf ("%d\t",sco[i]);
sum += sco[i];
}
printf ("======================================================\n\n");
aver = sum/LEN;
printf ("高于平均分%.2f的学生成绩:\n",aver);
for (i=0;i<LEN;i++) {
if (sco[i]>aver) {
printf ("%d\t",sco[i]);
}
}
printf ("\n");
return 0;
}
运行结果
第二题没太看懂,具体要求是啥,感觉就是考察函数调用,我先随便写个简答的吧。输入y,x函数返回y平方
#include <stdio.h>
int x (int y) { /*输入y,返回y平方*/
return y*y;
}
int main()
{
int y;
printf ("请输入y:");
scanf ("%d",&y);
printf ("\n");
y = x(y);
printf ("调用x函数求y平方:%d\n",y);
printf ("\n");
return 0;
}
运行结果
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询