题目
天梯赛是个善良的比赛。善良的命题组希望将题目难度控制在一个范围内,使得每个参赛的学生都有能做出来的题目,并且最厉害的学生也要非常努力才有可能得到高分。于是命题组首先将编程能力划分成了 10 的六次方 个等级(太疯狂了,这是假的),然后调查了每个参赛学生的编程能力。现在请你写个程序找出所有参赛学生的最小和最大能力值,给命题组作为出题的参考。
代码
代码如下:
#include <stdio.h>
int min = 1000010;
int main()
{
int N;
int a[20000];
int max = 0;
int j = 0, k = 0;
scanf("%d", &N);
for ( int i = 0; i < N; i++)
{
scanf("%d", &a[i]);
}
for ( int i = 0; i < N; i++)
{
if (a[i] > max)
{
max = a[i];
}
if (a[i] < min)
{
min = a[i];
}
}
for (int i = 0; i < N; i++)
{
if (a[i] == max)
{
j++;
}
if (a[i] == min)
{
k++;
}
}
printf("%d %d\n", min, k);
printf("%d %d\n", max, j);
return 0;
}
总结
我开始对最大值和最小值的输出输反了,主要原因是自己对这两个的值理解错了,加上自己受主观臆断影响,直接输出大的就想先输出了。