首页 > 技术文章 > 新学C++的for,switch和随机数

sosoft 2013-12-09 11:57 原文

通过一个小程序学习:

  1 #include<iostream>
  2 #include<cstdlib>
  3 #include<ctime>
  4 using namespace std;
  5 
  6 //////////////////////////////////////////////////////////////////////////
  7 //a b 随机数
  8 
  9 //////////////////////////////////////////////////////////////////////////
 10 //随机 + - * /
 11 char randFun()
 12 { 
 13     int n;
 14     n=rand()%4;
 15     
 16     char op ;
 17     switch (n)
 18     {
 19         
 20     case 0 :
 21         op = '+';
 22         return op;
 23     case 1 :
 24         op = '-';
 25         return op;
 26     case 2 :
 27         op = '*';
 28         return op;
 29     case 3 :
 30         op = '/';
 31         return op;
 32         
 33     }
 34 }
 35 
 36 //////////////////////////////////////////////////////////////////////////
 37 //运算结果
 38 int RighNum(char op,int a ,int b)
 39 {
 40     char z = op;
 41     
 42     switch (z)
 43     {
 44     case '+':
 45         return a+b;
 46     case '-' :
 47         return a-b;
 48     case '*':
 49         return a*b;
 50     case '/':
 51         return a/b;
 52     }
 53 } 
 54 
 55 //////////////////////////////////////////////////////////////////////////
 56 //比较数字
 57 bool Fun_1(int Num, int Right_Num )
 58 {
 59     
 60     if(Num ==Right_Num)
 61     {
 62         
 63         return 1;
 64         
 65     }
 66     else
 67     {
 68         return 0;
 69     }
 70     
 71 }
 72 // void Fun_1(int Num, int Right_Num )
 73 // {
 74 //     http://www.cnblogs.com/sosoft/
 75 //     if(Num ==Right_Num)
 76 //     {
 77 //     
 78 //         cout<<"正确"<<endl;
 79 //     return i;
 80 //     }
 81 //     else
 82 //     {
 83 //         cout<<"错误"<<endl;
 84 //     
 85 //     }
 86 // }
 87 //////////////////////////////////////////////////////////////////////////
 88 //循环题目
 89 
 90 
 91 
 92 
 93 //////////////////////////////////////////////////////////////////////////
 94 //主函数
 95 int main ()
 96 { 
 97     int Num = 0;
 98     srand(time(0));
 99     int a = 0;
100     int b = 0;
101     int Right_Num = 0;
102     int i = 0;
103     // char op=randFun();
104     int j = 0;
105     for (j = 0; j < 10; j++)
106     {
107         int a = rand()%10;
108         int b = rand()%10;
109         char op=randFun();
110         cout<<a<<op<<b<<"=";
111         cin>>Num;
112         Right_Num = RighNum(op, a , b);
113         //     cout<<RighNum(op, a , b);
114         
115         if(Fun_1(Num , Right_Num)==1)
116         {
117             cout<<"正确";
118             i++;
119         }
120         else
121         {
122             cout<<"错误";
123         }
124     }
125     /*Fun_1(Num , Right_Num)*/
126     
127     cout<<"您答对"<<i<<"道题";
128     
129     return 0;
130 }

 

推荐阅读