请问这个问题出在哪了,随机序列问题!
随机产生5000万个0至7内的数字,并将随机产生的5000万个数字中的0和1转化成A,2和3转化成T,4和5转化成C,6和7转化成G,请问各位大侠该怎么办呀?
随机产生的5000万个数字连成一串。
谢谢!!!
这是一位热心朋友帮我编的程序,但有些小问题,本人能力有限,难以发现,望各位热心朋友积极帮助!!!
谢谢!!!
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define AMOUNT 132373897 //随机产生的字符串的碱基个数
int main()
{
FILE * fpnum=fopen("E:\\寻找内含子序列\\numout.txt","wt"); //储存随机数
FILE * fpstr=fopen("E:\\寻找内含子序列\\strout.txt","wt"); //储存数字转化成字符的字符串
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='T';
break;
case 2:
ch='C';
break;
case 3:
ch='G';
break;
}
fputc(ch,fpstr); //转化数字,产生字符串
}
fclose(fpnum);
fclose(fpstr);
return 0;
}