最新C语言大型作业-教小学生算数.doc

上传人:1595****071 文档编号:33809946 上传时间:2022-08-12 格式:DOC 页数:19 大小:227KB
返回 下载 相关 举报
最新C语言大型作业-教小学生算数.doc_第1页
第1页 / 共19页
最新C语言大型作业-教小学生算数.doc_第2页
第2页 / 共19页
点击查看更多>>
资源描述

《最新C语言大型作业-教小学生算数.doc》由会员分享,可在线阅读,更多相关《最新C语言大型作业-教小学生算数.doc(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精品资料C语言大型作业-教小学生算数.C语言工程训练 课程设计题目: 教小学生算数 学 生 学 号 : 学 生 姓 名 : 指 导 教 师 : 一、 需求分析通过此系统实现以下功能做个位数,十位数的加,减,乘和除,减法不能得负数,除法要除尽,屏幕上随机出现两个数,提示小学生给出答案,答错了要提示重新输入,直到答对为止。要统计给分,且累计,够一定分数后可进级,即从个位进到十位。同样,也可降级。1) 加法功能:用PLUS函数实现加法算数,答对输入的题量后可晋级,难度有所增加,结果错误后提示错误并且重新输入。2) 减法功能:用sub函数实现减法算数,并且结果不为负数,答对输入的题量后可晋级,难度有所

2、增加,结果错误后提示错误并且重新输入。3) 乘法功能:用mul函数实现乘法算数,答对输入的题量后可晋级,难度有所增加,结果错误后提示错误并且重新输入。4) 除法功能:用div函数实现除法功能,并且生成的除法算数要除尽,答对输入的题量后可晋级,难度有所增加,结果错误后提示错误并且重新输入。二、 总体设计1) 组成框图 主函数加法功能函数plus减法功能函数sub乘法功能函数mul除法功能函数div 2) 流程图主窗口Switch(1)Switch(2)Switch(3)Switch(4)加法功能减法功能乘法功能除法功能输入题量进入第一关输入题量进入第一关输入题量进入第一关输入题量进入第一关答对数

3、=题量数输入题量进入第下一关输入题量进入第下一关输入题量进入第下一关输入题量进入第下一关答对数=题量数输入题量进入第下一关输入题量进入第下一关输入题量进入第下一关输入题量进入第下一关答对数=题量数退出系统Switch(5)三、 详细设计#include#include#includevoid menu()printf(*);printf(_小朋友,欢迎你们来学习小学算术_);printf( );printf( 1.加法 );printf( 2.减法 );printf( 3.乘法 );printf( 4.除法 );printf( 0.退出 );printf( );printf( 快选择你要学习的

4、内容吧! );printf( );printf(_);printf(*);void plus1()int count=0,m,n,s,total,k;printf(欢迎进入第一关!n);printf(请设定题目数量:);scanf(%d,&k);while(countk)printf(%d,m=rand()%10);printf(+);printf(%d,n=rand()%10);printf(=);total=m+n;loopa:scanf(%d,&s);if(s=total)printf(恭喜你,答对了!n);count+;elseprintf(回答错误,请重新回答!n);goto loo

5、pa;printf(恭喜你通过了第一关!n);void plus2()int count=0,m,n,s,total,k;printf(欢迎进入第二关!n);printf(请设定题目数量:);scanf(%d,&k);while(countk)dom=rand()%10;n=rand()%100;while(n10); printf(%d,m); printf(+); printf(%d,n); printf(=);total=m+n; loopa:scanf(%d,&s); if(s=total)printf(恭喜你,答对了!n);count+; elseprintf(回答错误,请重新回答!

6、n);goto loopa; printf(恭喜你通过了第二关!n);void plus3()int count=0,m,n,s,total,k;printf(欢迎进入第三关!n);printf(请设定题目数量:);scanf(%d,&k);while(countk)dom=rand()%100;n=rand()%100;while(m10&n10); printf(%d,m); printf(+); printf(%d,n); printf(=);total=m+n; loopa:scanf(%d,&s); if(s=total)printf(恭喜你,答对了!n);count+; elsep

7、rintf(回答错误,请重新回答!n);goto loopa; printf(恭喜你通过了第三关!n);void sub1()int count=0,m,n,s,total,k;printf(欢迎进入第一关!n);printf(请设定题目数量:);scanf(%d,&k);while(countk) dom=rand()%10; n=rand()%10;while(m=n);printf(%d,m);printf(-);printf(%d,n);printf(=); total=m-n; loopa:scanf(%d,&s);if(s=total)printf(恭喜你,答对了!n);count

