随机产生5000万个数,并经数字在转化成字母?
随机产生5000万个0至7内的数字,并将随机产生的5000万个数字中的0和1转化成A,2和3转化成T,4和5转化成C,6和7转化成G,请问各位大侠该怎么办呀?
随机产生的5000万个数字连成一串。
谢谢!!!

程序代码:#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;
}

程序代码:#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;
}