新人求助//为什么有时候运行不到十次就不显示了?

kess lin 2019-03-08 04:34:00
#include<iostream> #include<cmath> #include<cstdlib> #include<ctime> using namespace std; int main() { srand(time(0)); int i,j,k; j=k=0; for(i=0;i<10;i++) { int a=rand()%10; int b=rand()%10; int op=(rand()%4)+1 ; int answer; switch(op) { case 1: op='+'; answer = a+b; break; case 2: do {int a=rand()%10; int b=rand()%10;} while(a<b); op='-'; answer=a-b; break ; case 3: op='*'; answer=a*b; break; case 4: do {int a=rand()%10; int b=rand()%10;} while(b==0 || a%b!=0); op='/'; answer=a/b; break; } int d; cout<<a<<char(op)<<b<<"="; cin>>d; if(d==answer) { j++; cout<<"Right!" <<endl; } else { k++;cout<<"Not correct!"<<endl;} } cout<<"you got "<<j*10<<" scores, you made "<<k<<" mistakes."; }
...全文
55 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_42307333 2019-03-08
  • 打赏
  • 举报
回复
你这是卡在循环里出不来了 do {int a=rand()%10; int b=rand()%10;} while(b==0 || a%b!=0); 这里的ab是你在循环外面定义的那个ab,所以只要第一次不满足条件,就会一直卡在这里,你可以去了解一下变量的作用域,尽量别用同名变量,新人容易搞混

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