C++编程语言 200
1.题目要求:编写一个针对小学一年级学生的100以内加减法测试程序。程序实现的功能要求如下:(1)测试之前要求学生输入学号和姓名;(20分)(2)每组测试包含10道测试题...
1.题目要求:
编写一个针对小学一年级学生的100以内加减法测试程序。程序实现的功能要求如下:
(1)测试之前要求学生输入学号和姓名;(20分)
(2)每组测试包含10道测试题,其中出现加法题目的概率为70%,出现减法题目的概率为
30%。减法题目不允许出现减数大于被减数的情况。学生答完一题后,给出下一题,直到完
成10个题目,本轮测试结束。(40分)
(3)评分标准:答对一题得10分,答错不得分。(20分)
(4)学生测试结束时,给出学生本次测试结果,并将测试成绩(包括学号、姓名、成绩)
写入名称为“score.txt”的文件中存储。(20分) 展开
编写一个针对小学一年级学生的100以内加减法测试程序。程序实现的功能要求如下:
(1)测试之前要求学生输入学号和姓名;(20分)
(2)每组测试包含10道测试题,其中出现加法题目的概率为70%,出现减法题目的概率为
30%。减法题目不允许出现减数大于被减数的情况。学生答完一题后,给出下一题,直到完
成10个题目,本轮测试结束。(40分)
(3)评分标准:答对一题得10分,答错不得分。(20分)
(4)学生测试结束时,给出学生本次测试结果,并将测试成绩(包括学号、姓名、成绩)
写入名称为“score.txt”的文件中存储。(20分) 展开
2个回答
展开全部
#include<iostream>
#include <cmath>
#include <stdlib.h>
#include <time.h>
#include <fstream>
using namespace std;
int main(int argc, char *argv[])
{
srand((unsigned)time(NULL));
char name[20],symbol;
int num,sum=0,sym,x,y,result_in,result;
cout<<"input name and num:";
cin>>name;
cin>>num;
cout<<endl;
cout<<"let's begin test:"<<endl;
for(int i=0;i<10;i++)
{
sym = rand()%10;
if(sym>6)
symbol = '-';
else
symbol = '+';
x = rand()%100+1;
y = rand()%100+1;
do
{
x = rand()%100+1;
y = rand()%100+1;
}while(x<y&&symbol == '-');
if(symbol == '-')
result = x-y;
else
result = x+y;
cout<<x<<symbol<<y<<" = ";
cin>>result_in;
if(result == result_in)
{
cout<<" correct!"<<endl;
sum+=10;
}
else
cout<<" error!"<<endl;
}
cout<<"your total socre is "<<sum<<endl;
ofstream fout("D:\score.txt");
fout << "Number: " << num << "\n";
fout << "Name: " << name<<"\n";
fout << "Score: " << sum << "\n";
fout << flush; fout.close();
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int test(int c)
{
int a, b;
//int c;
int answer;
while(true)
{
a=rand()*100;
b=rand()*100;
if(a+b<=100 && a-b>=0)
break;
}
char op;
op=(c==0)?'+':'-';
cout<<a<<" "<<op<<" "<<b<<" = ";
cin>>answer;
int result;
if(op=='+') result=a+b;
if(op=='-') result==a-b;
if(answer==result)
return 10;
else
return 0;
}
int main()
{
int num;
int score=0;
string name;
cout<<"请输入学号:";cin>>num;
cout<<"请输入姓名:";cin<<name;
int c;
int add=0;
int sub=0;
for(int i=0;i<10;i++)
{
c=rand()*2;
if(c==0) add++;
if(add>7)
c=1;
if(c==1) sub++;
if(sub>3)
c=0;
score=score+test(c);
}
ofstream f;
f.open("score.txt",ios::out);
if(!f) {cerr<<"文件打开失败";exit(0);}
f<<"学号\t姓名\t成绩\n";
f<<num<<"\t"<<name<<"\t"<<score<<endl;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询