学校实训时要我们做的一个程序~“小学生四则运算练习系统 ”

作者在 2008-07-03 19:23:07 发布以下内容
#include<iostream>
#include <time.h>
#include<stdlib.h>
using namespace std;
void addition();
void subtract();
void multiplication();
void division();
int main()
{
    while(true)
    {
    char i;
    cout<&lt;"               ***************************************              "&lt;&lt;endl;
    cout&lt;&lt;endl;
    cout&lt;&lt;"                        小学生四则运算练习系统                      "&lt;&lt;endl;
    cout&lt;&lt;endl;
    cout&lt;&lt;"               ***************************************              "&lt;&lt;endl;
    cout&lt;&lt;endl;
    cout&lt;&lt;"                              1--加法练习                           "&lt;&lt;endl;
    cout&lt;&lt;"                              2--减法练习                           "&lt;&lt;endl;
    cout&lt;&lt;"                              3--乘法练习                           "&lt;&lt;endl;
    cout&lt;&lt;"                              4--除法练习                           "&lt;&lt;endl;
    cout&lt;&lt;"                              0--退出                               "&lt;&lt;endl;
    cout&lt;&lt;"请选择(0~4):   "&lt;&lt;endl;
    cin>&gt;i;
    switch(i)
    {
    case '1':
        cout<&lt;"您选择了加法练习:  "&lt;&lt;endl;
        addition();
        break;
     
    case '2':
        cout&lt;&lt;"您选择了减法练习:  "&lt;&lt;endl;
        subtract();
        break;
    case '3':
        cout&lt;&lt;"您选择了乘法练习: "&lt;&lt;endl;
        multiplication();
        break;
    case '4':
        cout&lt;&lt;"您选择了除法练习(结果保留两位小数):"&lt;&lt;endl;
        division();
        break;
    case '0':
            exit(1);
    }
        
    }
    return ;
    
}
void addition()
{
    int a,b,c,d;
    char s,y[10];
    do{
        srand(time(NULL));
        a=rand()%100+1;
        b=rand()%100+1;
        c=a+b;
        cout&lt;&lt;a&lt;&lt;"+"&lt;&lt;b&lt;&lt;"="&lt;&lt;endl;
        cin>&gt;y;
        d=atoi(y);
        if(d==c)
        {
            cout<&lt;"正确,你真聪明!";
        }
        else
            if(d!=c)
            {
                cout&lt;&lt;"不正确,再想一想,你还有两次机会!"&lt;&lt;endl;
                cin>&gt;y;
                d=atoi(y);
                if(d==c)
                {
                    cout<&lt;"正确,继续保持!"&lt;&lt;endl;
                }
                else
                    if(d!=c)
                    {
                        cout&lt;&lt;"不正确,不要着急,要把握住最后一次机会!"&lt;&lt;endl;
                        cin>&gt;y;
                        d=atoi(y);
                        if(d==c)
                        {
                            cout<&lt;"正确,加油!"&lt;&lt;endl;
                        }
                        else
                            if(d!=c)
                            {
                                cout&lt;&lt;"不正确,要加强练习喔!"&lt;&lt;endl;
                                cout&lt;&lt;"正确答案:"&lt;&lt;c&lt;&lt;endl;
                            }
                    }
            }
            cout&lt;&lt;"是否继续练习(是y/n否)"&lt;&lt;endl;
            cin>&gt;s;
            if(s=='n'||s=='N')
                return;
    }
    while(s!='n'||s!='N');
}
void subtract()
{
    int a,b,c,d;
    char s,y[10];
    do{
        srand(time(NULL));
        a=rand()%100+1;
        b=rand()%100+1;
        /*if(a<b)
        {
            double t;
            t=a;
            a=b;
            b=t;
        }*/
        c=a-b;
        cout&lt;&lt;a&lt;&lt;"-"&lt;&lt;b&lt;&lt;"="&lt;&lt;endl;
        cin>&gt;y;
        d=atoi(y);
        if(d==c)
        {
            cout<&lt;"正确,你真聪明!";
        }
        else
            if(d!=c)
            {
                cout&lt;&lt;"不正确,再想一想,你还有两次机会!"&lt;&lt;endl;
                cin>&gt;y;
                d=atoi(y);
                if(d==c)
                {
                    cout<&lt;"正确,继续保持!"&lt;&lt;endl;
                }
                else
                    if(d!=c)
                    {
                        cout&lt;&lt;"不正确,不要着急,要把握住最后一次机会!"&lt;&lt;endl;
                        cin>&gt;y;
                        d=atoi(y);
                        if(d==c)
                        {
                            cout<&lt;"正确,加油!"&lt;&lt;endl;
                        }
                        else
                            if(d!=c)
                            {
                                cout&lt;&lt;"不正确,要加强练习喔!"&lt;&lt;endl;
                                cout&lt;&lt;"正确答案:"&lt;&lt;c&lt;&lt;endl;
                            }
                    }
            }
            cout&lt;&lt;"是否继续练习(是y/n否)"&lt;&lt;endl;
            cin>&gt;s;
            if(s=='n'||s=='N')
                return;
    }
    while(s!='n'||s!='N');
}
void multiplication()
{
    int a,b,c,d;
    char s,y[10];
    do{
        srand(time(NULL));
        a=rand()%100+1;
        b=rand()%100+1;
        c=a*b;
        cout<&lt;a&lt;&lt;"*"&lt;&lt;b&lt;&lt;"="&lt;&lt;endl;
        cin>&gt;y;
        d=atoi(y);
        if(d==c)
        {
            cout<&lt;"正确,你真聪明!";
        }
        else
            if(d!=c)
            {
                cout&lt;&lt;"不正确,再想一想,你还有两次机会!"&lt;&lt;endl;
                cin>&gt;y;
                d=atoi(y);
                if(d==c)
                {
                    cout<&lt;"正确,继续保持!"&lt;&lt;endl;
                }
                else
                    if(d!=c)
                    {
                        cout&lt;&lt;"不正确,不要着急,要把握住最后一次机会!"&lt;&lt;endl;
                        cin>&gt;y;    
                        d=atoi(y);
                        if(d==c)
                        {
                            cout<&lt;"正确,加油!"&lt;&lt;endl;
                        }
                        else
                            if(d!=c)
                            {
                                cout&lt;&lt;"不正确,要加强练习喔!"&lt;&lt;endl;
                                cout&lt;&lt;"正确答案:"&lt;&lt;c&lt;&lt;endl;
                            }
                    }
            }
            cout&lt;&lt;"是否继续练习(是y/n否)"&lt;&lt;endl;
            cin>&gt;s;
            if(s=='n'||s=='N')
                return ;
    }
    while(s!='n'||s!='N');
}
void division()
{
    double a,b,c,d;
    char s,y[10];
    do{
        do
        {
            srand(time(NULL));
            a=rand()%100+0;
            b=rand()%100+1;
            c=a/b;
        }while(b==0);
        cout<&lt;a&lt;&lt;"/"&lt;&lt;b&lt;&lt;"="&lt;&lt;endl;
        cin>&gt;y;
        d=atof(y);
        c=int (c*100.0+0.5)/100.0;
        if(d==c)
        {
            cout<&lt;"正确,你真聪明!";
        }
        else
            if(d!=c)
            {
                cout&lt;&lt;"不正确,再想一想,你还有两次机会!"&lt;&lt;endl;
                cin>&gt;y;
                d=atof(y);
                if(d==c)
                {
                    cout<&lt;"正确,继续保持!"&lt;&lt;endl;
                }
                else
                    if(d!=c)
                    {
                        cout&lt;&lt;"不正确,不要着急,要把握住最后一次机会!"&lt;&lt;endl;
                        cin>&gt;y;
                        d=atof(y);
                        if(d==c)
                        {
                            cout<&lt;"正确,加油!"&lt;&lt;endl;
                        }
                        else
                            if(d!=c)
                            {
                                cout&lt;&lt;"不正确,要加强练习喔!"&lt;&lt;endl;
                                cout&lt;&lt;"正确答案:"&lt;&lt;c&lt;&lt;endl;
                            }
                    }
            }
            cout&lt;&lt;"是否继续练习(是y/n否)"&lt;&lt;endl;
            cin>&gt;s;
            if(s=='n'||s=='N')
                return;
    }
    while(s!='n'||s!='N');
}

