zoukankan      html  css  js  c++  java
  • 在1~10的整数范围随机5个不重复的整数

    思路就是先随机5个数,写入一个数组。然后要做的就是检查这个数组是否满足5个数都不重复。如果重复就再随机出5个数写入数组。于是问题转换为判断一个数组里的元素是否重复的问题了。我的办法就是轮流比较。需要小注意一下的是第一个数字要和第二个比较,和自己比较就没有意义了。

    代码如下。我知道这不是最优解,但至少这是我的原创解。

    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    int main()
    {
        int i;
        int j = 0;
        int n = 0;
        int k = 0;
        int flag = 0;
        srand(time(NULL));    
        int b[5]={0};
        while(1)
        {
            i = rand()%10+1;
            b[j] = i;
            j++;
    
            if(j>5)
            {
                flag = 1;
                for(n =0; n < 5; ++n)
                    for(k = n+1; k < 5; ++k)
                        if(b[k] == b [n])
                        {
                            flag = 0;
                            j = 0;
                        }
    
            }
            if(flag ==1)
            {
                j = 0;
                break;
            }
                
        }
        for(j=0; j < 5; j++)
            printf("%d ",b[j]);
    }
  • 相关阅读:
    完全N叉树寻找祖先
    MySql_Front新建数据库遇到访问地址冲突问题
    C++金额的中文大写
    STL_sort cmp
    螺旋数组
    ~
    Struts向JSP中传值
    Struts1-配置文件部分
    jQuery Ajax 的 load()方式
    jquery animate
  • 原文地址:https://www.cnblogs.com/ligongzi/p/2789498.html
Copyright © 2011-2022 走看看