三九宝宝网宝宝教育学龄段教育

用C语言写一个小学生口算出题系统

01月09日 编辑 39baobao.com

[孩子口算能力差要怎么训练]十以内加减法 孩子要对10以内的加减法非常熟练,注意,是非常熟练,因为20以内的加减法的计算方法,完全要以10以内的为基础。计算进位加法,主要算法是凑十法,如果10以内的加法不熟,凑...+阅读

一、设计的流程:

1. 主界面设计,选择练习或测试,按ESC结束程序。

2. 题型选择界面设计,选择加、减、乘、除或混合运算,按ESC返回主界面。

3. 系统随机出题,运算数及结果均在100以内,乘、除法应能整除,显示算式。

4. 练习时,系统随机出题,键入结果,正确和错误均有提示,出错时允许再输入,最多三次机会,若还不正确,给出答案。继续出题,按ESC,显示总题数,正确数和正确率。

5. 测试时,系统自动出10道题,每题只给一次机会,每题10分,统计得分。结束后,给出总分,显示各题的对错信息,错误的给出答案。中间按ESC键结束。显示已作题的对错信息,错误的给出答案,不显示得分,按任意键返回题型选择界面。

相关知识:按键操作、数组、指针、结构体等

二、例程:

#include

#include

#include

#include

void main()

{

int a[10],b[10],d[10],c[10],num=0,result,add=0;

float val;

char fa[5]={'+','-','*','/'};

/* 出10道题 */

while(1)

{

srand((unsigned)time(NULL));

d[num]=abs(rand())%4;/* 保证出题算法的随机性 */

while(1) /* 保证出题成功 */

{

c[num]=-1;

a[num]=abs(rand())%100;

b[num]=abs(rand())%100;

if(d[num]==0) c[num]=a[num]+b[num];

else if(d[num]==1) c[num]=a[num]-b[num];

else if(d[num]==2) c[num]=a[num]*b[num];

else if(d[num]==3)

{

if(b[num]>0)val=1.0*a[num]/b[num];

else val=-1;

}

if(d[num]{

if(c[num]>=0 & c[num]}

else

{

if(a[num]==int(val)*b[num] & val>=0)

{c[num]=val; break;}

}

}

num++;

if(num==10) break;

}

/* 回答 */

num=0;

while(1)

{

printf("%d %c %d= ",a[num],fa[d[num]],b[num]);

scanf("%d",&result);

if(result==c[num])

{

printf("回答正确!\n");

add+=10;

}

else

printf("错误,正确答案: %d\n",c[num]);

num++;

if(num==10) break;

}

printf("\n得分:%d\n",add);

getch();

}

以下为关联文档:

怎样帮助低段学生提高口算能力一、联系生活实际,帮助学生理解算理学习,能够让学生计算出正确的结果固然重要,但更为重要的是让学生能够真正掌握学习的方法。为了可以帮助学生理解算理,掌握口算的方法,教师可以...

小学三年级口算300道640÷80= 15*5= 23*3= 12*2*5= 480÷80= 16*5= 27*3= 90÷15= 48÷4= 640÷16= 39÷3= 24*20= 32*3= 48÷16= 12*8= 27*3= 56÷14= 24÷8= 14*2= 83-45= 560÷80= 96÷24= 4...

三年级数学乘除法口算表内除法口算练习题2÷2=4÷2=6÷2=8÷2=15÷3=18÷3=21÷3=24÷3=25÷5=30÷5=35÷5=40÷5=4÷4=8÷4=12÷4=16÷4=10÷2=12÷2=14÷2=16÷2=20÷4=24÷4=28÷4=32÷4=18÷...

谁能给我1000道小学3年级口算和1000道小学3年级睇等式计算0。9*6= 0。12*6= 6。8÷4= 0。72÷12= 0。24*2= 1。2÷3= 14*0。5= 9。6÷6= 1。6*5= 0。48÷6= 12。5÷5= 0。12*5= 4。 6÷23= 1。6÷0。8= 7。2÷0。6= 3。9÷3。9= 1。...

小学三年级数学口算三年级口算练习 (一) 26+9= 57-38= 1500-700= 42*2= 99÷3= 770÷7= 660÷3= 960÷3= 180÷9= 65+15= 660÷6= 800*2= 50÷5= 3*800= 420÷7= 3*220= 480÷4= 58+33= 420-20=...

小学三年级数学加减乘除口算4*12= 600÷3= 32*3= 4*16= 2*40= 60+8= 150÷5= 240÷8= 25*4= 630÷7= 302*3= 300÷6= 48÷4= 17*5= 16*5= 9+6*3= 5+4*7= 8÷2+9= 8+5*6= 2400÷8= 700*4 = 103*3 = 500...

三年级人教版上册数学口算三年级数学第二学期口算竞赛试题 班级___________ 姓名___________ 成绩_________ 10*2= 72-47= 20*5= 27+15= 20÷2= 63÷3= 27*5= 510÷3= 40*9= 23*30= 84÷4= 15÷3= 12...

小学一年级下册口算题100道要稍微难一点的一年级100以内加减法口算练习题 12+6= 29-7= 33+2= 3+40= 15+4=23+5= 37+1= 29-3= 38-3= 15-4= 18-2= 30+8= 43+1= 86+2= 70+3= 30-2= 72-2= 66-4= 39-2= 20-9= 53+5= 35+2=...

C语言编程小学生数学四则运算题要求可以输入所出题目数判断对错#include <stdio.h> #include <time.h> void main() { int num,mark=0,i; int num1,num2,sum,n; scanf("%d",&num); srand((unsigned) time(NULL)); for(i=0;i<num;i++) { num...

推荐阅读
图文推荐