【项目3-小学生数学考试系统】

1.做一个小学生考试系统,功能包括:

(1)利用随机数出10道加法题;

(2)小学生用户答题给出每道题的答案;

(3)对小学生的答题进行评判;

(4)计算出小学生答题正确率。

2. 进一步改进,提高题目质量。

要求(1)百以内算术:运算数、结果都在100以内!

(2)先随机产生运算符后,针对各个运算产生运算数保证下列要求:对加法,两数之和保证不大于100;对减法,被减数大于减数,且被减数不大于100;对乘法:两数之积不超过100;对除法:被除数大于除数,且被除数不大于100,除数不许为0。

3. 建立一个文件,里面包含人工出好的题目。程序从文件中读取题目。

参考解答:

1.做一个小学生考试系统,功能包括:

(1)利用随机数出10道加法题;

(2)小学生用户答题给出每道题的答案;

(3)对小学生的答题进行评判;

(4)计算出小学生答题正确率。

#include

#include

#include

int main()

{

int sum=0;/*学生答对题目*/

int a,b,d,t; /*分别表示两个运算数,正确答案及学生输入的答案*/

int i;

srand(time(0)); /*初始化随机种子*/

for(i=0; i<10; i++)

{

printf("第 %d 题: ", i+1);

a=rand()%10+1;

b=rand()%10+1;

d=a+b; /*得到正确答案*/

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

scanf("%d", &t);

if(t==d) /*用户输入的答案与正确答案对比*/

{

printf(" right! \n");

sum++;

}

else

printf(" wrong! \n");

}

printf("共答对了%d道题,得分率%.2f\n", sum, 1.0*sum/10*100);

return 0;

}

进一步改进,提高题目质量。

要求(1)百以内算术:运算数、结果都在100以内!

(2)先随机产生运算符后,针对各个运算产生运算数保证下列要求:对加法,两数之和保证不大于100;对减法,被减数大于减数,且被减数不大于100;对乘法:两数之积不超过100;对除法:被除数大于除数,且被除数不大于100,除数不许为0。

#include

#include

#include

int main()

