跪求用C语言编一个小学生数学测试软件的程序~!!

制作一个可供小学数学运算程序:10以内加减法测试,每次随机出10道题,判断做题是否正确,最后计算分数。要求:1.完成题目要求的基本功能,如有能力者可在此基础上扩充。2.界... 制作一个可供小学数学运算程序:10以内加减法测试,每次随机出10道题,判断做题是否正确,最后计算分数。
要求:1. 完成题目要求的基本功能,如有能力者可在此基础上扩充。
2.界面设计自行决定,程序中的输入输出要加必要的提示说明。
3.输出的结果要准确、清晰、美观。
展开
 我来答
hyphen1986
2008-04-28 · TA获得超过526个赞
知道小有建树答主
回答量:645
采纳率:0%
帮助的人:365万
展开全部
#include<stdio.h>
#include<stdlib.h>
void main()
{
void fuhao(int x) ;
int a,b,t,p,score,flag; score=0;
loop :printf("开始进入测试!\n");
for(int i=0;i<10;i++)
{
printf("第%d题:\n",i+1);
a=rand()%10;
b=rand()%10;
if(a<b)
{t=a;a=b;b=t;}
flag=rand()%2;
printf("%d",a);
fuhao(flag);
printf("%d=\n",b);
scanf("%d",&t);
if(flag==0)
{
if(t==a+b)
{printf("真棒了! 答对了!\n");score=score+10;}
if(t!=a+b)printf("答错了!正确答案是:%d\n",a+b);
}
if(flag==1)
{
if(t==a-b)
{printf("真棒了! 答对了!\n");score=score+10;}

if(t!=a-b)printf("答错了!正确答案是:%d\n",a-b);

}

}
printf("最后得分:%d\n",score);
printf("是否继续?1.继续2.退出\n");
scanf("%d",&t);
if(t==1)goto loop;
else printf("欢迎使用!再见!");
}
void fuhao(int x)
{
if(x==0) printf("+");
if(x==1) printf("-");

}
界面没有仔细处理,应该还能看的过去吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2008-04-28
展开全部
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <assert.h>
#define NOU 10/*试题数量*/
int comp(int);
int init(void);
int main(int argc, char* argv[])
{
int in;
do
{
init();
scanf("%d",&in);
assert(in>=0&&in<=4);
system("cls");
if (in) comp(in);

}
while (in!=0);
return 0;
}
int init(void)
{
system("cls");
printf("1. Addition\n2. Subtraction\n3. Multiplication\n4. Division\n0. EXIT\n");
return 0;
}

int comp(int op)
{
int a,b,c,i,right=0;
float cfd;
printf("Input \'-1\' to exit!\n\n");
srand(time(NULL));
for (i = 0; i < NOU; i++) {
a=rand()%10+1;
b=rand()%10+1;
switch(op){
case 1:printf("%d+%d=",a,b);
b=a+b;
break;
case 2:while (a-b<0) {
a=rand()%10+1;
b=rand()%10+1;
}
printf("%d-%d=",a,b);
b=a-b;
break;
case 3:printf("%d*%d=",a,b);
b=a*b;
break;
case 4:while (a<b||cfd*b!=a){
a=rand()%10+1;
b=rand()%10+1;
cfd=a/b;
}
printf("%d/%d=",a,b);
b=a/b;
break;
}
scanf("%d",&c);
b==c?printf("\nRight!\n"):printf("\nWrong! It's %d\n",b);
right+=b==c?1:0 ;
}
puts("****************************");
printf("Right:\t%d\nWrong:%d\n",right,10-right);
system("pause");
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
高金山
2008-04-28 · TA获得超过1万个赞
知道大有可为答主
回答量:4101
采纳率:0%
帮助的人:1651万
展开全部
#include <stdio.h>
#include <stdlib.h>

#include <math.h>
int main()
{
char ch;

//while(1)
{
printf("---------\n");
printf("做题请按g\n");
printf("退出请按x\n");
printf("---------\n");
scanf("%c",&ch);
getchar();
if(ch=='x')
{
break;
}
else if(ch=='g')
{
int x,y,op,r,input;

x=rand()%10;
y=rand()%10;
switch(rand()%2)
{
case 0:
op='+';
r=x+y;
break;
default:
op='-';
if(x<y)
{//交换
r=x;
x=y;
y=r;
}
r=x-y;
break;
}
printf("%d%c%d=",x,op,y);
scanf("%d",&input);
if(input==r)
{
printf("真聪明,做对啦!\n");
}
else
{
printf("好笨啊,做错啦!\n");
}
printf("\n");
}
}
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友2e7f00a
2008-05-04 · TA获得超过178个赞
知道答主
回答量:129
采纳率:0%
帮助的人:62.4万
展开全部
没有区别
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2008-04-29
展开全部
我用VC++6的MFC给你编个行不?可以把源代码和生成的exe文件一起发给你。

反正这个挺简单,我也有时间来做。

如果可以,请用123来称呼我好了。

界面和附件里的“计算器”相仿
]
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式