首页 > 自动生成小学四则运算题目的程序.心得体会

自动生成小学四则运算题目的程序.心得体会

http://t.cn/RAS67B0

源代码

#include

#include

#include

main()

{

int a,b,op,os;

printf(" [天天练,Baby们来挑战吧!] ");

aq1: printf("选择您想挑战的运算法则 ");

printf("1.加法 2.减法 3.乘法 4.除法 ");

scanf("%d",&op);

switch(op)

{

aq: case 1:

srand((unsigned)time(NULL));

a=rand()%100+1;b=rand()%100+1;

printf("题目为:%d + %d = ? ",a,b);

printf("1.查看答案 2.做下一题 ");

scanf("%d",&os);

if(os==1)

{printf("%d + %d =%d ",a,b,a+b);

goto aq1;

}

else

goto aq;

break;

at: case 2:a=rand()%100+1;b=rand()%100+1;

printf("题目为:%d - %d = ? ",a,b);

printf("1.查看答案 2.做下一题 ");

scanf("%d",&os);

if(os==1)

{printf("%d - %d =%d ",a,b,a-b);

goto aq1;

}

else

goto at;

break;

aq2: case 3:

a=rand()%100+1;b=rand()%100+1;

printf("题目为:%d * %d = ? ",a,b);

printf("1.查看答案 2.做下一题 ");

scanf("%d",&os);

if(os==1)

{printf("%d * %d =%d ",a,b,a*b);

goto aq1;

}

else

goto aq2;

aq3: case 4:

a=rand()%100+1;b=rand()%100+1;

printf("题目为:%d / %d = ? ",a,b);

printf("1.查看答案 2.做下一题 ");

scanf("%d",&os);

if(os==1)

{printf("%d / %d =%d ",a,b,a/b);

goto aq1;

}

else

goto aq3;

break;

}

}

这个程序,可以自动生成小学简易的四则运算,提供菜单让用户选择,然后判断加减乘除,判断答对答错的题目个数,用户同时也可以重新选择继续答题或重新选择或退出程序。

该系统是让计算机充当一位给小学生布置作业的算术老师,为学生出题、阅卷 

该系统应具备以下功能: 

1. 为小学生出题(分别进行+、-、*、÷等不同运算) 2. 学生做题后,进行评阅; 

学生每做一题后,评阅时给出“答题正确,很好”或“答题错误,重做”等字样; 

3. 加、减、乘、除运算功能可以自由选择实现; 

在我们设计程序时候,将一个大的问题分成几个模块,运用不同的函数将这些模块分别设计出来,然后运用函数调用,我们就可以将这些功能不同的模块联系在一起。

在设计程序过程中,我原先定义的变量 flag 为字符型,当输入y时继续做下题,输入n时退出系统,我发现无论按哪个字母,在看结果时候发现有两条继续测试请按1,退出测试请按0 :语句输出,后来经过老师的讲解我明白了,在连续的2个scanf函数中,以字符形式输入第一个scanf函数时候,回车键会以字符形式存储在第二个scanf函数中。 

深知自己技术水平还不高,编这样的程序遇到了很多困难,但我相信经过今后的不断学习,我的变成能力会有很大的提高。

转载于:https://www.cnblogs.com/yyx1/p/4503865.html

更多相关:

  • #include int main(int args,char ** argv) {int map[3][3]={{1,2,3},{4,5,6},{7,8,9}};int **pMap=(int **)map;printf("%d ",map);//数组的首地址printf("%d ",*(map+1));//数...

  • awk格式化使用printf函数,类似于C语言中的printf函数 比如 awk '{printf "%s ", $1}' test1 上面的方式是awk每次处理一行,然后进行替换的,如果我们想要传入多个参数,此时就需要多个格式化...

  • 【目的】   定义一个结构体类,其中的成员变量数组长度不定,根据实例化的对象指定长度,所以想到用指针实现 【现状】   指针可以指向任意长度数组,但结构体类只分配指针本身4字节长度,所以无法扩展     1 /** 2 *****************************************************...

  • 1.有一个四位正整数,组成这个四位数的四个数字各不相同,如果把它们的首尾互换,第二位与第三位互换,组成一个新的四位数。原四位数为新四位数的4倍,请找出一个这样的四位数。 #include int main() {int a,b,c,d,e,f;for(a=1000;a<10000;a++){b=a%10;c=a/1...

  • if条件语句  非零即真   0即假 if(表达式){     //成立之后要处理的事情 }   以atm小程序为例 //判断用户选择的操作     if (operation == 1){            //输入密码         printf("输入密码 ");     }          if (operation...