张云朵儿 2022-08-21 15:30 采纳率: 66.7%
浏览 23
已结题

初学者关于dowhile的问题

srand(time(0));
int number
rand()%100+1;
int count
= 0;
int a
= 0:
printfC" 我已经想好了一个1到100之间的数。
〝,
do {
printf("请猜这个1到100之间数:");
scanf("%d"
y
&a);
count ++;
if (a >
number ) {
printf("你猜的数大了。
'");
}
else if ( a < number ) f
printfC"你猜的数小了。");
}
} while (a != number);
printfc"太好了,你用了%d次就猜到了答案。\n",
count);

最后一个print之前的条件按理来说是if(a=number)但是代码里没有体现出来,请问是怎样体现出来的呢?

  • 写回答

1条回答 默认 最新

  • 林晓风 2022-08-21 15:33
    关注

    因为while (a != number);这是一个循环,当满足a != number时,会一直执行循环体do里面的内容,
    当a == number,循环结束,就继续往下执行,而while 下面一行就是最后一个print。
    所以,当a == number时,执行最后一个print。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 8月29日
  • 已采纳回答 8月21日
  • 创建了问题 8月21日

悬赏问题

  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效