输入N个学生的C语言程序设计课程成绩,请你设计一个函数来编程找出这些学生的最高分、并列第一的学生数。函数原型:int search(int x[], int n, int *count);
【输入形式】
输入包含两行:第一行是N(0 < N < 1000)。第二行是N个整数,代表N个学生的C语言程序设计课程成绩,邻近两数之间用一个空格隔开。
【输出形式】
按照题目要求输出最高分和取得最高分的学生数,用一个空格隔开。
【测试用例1】
输入:
10 52 95 87 69 78 84 82 95 90 95
输出:
95 3
#include <stdio.h>
int x[1000];
int count = 0; //int* count = 0; 修改
int search(int x[], int n, int* count)
{
int i, j, max; //temp;修改
max = x[0];
for (i = 0; i < n; i++)
{
//for (j = 0; j < n - i; j++) 修改
if (max < x[i])
{
max = x[i];
//temp = x[j]; 修改
//x[j] = x[j + 1];
//x[j + 1] = temp;
}
}
for (i = 0; i < n; i++)
if (x[i] == max) {
(*count) += 1; //修改
}
return max; //return *count;修改
}
int main() {
int N, i, max;
scanf("%d", &N);
for (i = 0; i < N; i++)
//{ 修改
scanf("%d", &x[i]); //scanf("%d", x[i]);修改
max = search(x, N, &count); //(x, N, *count);修改
//} 修改
printf("%d %d", max, count);
//printf("%d %d", x[0], *count);修改
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!