默认分类 | 阅读 3966 次
文章评论,共1条
小方bmm
2008-11-05 13:54
1
看了你的程序觉得不一般!可否帮我一个忙,也是c语言程序设计!题目是小学生四则运算测试系统<br />
系统的基本功能:<br />
实现对小学生简单的双目四则运算的测试,包括<br />
①&nbsp;&nbsp;&nbsp;&nbsp;登录:用户在进行测试前,需按用户名进行登录(查找是否已有该用户)。<br />
②&nbsp;&nbsp;&nbsp;&nbsp;注册:增加新用户。从键盘上增加用户信息,包括用户名(注意用户名不能已经存在)、登录密码。<br />
③&nbsp;&nbsp;&nbsp;&nbsp;修改密码:用户在登录后,可以对其密码进行修改。<br />
④&nbsp;&nbsp;&nbsp;&nbsp;显示历史:用户在登录后,可以将其测试成绩显示出来。<br />
⑤&nbsp;&nbsp;&nbsp;&nbsp;测试:用户在登录后方可进行测试。系统随机给出两个操作数的四则运算题目,根据用户填入的答案来给出正误信息,并累计成绩。<br />
⑥&nbsp;&nbsp;&nbsp;&nbsp;读文件:把文件中的信息读到相关的数据结构中。<br />
⑦&nbsp;&nbsp;&nbsp;&nbsp;写文件:将用户信息保存到文件中。<br />
b.系统的设计要求:<br />
①&nbsp;&nbsp;&nbsp;&nbsp;数据结构可以使用结构体数组实现,用户信息包括:用户名、登录密码、做对题目数,总的题目数(亦可增加题目内容)。 <br />
②&nbsp;&nbsp;&nbsp;&nbsp;上述功能是简单的测试,学生可增加其难度和灵活性,需编写若干函数来实现相应的功能模块。<br />
③&nbsp;&nbsp;&nbsp;&nbsp;对于系统运行时,要求有相应的菜单,可用各种方法实现菜单选择。<br />
④&nbsp;&nbsp;&nbsp;&nbsp;在设计时,需考虑输入的容错性、用户界面的友好。<br />
<br />
一、&nbsp;&nbsp;&nbsp;&nbsp;课设要求<br />
1)选题要求:按学号%3+1选择相应的题号,换题者不记成绩。<br />
2)任务完成要求:至少完成任务书中的基本功能,不得互相抄袭,要各有特色。<br />
3)纪律要求:严格按进度表完成课程设计,不得旷课、玩游戏。<br />
4)课程设计报告要求: <br />
课程设计报告装订顺序:封面、任务书、目录、正文、评分、附录(A4大小的图纸及程序清单)。&nbsp;&nbsp;<br />
正文的格式:一级标题用3号黑体,二级标题用四号宋体加粗,正文用小四号宋体;行距为22磅。<br />
设计报告需在5000字以上(不含程序源代码),应包括以下部分的内容:<br />
&#61548;&nbsp;&nbsp;&nbsp;&nbsp;设计总体思路<br />
&#61548;&nbsp;&nbsp;&nbsp;&nbsp;基本功能模块图<br />
&#61548;&nbsp;&nbsp;&nbsp;&nbsp;主程序及各个模块说明(不仅有功能的详细描述,用户使用说明,还应把采&nbsp;&nbsp;用的技巧写出来,对一些必要的代码进行说明。)<br />
&#61548;&nbsp;&nbsp;&nbsp;&nbsp;程序流程图(对于较复杂的模块而言)<br />
&#61548;&nbsp;&nbsp;&nbsp;&nbsp;程序调试<br />
&#61548;&nbsp;&nbsp;&nbsp;&nbsp;总结与体会<br />
&#61548;&nbsp;&nbsp;&nbsp;&nbsp;程序清单(列在附录中,要求对程序写出必要的注释))<br />
5)上机演示要求:在演示时,要求有一定量的数据进行测试。
游客请输入验证码
浏览3966次
文章分类
文章归档