{
int x
x = rand()%4+1
switch(x) {
case 1:
printf("Very Good!\n")
break
case 2:
printf("Excellent!\n")
break
case 3:
printf("Nice work!\n")
break
case 4:
printf("Keep up the good work!\n")
break
}
}
wrong_prompt()
{
int x
x = rand()%4+1
switch(x) {
case 1:
printf("No. Please try again.\n")
break
case 2:
printf("Wrong. Try once more.\n")
break
case 3:
printf("Don’t give up!\n")
break
case 4:
printf("Not correct. Keep trying.\n")
break
}
}
#include <stdio.h>#include<stdlib.h>
#include<time.h>
int cal(int)
void gen(int,int&,int&,int&)
int main(void)
{
int m //使用数字位数,当m=4,程序退出
srand((int)time(0))
printf("\t\t请选择下面的一个项目:\n\n")
printf("\t\t1...........................一位数\n")
printf("\t\t2...........................两位数\n")
printf("\t\t3...........................三位数\n")
printf("\t\t4...........................退出\n")
do{
scanf("%d",&m)
switch(m){
case 1:
case 2:
case 3:
cal(m)break
case 4:
break
default:
printf("输入错误,请重新输入:")
}
}while(m!=4)
return 0
}
int cal(int m){
// m:数字位数
int num1,num2,smb
int i,k
int sum,res
int u_sum,u_res
int write
bool T
int score
int fen[]={10,8,6}
//num1:第一操作数
//num2:第二操作数
//smb:操作符,有:+,-,*,/,% 五种(1-5)
//sum 表示加法操作的和,减法操作的差,乘法操作的积以及除法操作的商。
//res 表示除法操作的余数,以及取余操作的余数。
//write:正确答案数目
//T:答对题
//score:总分
write=0
score=0
for(i=0i<10i++){
gen(m,num1,num2,smb) //生成操作数和相应的操作符
switch(smb){ //生成正确答案
case 1: //加法
sum=num1+num2break
case 2: //减法
sum=num1-num2break
case 3: //乘法
sum=num1*num2break
case 4: //除法
sum=num1/num2
res=num1%num2
break
case 5: //取余
res=num1%num2
}
for(k=0k<3k++){
switch(smb){
case 1: //加法
printf("%d+%d=",num1,num2)
scanf("%d",&u_sum)
if(sum==u_sum){
write=write+1
T=true
}else{
T=false
}
break
case 2: //减法
printf("%d-%d=",num1,num2)
scanf("%d",&u_sum)
if(sum==u_sum){
write=write+1
T=true
}else{
T=false
}
break
case 3: //乘法
printf("%d*%d=",num1,num2)
scanf("%d",&u_sum)
if(sum==u_sum){
write=write+1
T=true
}else{
T=false
}
break
case 4: //除法
printf("%d/%d=商,余数",num1,num2)
scanf("%d,%d",&u_sum,&u_res)
if(sum==u_sum&&res==u_res){
write=write+1
T=true
}else{
T=false
}
break
case 5: //取余
printf("%d%%%d=",num1,num2)
scanf("%d",&u_res)
if(res==u_res){
write=write+1
T=true
}else{
T=false
}
break
default:
}
if(T){
score=score+fen[k]
switch(k){
case 0:
printf("完全正确,你非常聪明!加%2d分\n",fen[k])break
case 1:
printf("答对了,你很棒!加%2d分\n",fen[k])break
case 2:
printf("答对了,祝贺你!加%2d分\n",fen[k])break
}
break
}else if(k==2){
printf("非常遗憾你又答错了,请继续做下一题。本题的正确答案为")
switch(smb){
case 1:
case 2:
case 3:
printf("%d\n",sum)break
case 4:
printf("%d,%d\n",sum,res)break
case 5:
printf("%d\n",res)break
}
}else{
printf("你答错了,继续努力!\n")
}
}
}
printf("你本次练习的总分为%d\n",score)
return 0
}
void gen(int m,int &num1,int &num2,int &smb){
int min[]={0,10,100}
int max[]={9,99,999}
int temp
m=m-1
smb=rand()%(m+3)+1
num1=rand()%(max[m]-min[m]+1)+min[m]
num2=rand()%(max[m]-min[m]+1)+min[m]
if(num1<num2&&smb==2){
temp=num1
num1=num2
num2=temp
}
while(num2==0&&smb>3){
num2=rand()%(max[m]-min[m]+1)+min[m]
}
}
什么是C语言?C语言的简介。C语言是一种计算机程序设计语言,它既具有高级语言的特点,又具有汇编语言的特点。
它可以作为工作系统设计语言,编写系统应用程序,也可以作为应用程序设计语言,编写不依赖计算机硬件的应用程序。
因此,它的应用范围广泛,不仅仅是在软件开发上,而且各类科研都需要用到C语言,具体应用比如单片机以及嵌入式系统开发。
语言特点:C是中级语言/C是结构式语言/C语言功能齐全/C语言适用范围大/简洁紧凑、灵活方便/运算符丰富/数据类型丰富/C是结构式语言/语法限制不太严格,程序设计自由度大/适用范围大,可移植性好。