{

int sum=0;//学生得分

int a,b,d,t; //分别表示两个运算数,正确答案及学生输入的答案

int c; //运算:0-加 1-减 2-乘 3-除

int i;

srand(time(0)); //初始化随机种子

for(i=0; i<10; i++)

{

printf("第 %d 题: ", i+1);

c=rand()%4;

do

{

a=rand()%100+1;

b=rand()%100+1;

if(a

{

d=a;

a=b;

b=d;

}

if(c==3)//对于除法,调整被除数,以保证能整除

a=(a/b)*b;

}while((a+b)>=100||a*b>=100);

//以上满足了题意的要求,但可以看到出题质量还可以优化

switch(c)

{

case 0://加法

d=a+b;

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

break;

case 1: //减法

d=a-b;

printf("%d—%d=", a, b);

break;

case 2: //乘法

d=a*b;

printf("%d×%d=", a, b);

break;

case 3: //除法

d=a/b;

printf("%d÷%d=", a, b);

break;

}

scanf("%d", &t);

if(t==d)

{

printf(" right! \n");

sum++;

}

else

printf(" wrong! \n");

}

printf("共答对了%d道题,得分率%.2f\n", sum, 1.0*sum/10*100);

return 0;

}

3.建立一个文件,里面包含人工出好的题目。程序从文件中读取题目。

#include

#include

int main()

{

int sum=0;//学生得分

int a,b,d,t; //分别表示两个运算数,正确答案及学生输入的答案

char c; //运算:0-加 1-减 2-乘 3-除

int i;

FILE *fp;

fp=fopen("excise.txt","r");

if(fp==NULL)

{

printf("cannot open file!\n");

exit(1);

}

for(i=0; i<10; i++)

{

fscanf(fp, "%d%c%d", &a, &c, &b);

printf("第 %d 题: ", i+1);

switch(c)

{

case '+'://加法

d=a+b;

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

break;

case '-': //减法

d=a-b;

printf("%d—%d=", a, b);

break;

case '*': //乘法

d=a*b;

printf("%d×%d=", a, b);

break;

case '/': //除法

d=a/b;

printf("%d÷%d=", a, b);

break;

}

scanf("%d", &t);

if(t==d)

{

printf(" right! \n");

sum++;

}

else

printf(" wrong! \n");

}

printf("共答对了%d道题,得分率%.2f\n", sum, 1.0*sum/10*100);

fclose(fp);

return 0;

}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对我们的支持。如果你想了解更多相关内容请查看下面相关链接

时间: 2019-02-18

小学数学考试系统java_C语言项目小学生数学考试系统参考相关推荐

  1. 小学生数学测试软件c语言流程图,小学生数学测试软件-C语言课程设计

    小学生数学测试软件-C语言课程设计 C语言课程设计 设计期限 2013 年 6 月 17 开始 至 2013 年 6 月 20 结束 系 别 信息管理与信息系统 专 业 班级 学生姓名 学号 指导教师 ...

  2. 小学生算法系统 c语言编程,小学生心算C系统.doc

    小学生心算C系统 课 程 设 计 报 告 课程名称 C语言 课题名称 小学生心算CAI系统 专 业 班 级 学 号 姓 名 指导教师 XXXX 年 XX 月 XX 日 湖南工程学院 课 程 设 计 任 ...

  3. 小学生数学测试软件编写分析,通过c语言编写小学生数学测试软件c语言课程设计.pdf...

    C 语言课程设计 设计期限 20XX年 6 月 17 开始 至 2013 年 6 月 21 结束 系 别 信息管理与信息系统 专 业 36 班级 112030601 学生姓名 邓茂华 学号 11203 ...

  4. 小学生数学测试软件编写分析,通过C语言编写小学生数学测试软件C语言课程设计...

    <通过C语言编写小学生数学测试软件C语言课程设计>由会员分享,可在线阅读,更多相关<通过C语言编写小学生数学测试软件C语言课程设计(14页珍藏版)>请在人人文库网上搜索. 1. ...

  5. 航班系统C语言程序流程图,飞机订票系统(C语言代码及流程图)

    飞机订票系统(C语言代码及流程图) 目录 第一部分 源程序---------------------------------------------------3 第二部分 函数流程图-------- ...

  6. c语言开发题库管理系统,c语言程序设计_题库管理系统.doc

    c语言程序设计_题库管理系统 程序设计基础课程设计报告 班 级: 计算机科学与技术1103班 姓 名: 杨广宇 指导教师: 胡宏涛 完成日期: 2012年9月6日 (题目) 1. 设计题目与要求 (简 ...

  7. c语言写考勤系统,C语言课程设计学生考勤系统

    <C语言课程设计学生考勤系统.doc>由会员分享,可免费在线阅读全文,更多与<C语言课程设计学生考勤系统>相关文档资源请在帮帮文库(www.woc88.com)数亿文档库存里搜 ...

  8. 三年级学生写数学用计算机算,三年级小学生数学练习题三篇

    [导语]做数学题可以高效帮助学习者理解全方位,多角度理解基本知识,拓展思路,积累技巧.而这些恰是考试所需要的.但是,做题有用的前提是,做过的题必须知道自己为什么做对,为什么做错,做错的完全理解没有,否 ...

  9. 程序设计语言c语言期末考试,《C语言程序设计》期末考试试卷(A卷).pdf

    广州轻工职业学校 (大源校区) 2015-2016学年第二学期 <C语言程序设计>期末 考试试卷 (A卷) 注 意 事 项 1.请首先按要求在试卷的标封处填写您的专业.姓名. 学号和所在的 ...

最新文章

  1. 欢迎光临CAX软件二次开发开源社区!
  2. Leetcode 16. 最接近的三数之和(3Sum Closest)
  3. 数据结构算法入门--一文了解什么是复杂度
  4. docker build Dockfile ---- RUN 中 cd 切换路径失败 的原因、解决
  5. Vmware由于centos升级内核不可运行(C header files matching your running kernel were not found)的解决方案...
  6. Ubuntu安装时怎样分区
  7. PHP距离春节还剩多少天,2019年春节倒计时 现在距离2019年春节还有多少天 - 中国万年历...
  8. kafka topic数量上限_Kafka使用起来,竟还有这么多“潜规则”?一文彻底搞懂了...
  9. [转]Java 对象锁-synchronized()与线程的状态与生命周期
  10. openstack nova ×××
  11. 三星老手机com.android,你认识几个?细数三星最经典的手机
  12. 计算机程序领域专利撰写,干货 | 计算机软件专利撰写模板
  13. linux测试硬盘速度命令,如何测试Linux磁盘的读写速度
  14. 英:最常用有用的英语口语900句
  15. 怎么用计算机提供权限,“你需要计算机管理员提供的权限才能对此文件进行更改”怎么办...
  16. Java学习 day7 (常用API)Scanner类.Random类.Arraylist类
  17. 关于BGA芯片布局时要注意的要点
  18. ae制作小球轨迹运动_视频剪辑教程:AE动画教程,如何创建一个运动的小球
  19. 指纹识别研究(一) 指纹的三级特征
  20. 初始化之前使寄存器恢复缺省值的重要性

热门文章

  1. ubuntu20.04 屏幕共享打不开
  2. baidu卫兵世界杯智能提速 打破运营商OTT端阻力
  3. 关于干货集中营的一个开源App
  4. 教师妹学python之五:数据结构
  5. java+mysql crm客户关系区块链毕业管理系统设计与论文
  6. Python接私活,兼职也可以月入10000+。Python爬虫兼职
  7. 【深度学习】(ICCV-2021)PVT-金字塔 Vision Transformer及PVT_V2
  8. Short-term load forecasting with an improved dynamic decomposition-reconstruction-ensemble approach
  9. 代理,正向代理和反向代理
  10. 阿里云点播录制,上传,播放使用说明及遇到的坑