C语言 产生一些随机数 求最小值

产生一些随机数 求最小值 (在不用数组的情况下)

解决的办法有很多种.下面是解决的方法之一.除了这个办法,还可以将min初值定义为随机数范围的最大值逐之比较.总而言之,看个人爱好.


int temp = 0, min = 0;
    
    for (int i = 0; i < 20; i++) {
        
        temp = arc4random() % (56 - 34 + 1) + 34;	//记下随机数
        
        printf("%d ", temp);
        
        if (0 == i || min > temp) {	//当i=0时, 将temp记下的第一个数给min, 此后产生的随机数与之比较
            min = temp;
        }
    }
    
    printf("\n%d", min);

有的同学会很好奇,找最大值的时候只需要

int max = 0; 再将max在循环中与随机数逐之比较就可以得到最大数了.为什么找最小min不可以呢.

因为min的初值为0,0比任何产生的随机数都要小.所以min<随机数是不可能滴.

所以可以在if里边判断当0==i时,将随机数的第一个值赋给min,再将min与其他生成的随机数进行比较.这样就可以~\(≧▽≦)/~啦啦啦


你可能感兴趣的:(c)