四则运算编写感悟

  这次编写四则运算工具为稳妥起见就选择了最熟悉的C语言,老实说这次设计这个小程序主要的时间都花在构思和编码上基本各占一半,约半个小时。调试基本没有,改了两个语法错误。考虑到是100以内的四则运算且能自由出题,就在程序中运用了随机函数。为了能灵活使用就提供了四种模式,分别对应四则运算中的加法(按1),减法(按2),乘法(按3),除法(按4)。加法的随机数在1~50中产生,减法也是,但是考虑到减法不能为负在产生的随机数中会有个比较的过程,出题数量也是由使用者自由输入。

  代码如下:

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <time.h>
 4 void main()
 5 {
 6     srand(time(0));
 7     int a,b,c,d,i,t,s=0;
 8     printf("请输入出题数量\n");
 9     scanf("%d",&a);
10     printf("加法请按1,减法请按2,乘法请按3,除法请按4");
11     scanf("%d",&b);
12     switch(b)
13     {
14         case 1:for(i=0;i<a;i++)
15                {
16                    c=rand()%50+1;
17                    d=rand()%50+1;
18                    printf("%d+%d=  ",c,d);
19                    s++;
20                    if(s>3)
21                        printf("\n");
22                }
23             break;
24         case 2:for(i=0;i<a;i++)
25                {
26                    c=rand()%50+1;
27                    d=rand()%50+1;
28                    if(c<d)
29                     t=c;
30                     c=d;
31                     d=t;
32                    printf("%d-%d=  ",c,d);
33                    s++;
34                    if(s>3)
35                        printf("\n");
36                }
37             break;
38         case 3:for(i=0;i<a;i++)
39                {
40                    c=rand()%10+1;
41                    d=rand()%10+1;
42                    printf("%d*%d=  ",c,d);
43                    s++;
44                    if(s>3)
45                        printf("\n");
46                }
47             break;
48         case 4:for(i=0;i<a;i++)
49                {
50                    c=rand()%50+1;
51                    d=rand()%50+1;
52                    printf("%d/%d=  ",c,d);
53                    s++;
54                    if(s>3)
55                        printf("\n");
56                }
57             break;
58         default: printf("error\n");
59     }
60 }

 

posted @ 2016-03-11 22:15  落雨止青  阅读(246)  评论(4编辑  收藏  举报