zoukankan      html  css  js  c++  java
  • 一个猜数的游戏

       说明 : 猜猜系统随机的四个数,用户输入一个四位数,与系统随机的数进行比较。。。

       注意 : 系统随机的四位数,各个位的数不同

       提示 : 输入位与系统对应位的数相同 输出提示A  输入位与系统对应位旁边的数字相同,输出B。

       ----------------------------------------------------------Suiprise-------------------------------------------------

      源代码 :

      1 #include <stdio.h>
      2 #include <stdlib.h>
      3 #include <time.h>
      4 #include <unistd.h>
      5 #include <string.h>
      6 
      7 void rand_num_function(char []);
      8 void call_function(char [], int);
      9 void judge_function(char [], char []);
     10 void transform_function();
     11 void output_rand_num(char []); // 输出随机的数字
     12 
     13 char rand_num[4];
     14 
     15 int main(int argc, char *argv[])
     16 {
     17     int surprise_num, choose_num = 0;
     18 
     19     srand(time(NULL));
     20 
     21     printf("Game begin !
    "); 
     22     printf("Please wait! randnumber generate .........
    ");
     23     rand_num_function(rand_num); //生成随机数
     24     sleep(1);
     25     printf("The randnumber generate success!!
    ");
     26 
     27     printf("If you want a suiprise, Enter 1 ----------------------------------------------------- If you do't want a suiprise !!!!Enter 0 : ");
     28     scanf("%d", &choose_num);
     29     if(1 == choose_num) {
     30         printf("Go no Enter 521 : ");
     31         scanf("%d", &surprise_num);
     32         if(521 == surprise_num) {
     33             printf("The rand_numbers is : ");
     34             output_rand_num(rand_num);
     35             printf("
    ");
     36             printf("Ha Ha!!!!!!!!!!!!
    ");
     37             printf("--------------------------------------------------------------------
    ");
     38             printf("After identification, your IQ is 0.
    ");
     39             printf("--------------------------------------------------------------------
    ");
     40         }
     41         else {
     42             printf("--------------------------------------------------------------------
    ");
     43             printf("Sorry ! You lose the change !!!
    ");
     44             printf("--------------------------------------------------------------------
    ");
     45         }
     46     }
     47 
     48     transform_function(); //中间转换函数
     49     return 0;
     50 }
     51 
     52 void judge_function(char judge_rand_num[4], char judge_guess_num[4])
     53 {
     54     int i, j; 
     55     int itemp = 0;
     56 
     57     for(i = 0; i != 4; i ++)
     58     {
     59         if(judge_guess_num[i] == judge_rand_num[i]) {
     60             ++ itemp;    
     61         }
     62     }
     63 
     64     if(4 == itemp) {
     65         printf("Congratulation! You guess right!
    ");
     66         printf("The rand_num : ");
     67         output_rand_num(judge_rand_num);
     68         printf("
    ");
     69         printf("The Game End !!!
    ");
     70         return ;
     71     }
     72     if(0 == itemp) {
     73         printf("Unfor tunately ! No one number is right.
    ");
     74         printf("Please again!
    ");
     75         printf("____
    ");
     76         transform_function();   
     77         return ;
     78     }
     79 
     80     printf("The tips : ");
     81     for(i = 0;i != 4; i ++)
     82     {
     83         if(0 == i)
     84         {
     85             if(judge_guess_num[i] == judge_rand_num[0]) {
     86                 printf("A");
     87             }
     88             else if(judge_guess_num[i] == judge_rand_num[1]) {
     89                 printf("B");    
     90             }
     91             else {
     92                 printf("_");
     93             }
     94         }
     95         if(1 == i) {
     96             if((judge_guess_num[i] == judge_rand_num[0]) || (judge_guess_num[i] == judge_rand_num[2])) {
     97                 printf("B");
     98             }
     99             else if(judge_guess_num[i] == judge_rand_num[1]) {
    100                 printf("A");
    101             }
    102             else {
    103                 printf("_");
    104             }
    105         }
    106         if(2 == i) {
    107             if((judge_guess_num[i] == judge_rand_num[1]) || (judge_guess_num[i] == judge_rand_num[3])) {
    108                 printf("B");
    109             }
    110             else if(judge_guess_num[i] == judge_rand_num[2]) {
    111                 printf("A");
    112             }
    113             else {
    114                 printf("_");
    115             }
    116         }
    117         if(3 == i) {
    118             if(judge_guess_num[i] == judge_rand_num[2]) {
    119                 printf("B");
    120             }
    121             else if(judge_guess_num[i] == judge_rand_num[3]) {
    122                 printf("A");
    123             }
    124             else {
    125                 printf("_");
    126             }
    127         }
    128     }
    129     printf("
    ");
    130     printf("Please again!
    ");
    131     transform_function();   
    132 
    133     return ;
    134 }
    135 
    136 void output_rand_num(char output_num[5])
    137 {
    138     int i;
    139     for(i = 0;i != 4; i ++)
    140     {
    141         printf("%d", output_num[i]);
    142     }
    143 
    144     return ;
    145 }
    146 
    147 void transform_function()
    148 {
    149     char guess_num[4];
    150     int num_4;
    151 
    152     printf("Please enter four number (0 - 9999): ");
    153     scanf("%d", &num_4);
    154 
    155     if((num_4 > 10000) & (num_4 < 0)) {
    156         printf("Fuck! Set tips !!!
    ");
    157         transform_function();
    158     }
    159 
    160     printf("You enter number is  ---------------%d
    ", num_4);
    161     printf("Zheng zai jisuan -----------------------------------------------------------------------
    ");
    162     sleep(2);
    163     call_function(guess_num, num_4); //将用户输入的数写入数组
    164 
    165    // printf("-----------------------");
    166     //output_rand_num(guess_num);
    167    // printf("
    ");
    168 
    169     judge_function(rand_num, guess_num); //判断函数
    170 
    171     return ;
    172 }
    173 
    174 void call_function(char call_num[4], int call_num_4)
    175 {
    176     int i = 3;
    177 
    178     do
    179     {
    180         call_num[i] = call_num_4 % 10;   
    181         call_num_4 /= 10;
    182         -- i;
    183     }while(i >= 0);
    184 
    185     return ;
    186 }
    187 
    188 void rand_num_function(char rand_num_function[4])
    189 {
    190     int i, itemp = 0, rand_number, jilu_number = 0;
    191 
    192     for(i = 0; i != 4; i ++)
    193     {
    194         itemp = i;
    195         rand_number = rand() % 10;
    196         if(1 == ((jilu_number >> rand_number) & 1)) {
    197            i = itemp - 1;
    198            continue ;
    199         }
    200         jilu_number = jilu_number | 1 << rand_number;
    201         rand_num_function[i] = rand_number;
    202     }
    203 
    204     return ;
    205 }
    bijiiaoshuo_1.c

      改了很多次。。终于改好了。。。晕

  • 相关阅读:
    MyReport:DataGrid的打印和打印预览
    plupload上传插件在SpringMVC中的整合
    tomcat性能调优 大赞
    tomcat 9.0.4 性能调优
    java copy 文件夹
    JProfiler8 远程监控tomcat配置过程
    CentOS7安装Nmon(linux性能监控工具)
    Linux(CentOS)下同时启动两个tomcat
    new Runnable中的 this
    netty4----日志框架的检查
  • 原文地址:https://www.cnblogs.com/cxw825873709/p/3231744.html
Copyright © 2011-2022 走看看