哈哈,兄弟一样重修的哦,第3 和第4 个程序有没?发我邮箱或者这里都可以
邮箱
flycook@
第6个我给你
#include<iostream.h>
#include<math.h>
#include<stdio.h>
#include<stdlib.h>
int z,r=0,b=0,m=0;int p[10],q[10],s[10],u[10];char y[10][10];
void right()
//right函数
{
int a=rand()%5+1;
switch(a)
{case 1:cout<<"答对了!"<<endl;break;
case 2:cout<<"你真棒!"<<endl;break;
case 3:cout<<"好样的!"<<endl;break;
case 4:cout<<"真聪明!"<<endl;break;
case 5:cout<<"好极了!"<<endl;break;
default:cout<<"error!"<<endl;
}
}
void wrong()//wrong 函数
{
int a=rand()%5+1;
switch(a)
{case 1:cout<<"答错了!"<<endl;break;
case 2:cout<<"加油啊!"<<endl;break;
case 3:cout<<"再试试!"<<endl;break;
case 4:cout<<"再来一次!"<<endl;break;
case 5:cout<<"要考虑清楚!"<<endl;break;
default:cout<<"error!"<<endl;
}
}
void tongji(char *name,int e,int q,int t)
{int m,a;char *p;p=name;a=q;
z=100*a/10;m=e;
cout<<"姓名:"<<name<<" 能力级别:"<<m;
//说明:b为准确率
cout<<" 答对题数:"<<a<<" 准确率:"<<z<<"%"<<endl;
//m为难度
}
void jia(int k)//加法
{int m,n,o,s;
n=k;
m=rand()%n+1;
//限定等级范围,即保证m,n位数相等
n=rand()%n+1;
cout<<m<<"+"<<n<<"=";cin>>o;
s=m+n;
if(o==s)
//o表示计算结果,s为标准答案
{right();b++;}
//累加答对的题目
else
wrong();
}
void jian(int k)//减法
{int m,n,o,s;
n=k;
m=rand()%n+1;
n=rand()%n+1;
cout<<"|"<<m<<"-"<<n<<"|="; cin>>o;
s=m-n;
if(s<0)
{int r;
r=m; m=n;n=r;
} s=abs(s);
if(o==s)
{right();b++;}
else
wrong();
}
void cheng(int k)//乘法
{int m,n,o,s;
n=k;
m=rand()%n+1;
n=rand()%n+1;
cout<<m<<"*"<<n<<"="; cin>>o;
s=m*n;
if(o==s)
{right(),b++;}
else
wrong();
}
void chu(int k)//除法
{int m,n,o,s,l;
n=k;
m=rand()%n+1;
n=rand()%n+1;
cout<<m<<"/"<<n<<"="<<endl<<"请分别输入商:";
cin>>o;
cout<<"请输入余数:";
cin>>l;
int t=m/n;int r=m%n;
if ((o==t)||(l==r))
{right();b++;}
else
wrong();
}
void math(int m,int i)
{int n,j;
if(m==1)
//等级为1的位数确定
{n=9;}
if(m==2)
{n=99;}
if(m==3)
{n=999;}
if(i==1)
for(j=0;j<10;j++) jia(n);
//执行函数jia(n)
if(i==2)
for(j=0;j<10;j++) jian(n);
if(i==3)
for(j=0;j<10;j++) cheng(n);
if(i==4)
for(j=0;j<10;j++) chu(n);
}
void main()
{int k,t,l;char name[20];
cout<<"
****************************"<<endl;
cout<<"
*
欢迎使用计算机CAI程序
*"<<endl;
cout<<"
*
小学生四则运算
*"<<endl;
cout<<"
****************************"<<endl<<endl;
cout<<"***************************************************"<<endl;
cout<<"小学生四则运算说明如下:"<<endl;
cout<<"***************************************************"<<endl;
cout<<"运算类型:1-加法,2-减法,3-乘法,4-除法,5-随机"<<endl;
cout<<"***************************************************"<<endl;
cout<<"难度等级:1-个位数运算,2-两位数运算,3-三位数运算"<<endl;
cout<<"***************************************************"<<endl;
cout<<"输入测试人数:"; cin>>l;
for(t=0;t<l;t++)
{
int i;
cout<<"输入运算类型:";cin>>i;
if(i==5){i=rand()%4+1;}
//随机的四种类型
cout<<"输入难度:";cin>>m;
cout<<"输入姓名:";cin>>y[t];
math(m,i);
tongji(y[t],m,b,t);
b=0;p[r]=m;q[r]=z;r++;
//储存每一次的成绩
}
//q[r]表示所有考察的成绩组
int w,c=0;
for(w=0;w<r;w++)
{
s[c]=q[w];
u[c]=p[w];c++;
//数组s[c]表示检索的成绩组
}
cout<<"****************************************************"<<endl;
cout<<"----------------------------------------------------"<<endl;
cout<<"****************************************************"<<endl<<endl;
cout<<"输入所检索的前n个学生成绩:"<<"n=";
int x;
cin>>x;
for(int d=0;d<x;d++)
{cout<<"检索的第"<<d+1<<"个学生 姓名:"<<y[d]<<"的成绩是:"<<endl;
cout<<"准确率:"<<s[d]<<endl;
cout<<"能力等级:"<<u[d]<<endl;}
}