www.pudn.com > guessnumber.rar > guessnumber.C


#include "stdlib.h" 
#include "stdio.h" 
#include "time.h" 
#include "math.h" 
#define X 50 
int main(void)  
{  
    char c[X]; 
    char A[X]="abcdefghij"; 
    int i,j,k,x,R; 
    int m=strlen(A); 
    int n=0; 
    /*A为要随机取字符的数组,m为要随机取字符的数组的长度,n为要随机取字符的个数, 
    x为中间变量,有时用来存放随机取到的1个数,有时用来存放临时字符数据.*/ 
    time_t t; 
    srand((unsigned) time(&t));  
 /*产生随机数的时候用时刻变化着的时间t来控制产生的随机数序列在每次运行的时候都不一样。*/ 
    while(n<=0) 
    { 
    printf("随机数发生器将从%s中为您随机取字符。\n",A); 
    printf("请输入您要随机取的字符的个数(>0的整数):");  
    scanf("%s",c); 
    n=atoi(c); 
    };  
    char B[n],C[n],d[n]; 
    /*B为对比数组,用来存放随机字符串,C为比较数组,用来存放输入的字符串,d为结果显示数组,用来存放判断结果, 
    其中1表示字符和位置都相同,0表示字符相同但位置不相同,空格表示字符和位置都不相同。*/ 
     
    if(n>0) 
    { 
        printf("请选择要随机取的字符是否允许重复?\n1(允许);2(不允许)\n请选择:");  
        scanf("%d",&R); 
        if(R==1) 
        { 
            printf("\n随机产生的%d个字符分别为:",n); 
            for(j=0; j数组中字符个数,因此所取的字符不可能不重复。\n");  
                      exit(0); 
                   } 
               }  
        else 
        { 
            printf("输入错误!\n");  
            exit(0); 
        } 
     } 
      
    /*初始化对比数组B,用来存放随机取到的字符串*/   
    printf("\n要对比的字符串为:");  
    for(j=0; j