8、+;elseprintf(回答错误,请重新回答!n);goto loopa;printf(恭喜你通过了第一关!n);void sub2()int count=0,m,n,s,total,k;printf(欢迎进入第二关!n);printf(请设定题目数量:);scanf(%d,&k);while(countk)do m=rand()%100; n=rand()%10;while(m10);printf(%d,m);printf(-);printf(%d,n);printf(=); total=m-n; loopa:scanf(%d,&s);if(s=total)printf(恭喜你,答对了!n

9、);count+;elseprintf(回答错误,请重新回答!n);goto loopa;printf(恭喜你通过了第二关!n);void sub3()int count=0,m,n,s,total,k;printf(欢迎进入第三关!n);printf(请设定题目数量:);scanf(%d,&k); while(countk) dom=rand()%100; n=rand()%100;while(m=n|m10|n10);printf(%d,m);printf(-);printf(%d,n);printf(=); total=m-n; loopa:scanf(%d,&s);if(s=total

10、)printf(恭喜你,答对了!n);count+;elseprintf(回答错误,请重新回答!n);goto loopa;printf(恭喜你通过了第三关!n);void plus()int i;plus1();printf(是否继续挑战?Y(1)/N(0):);scanf(%d,&i);if(i=1)plus2();elsereturn;i=NULL;printf(是否继续挑战?Y(1)/N(0):);scanf(%d,&i);if(i=1)plus3();elsereturn;void sub()int i;sub1();printf(是否继续挑战?Y(1)/N(0):);scanf(%

11、d,&i);if(i=1)sub2();elsereturn;i=NULL;printf(是否继续挑战?Y(1)/N(0):);scanf(%d,&i);if(i=1)sub3();elsereturn;void mul1() int count=0,m,n,s,total,k;printf(欢迎进入第一关!n);printf(请设定题目数量:);scanf(%d,&k);while(countk) printf(%d,m=rand()%10); printf(*); printf(%d,n=rand()%10); printf(=);total=m*n; loopa:scanf(%d,&s)

12、; if(s=total)printf(恭喜你,答对了!n);count+; elseprintf(回答错误,请重新回答!n);goto loopa; printf(恭喜你通过了第一关!n);void mul2()int count=0,m,n,s,total,k;printf(欢迎进入第二关!n);printf(请设定题目数量:);scanf(%d,&k);while(countk)do m=rand()%100; n=rand()%10;while(m10); printf(%d,m); printf(*); printf(%d,n); printf(=);total=m*n; loopa

13、:scanf(%d,&s); if(s=total)printf(恭喜你,答对了!n);count+; elseprintf(回答错误,请重新回答!n);goto loopa; printf(恭喜你通过了第二关!n);void mul()int i;mul1();printf(是否继续挑战?Y(1)/N(0):);scanf(%d,&i);if(i=1)mul2();void div1()int count=0,m,n,s,total,k;printf(欢迎进入第一关!n);printf(请设定题目数量:);scanf(%d,&k);while(countk) dom=rand()%10; n

14、=rand()%10;while(n=0|m%n!=0);printf(%d,m);printf(/);printf(%d,n);printf(=); total=m/n; loopa:scanf(%d,&s);if(s=total)printf(恭喜你,答对了!n);count+;elseprintf(回答错误,请重新回答!n);goto loopa;printf(恭喜你通过了第一关!n);void div2()int count=0,m,n,s,total,k;printf(欢迎进入第二关!n);printf(请设定题目数量:);scanf(%d,&k);while(countk) dom

15、=rand()%100; n=rand()%10;while(n=0|m10|m%n!=0);printf(%d,m);printf(/);printf(%d,n);printf(=); total=m/n; loopa:scanf(%d,&s);if(s=total)printf(恭喜你,答对了!n);count+;elseprintf(回答错误,请重新回答!n);goto loopa;printf(恭喜你通过了第二关!n);void div3()int count=0,m,n,s,total,k;printf(欢迎进入第三关!n);printf(请设定题目数量:);scanf(%d,&k)

16、;while(countk) dom=rand()%100; n=rand()%100;while(n=0|m10|n10|m%n!=0);printf(%d,m);printf(/);printf(%d,n);printf(=); total=m/n; loopa:scanf(%d,&s);if(s=total)printf(恭喜你,答对了!n);count+;elseprintf(回答错误,请重新回答!n);goto loopa;printf(恭喜你通过了第三关!n);void div()int i;div1();printf(是否继续挑战?Y(1)/N(0):);scanf(%d,&i)

17、;if(i=1)div2();elsereturn;i=NULL;printf(是否继续挑战?Y(1)/N(0):);scanf(%d,&i);if(i=1)div3();elsereturn;main()void menu();int k;do menu(); printf(请选择:); scanf(%d,&k); switch(k) case 1:plus();break; case 2:sub();break; case 3:mul();break; case 4:div();break; case 0:break;printf(n);while(k!=0);printf(n);return 0;四、 测试结果1) 主程序界面2) 加法运算3) 减法运算4) 乘法运算5) 除法运算五、 设计体会

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