| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1184 人关注过本帖, 2 人收藏
标题:随机产生5000万个数,并经数字在转化成字母?
只看楼主 加入收藏
zhou31146001
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:303
专家分:131
注 册:2012-11-28
结帖率:93.94%
收藏(2)
已结贴  问题点数:30 回复次数:20 
随机产生5000万个数,并经数字在转化成字母?
随机产生5000万个0至7内的数字,并将随机产生的5000万个数字中的0和1转化成A,2和3转化成T,4和5转化成C,6和7转化成G,
请问各位大侠该怎么办呀?
随机产生的5000万个数字连成一串。
谢谢!!!
搜索更多相关主题的帖子: 字母 
2013-07-13 09:47
qq525273446
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:54
专家分:161
注 册:2009-11-18
收藏
得分:5 
#include "stdafx.h"

#include "stdio.h"
#include "time.h"
#include "string.h"
#include "stdlib.h"

int main(int argc, char* argv[])
{
    srand(0);
    char str[5001]={0};//5000W 太大,栈溢出
    for(int i=0;i<5000;i++)
    {
        int k=rand()%8;
        if(0==k||1==k)
            strncat(str,"A",1);
        else if(2==k||3==k)
            strncat(str,"T",1);
        else if(4==k||5==k)
            strncat(str,"C",1);
        else if(6==k||7==k)
            strncat(str,"G",1);
    }
    str[5000]='\0';
    printf("%s\n",str);

    return 0;
}

找工作中……
2013-07-13 10:21
丶弱水彡千
Rank: 5Rank: 5
来 自:地狱十九层
等 级:职业侠客
威 望:2
帖 子:203
专家分:369
注 册:2013-6-16
收藏
得分:0 

这个怎么玩
2013-07-13 10:22
qq525273446
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:54
专家分:161
注 册:2009-11-18
收藏
得分:0 
?????

找工作中……
2013-07-13 10:52
qunxingw
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:24
帖 子:1676
专家分:7295
注 册:2011-6-30
收藏
得分:5 
程序代码:
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#define num 2050000//好象最大数只能在此附近 
int main()
{
    char str[num];
    int i,t;
    srand(time(NULL));
    
    for(i=0;i<num; i++)
    {           
             t=  rand()%8;
    if(t<2)               
    str[i]='A';
    else if(t<4) str[i]='T';
     else if(t<6) str[i]='C';
      else  str[i]='G';
   } 
     
     for(i=0;i<num; i++)
      printf("%c",str[i]) ;
    
    getchar();
    return 0;
  
}

www.qunxingw.wang
2013-07-13 10:56
zhou31146001
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:303
专家分:131
注 册:2012-11-28
收藏
得分:0 
回复 5楼 qunxingw
能再大些吗,因为5000万只是个小样本,还要随机产生一亿、二亿个数字串的样本,2050000有点小呀。
谢谢!!!!
2013-07-13 11:50
zhou31146001
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:303
专家分:131
注 册:2012-11-28
收藏
得分:0 
以下是引用zhou31146001在2013-7-13 11:50:21的发言:

能再大些吗,因为5000万只是个小样本,还要随机产生一亿、二亿个数字串的样本,2050000有点小呀。
谢谢!!!!
   不好意思,忘说了,生成的数据还要放在txt文件里。
谢谢!!!!
2013-07-13 11:58
心灯甚亮
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:441
专家分:996
注 册:2013-1-29
收藏
得分:0 
呵呵,既然是输出到文本文件,就不用这么麻烦了

[ 本帖最后由 心灯甚亮 于 2013-7-13 13:48 编辑 ]
2013-07-13 13:43
心灯甚亮
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:441
专家分:996
注 册:2013-1-29
收藏
得分:20 
程序代码:
#include <stdio.h>
#include <stdlib.h>

#define AMOUNT 50000000

int main()
{

 FILE * fpnum=fopen("numout.txt","w+");
    FILE * fpstr=fopen("strout.txt","w+");
    int num=0;
    char ch;
    int i;

 for(i=0;i<AMOUNT;i++)

 {
     num=rand()%8;
  fprintf(fpnum,"%d",num);
     switch(num/2)
     {
         case 0:
             ch='A';
             break;
         case 1:
             ch='B';
             break;
         case 2:
             ch='C';
             break;
         case 3:
             ch='D';
             break;
     }
     fputc(ch,fpstr);

 }

 fclose(fpnum);

 fclose(fpstr);

 return 0;
}


[ 本帖最后由 心灯甚亮 于 2013-7-13 14:06 编辑 ]
2013-07-13 14:00
心灯甚亮
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:2
帖 子:441
专家分:996
注 册:2013-1-29
收藏
得分:0 
这个是不是传说中的作业贴?
2013-07-13 14:01
快速回复:随机产生5000万个数,并经数字在转化成字母?
数据加载中...
 
   



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

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