标题:如何用c++基础语言编写一个小学生测试系统
取消只看楼主
home♂boy
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-6-28
结帖率:0
已结贴  问题点数:20 回复次数:2 
如何用c++基础语言编写一个小学生测试系统
用c++语言编写面向小学1~2年级学生,随机选择两个整数和加减法形成算式要求学生解答。
功能要求:
(1)电脑随机出10道题,每题10分,程序结束时显示学生得分;
(2)确保算式没有超出1~2年级的水平,只允许进行50以内的加减法,不允许两数之和或之差超出0~50的范围,负数更是不允许的;
(3)每道题学生有三次机会输入答案,当学生输入错误答案时,提醒学生重新输入,如果三次机会结束则输出正确答案;
(4)对于每道题,学生第一次输入正确答案得10分,第二次输入正确答案得7分,第三次输入正确答案得5分,否则不得分;
(5)总成绩90以上显示“SMART”,80-90显示“GOOD”,70-80显示“OK”,60-70显示“PASS”,60以下“TRY  AGAIN”。
,,,,我刚入门,编写的总是有错误,,,望各位高手指教
搜索更多相关主题的帖子: 正确答案 小学生 加减法 如何 
2016-06-28 23:17
home♂boy
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-6-28
得分:0 
这是我的代码,可以编译,无法运行,,,
#include<iostream>
#include<stdio.h>
char problems[10];
int result[10];
using namespace std;
int main()
{
    int n;
    FILE *fp=fopen("c:\\题库.txt","r");
    fscanf(fp,"%d",&n);
        for(int i=0;i<n;i++)
            fscanf(fp,"%s%d",problems[i],&result[i]);
        fclose(fp);
    int score;
    for(i=1;i<=10;i++){
        int j;int answer;
        cout<<"第"<<i<<"题"<<endl;
        for(int k=1;k<=3;k++)
            cout<<problems[j];
        cin>>answer;
        if(answer==result[j])
            if(k==1)
                score+=10;
            else if(k==2)
                score+=7;
            else if(k==3)
                score+=5;
            else cout<<result[j];
    }

        
    switch((int)score/10){
    case 10:
    case 9:cout<<"smart";break;
    case 8:cout<<"good";break;
    case 7:cout<<"ok";break;
    case 6:cout<<"pass";break;
    case 5:
    case 4:
    case 3:
    case 2:
    case 1:
    case 0:cout<<"try again";break;}
    return 0;
2016-06-28 23:21
home♂boy
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-6-28
得分:0 
回复 4楼 星域
,真的谢谢,学到了不少东西呢
2016-07-31 20:37



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-466477-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.186744 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved