【发布时间】:2014-01-05 03:00:15
【问题描述】:
在我为初学者 C++ 课程做的一项作业中,我应该编写一个程序来测试用户的数学技能。关于这件事我有两个问题:
void addition(){
srand (50);
int result=0;
int points=0;
int counter=0;
int nbr1 = 100 % rand();
int nbr2 = 100 % rand();
cout<<nbr1<<" + "<<nbr2<<" = ";
cin>>result;
if(result == nbr1+nbr2){
cout<<"CORRECT";
points+=10;
return;
}
if(result !=nbr1+nbr2){
counter++;
cout<<"WRONG. TRY AGAIN";
}
if (counter == 1){
points+=5;
}
if (counter == 2){
points+=2;
}
if (counter >= 2){
points=0;
cout<<" WRONG!The anwser is "<<nbr1+nbr2<<endl;
return;
}
(代码中的一个函数)
两个问题:
1) 程序生成的数字总是 110。有没有办法让数字保持随机(不总是 110 :) 并且小于 100?
2) 我怎样才能在一个程序之后继续提问?现在它在用户输入一个值后立即结束:
110 + 110 = 220
CORRECT Program ended with exit code: 0
提前致谢!
【问题讨论】:
-
要将数字保持在 100 以下,您需要
rand() %100;而不是100 % rand();