【#文档大全网# 导语】以下是®文档大全网的小编为您整理的《计算题C语言代码》,欢迎阅读!
#include #include #include
int question_get1(); int question_get2();
int type;
void main( void ) {
int answer,Lever;
srand( (unsigned)time( NULL ) ); out:
printf("1.一位数运算!2.两位数运算!\n"); scanf("%d",&Lever);
printf( "请选择要测试的题目种类:" );
printf( "\n1.加法\n2.减法\n3.乘法\n4.除法\n" ); scanf( "%d", &type );
while( 1 )//实现系统循环 {
int temp; char flag; while(Lever==1) { answer = question_get1();//调用一位数运算函数 printf( "请给出你的答案:\n" ); break;//要跳出此次while循环 } while(Lever==2) {
answer = question_get2();//调用二位数运算的函数 printf( "请给出你的答案:\n" ); break;//要跳出此次while循环 }
fflush( stdin );
scanf( "%d", &temp );//储存测试者输入的结果
while( temp!=answer )//判断结果的对错 错误时 实现循环 运算 {
printf( "\n笨蛋,you are wrong! again!\n" ); fflush( stdin );//继续运算
scanf( "%d", &temp ); }
printf( "\n天才!you are rigth! Very good!\n" );
printf( "press 1 to go on,press 2 to exit,press 0 to end!\n" );//选择菜单 fflush( stdin );
scanf( "%c", &flag );
while( flag!='1' && flag!='2'&&flag!='0' )//选择菜单判断 {
printf( "press 1 to go on,press 2 to exit,press 0 to end!\nelse no working!\n" ); fflush( stdin );
scanf( "%c", &flag ); }
if ( flag=='2' ) goto out;//回到out实现整个系统的循环 else if(flag=='0') break;//结束本程序 } }
int question_get1()//子函数 一位数运算 {
int a,b,c; if( type==1 ) {
a=rand()%10;//在10以内产生随机数 b=rand()%10;//在10以内产生随机数 printf( "%d + %d = ?", a, b ); return(a+b); }
else if( type==2 ) {
b=rand()%10;//在10以内产生随机数 c=rand()%10;//在10以内产生随机数 printf( "%d - %d = ?", b+c, b ); return(c);
}
else if( type==3 ) {
a=rand()%10;//在10以内产生随机数 b=rand()%10;//在10以内产生随机数 printf( "%d * %d = ?", a, b ); return(a*b); } else
{
b=rand()%10; c=rand()%9+1; printf( "%d / %d = ?", b*c, b ); return(c); } }
int question_get2()//子函数 二位数运算 {
int a,b,c; if( type==1 ) {
a=rand()%100;//在100以内产生随机数 b=rand()%100;//在100以内产生随机数 printf( "%d + %d = ?", a, b ); return(a+b); }
else if( type==2 ) {
b=rand()%100;//在100以内产生随机数 c=rand()%100;//在100以内产生随机数 printf( "%d - %d = ?", b+c, b ); return(c);
}
else if( type==3 ) {
a=rand()%100;//在100以内产生随机数 b=rand()%100;//在100以内产生随机数 printf( "%d * %d = ?", a, b ); return(a*b); } else {
b=rand()%10; c=rand()%10+1;
printf( "%d / %d = ? ", b*c , c );
return(b); } }
本文来源:https://www.wddqxz.cn/0d4823afa5e9856a561260fa.html