| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1420 人关注过本帖
标题:求大神帮忙写一个随机数的程序
只看楼主 加入收藏
l2005191117
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-3-7
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:8 
求大神帮忙写一个随机数的程序
程序语言这东西我本人是一点细胞都没有的了,但是因为工作上的原因,单位又要叫我弄。所以上来求大神,相对于会的朋友来说很简单的。
要求:
     1、数值范围:1--100
     2、手动输入20个数值。
     3、随机输出20个不重复的数值。
     4、判断:如果随机数为手动输入出现过的,则返回重新产生一个新的随机数,新产生的随机数不论是否上一次出现过,都输出
     5、最后将这些随机数求和。。。

PS:请求各位大神帮帮忙,顺便说说你是用什么编辑器的,我好去下载。。。重酬不敢说,交个朋友以后一起吃顿饭还是没问题的。

[ 本帖最后由 l2005191117 于 2012-3-7 20:56 编辑 ]
搜索更多相关主题的帖子: 朋友 编辑器 
2012-03-07 20:55
zxd675816777
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:252
专家分:631
注 册:2012-2-3
收藏
得分:3 
包含stdlib.h,然后用rand函数,通过对101取模,就能产生1~100的随机数了哈,剩下的楼主自己搞定咯

数学好难!
2012-03-07 21:40
l2005191117
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-3-7
收藏
得分:0 
回复 2楼 zxd675816777
这位大哥,我是真不会,求帮忙
2012-03-07 21:47
小鱼儿c
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:852
专家分:1317
注 册:2011-4-1
收藏
得分:3 
以下是引用l2005191117在2012-3-7 20:55:15的发言:

程序语言这东西我本人是一点细胞都没有的了,但是因为工作上的原因,单位又要叫我弄。所以上来求大神,相对于会的朋友来说很简单的。
要求:
     1、数值范围:1--100
     2、手动输入20个数值。
     3、随机输出20个不重复的数值。
     4、判断:如果随机数为手动输入出现过的,则返回重新产生一个新的随机数,新产生的随机数不论是否上一次出现过,都输出
     5、最后将这些随机数求和。。。

PS:请求各位大神帮帮忙,顺便说说你是用什么编辑器的,我好去下载。。。重酬不敢说,交个朋友以后一起吃顿饭还是没问题的。

提供思路:

因为实在不难,如果你实在不知道怎么弄。
我写一下。

rand()%100+1 获取到1--100的数。自己百度一下怎么用这个rand()。

申明一个数组 date[40] 前20个手动输入。

然后用rand() 来获得随机数
n =20;
int i;
while(n <40)
{
    i =eand()%100+1;
    if(遍历i 是否在20个有重复,)
{
有的话 contine;
}
else
{
date[n] = i;
n++;
}

}

这样你应该清楚了吧。求和这个你搞的定了吧。

用心做一件事情就这么简单
2012-03-07 22:09
a646404908
Rank: 6Rank: 6
等 级:侠之大者
威 望:5
帖 子:189
专家分:492
注 册:2012-2-14
收藏
得分:3 
#include <stdlib.h>
#include<stdio.h>
#include <time.h>
int main( )
{
    int a[30],i,j,b[30],k,sum=0;        /*  存放随机数的数组  */
    time_t  t1;        /*  用于存放时间  */
    time(&t1);        /*  取得当前系统时间  */
    srand(t1);        /*  设置随机数种子  */
    for(i=0;i<20;i++)
    scanf("%d",&b[i]);
    do
    {
        k=0;
        for (i = 0; i < 20; i ++)        /*  循环生成20个随机数,放到数组a中  */
            a[i] = 10 + rand( ) % 100;/*  数值范围在10到99间,需要不同范围的数据请自行更改  */
        for(i=0;i<20;i++)
        {
            for(j=0;j<20-i;j++)
            {
                if(a[i]==b[j])
                {
                    k=1;
                }
            

            }
        }
    }while(k);
    printf("随机数如下:\n");
    for(i=0;i<20;i++)
    {
        printf("%d  ",a[i]);
        sum=sum+a[i];
    }
    printf("\n");
    printf("随机数总和:%d\n",sum);
}
写的不是很好
有什么问题说一下

[ 本帖最后由 a646404908 于 2012-3-7 23:34 编辑 ]
2012-03-07 22:10
l2005191117
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2012-3-7
收藏
得分:0 
你可以 教教我吗???就这一题,很重要哦。。。在哪里运行的啊
我对于编程这个,就是一个白痴,所以~~~
2012-03-07 22:20
a646404908
Rank: 6Rank: 6
等 级:侠之大者
威 望:5
帖 子:189
专家分:492
注 册:2012-2-14
收藏
得分:0 
回复 6楼 l2005191117
vc++6.0
2012-03-07 22:25
杨松松
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:98
专家分:142
注 册:2011-12-3
收藏
得分:3 
for(j=0,n=1;j<20-i;j++)/*请问n貌似没用吧*/
             {
                 if(a[i]==b[j])
                 {
                     k=1;
                 }
if也是可以把方括号去掉吧,不过也一样
            
 
2012-03-07 23:02
a646404908
Rank: 6Rank: 6
等 级:侠之大者
威 望:5
帖 子:189
专家分:492
注 册:2012-2-14
收藏
得分:0 
回复 8楼 杨松松
恩 n忘记删咯
2012-03-07 23:34
快速回复:求大神帮忙写一个随机数的程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.070011 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved