我正在尝试编写一个程序,该程序用11个点填充一个数组,其中的随机数在1到100之间。似乎随机的东西有效,而最小的效率却高,但是最大的疯狂数字却不属于数组中扔掉的11个数字的一部分。
不太清楚问题出在哪里,但是我很确定这是我过去所经历的荒谬的事情。
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main( void )
{
int i = 0;
int a[11];
int min = a[0];
int max = a[0];
srandom( (unsigned) time(NULL) );
for (i=0;i<11;i++)
{
a[i]=random( ) % 100 ;
printf("%d\n", a[i]);
if (a[i] > max)
{
max = a[i];
}
else if (a[i] < min)
{
min = a[i];
}
}
printf("Min: %d\n", min);
printf("Max: %d\n", max);
return ( 0 ) ;
}
输出:
16
28
27
58
8
53
76
35
27
19
41
Min: 8
Max: 152908968
将max初始化为非常高的值..将max初始化为0;
int max = 0;
这是固定代码:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main( void )
{
int i = 0;
int a[11];
int min = 0;
int max = 0;
srandom( (unsigned) time(NULL) );
a[0]=random( ) % 100 ;
min = a[0];
for (i=1;i<11;i++)
{
a[i]=random( ) % 100 ;
printf("%d\n", a[i]);
if (a[i] > max)
{
max = a[i];
}
if (a[i] < min)
{
min = a[i];
}
}
printf("Min: %d\n", min);
printf("Max: %d\n", max);
return 0;
}
输出:
Notra:Desktop Sukhvir$ ./try
82
91
33
8
60
48
60
6
59
62
60
Min: 6
Max: 91
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句