黑马程序员技术交流社区
标题: scanf这个函数,可以实现回车一次进入一次循环 [打印本页]
作者: hero200521296bj 时间: 2015-3-13 16:10
标题: scanf这个函数,可以实现回车一次进入一次循环
随机产生一个数字,直到产生6。
int i = 0;
char c;
printf("请输入回车,开始摇号");
for (int rand = 0; rand != 6;) {
scanf("%c",&c);
rand = arc4random()%6 +1;
i++;
if (rand == 6) {
printf("第%d次,终于摇到%d了,恭喜您!",i,rand);
break;
}
printf("第%d次,结果%d,未要摇到6,请再输入回车摇",i,rand);
}
printf("\n");
本人还是一个初学者,发现for循环开始后就是电脑自动运行,这几天琢磨怎么能实现手动控制。发现scanf可以实现这种打一次回车,才出一次结果。直到出现某个值,就跳出循环。小聪明,本人初来乍到,大神勿喷。哈哈。为了赚技术分的啊。
运行结果如下
请输入回车,开始摇号
第1次,结果3,未要摇到6,请再输入回车摇
第2次,结果2,未要摇到6,请再输入回车摇
第3次,结果1,未要摇到6,请再输入回车摇
第4次,结果5,未要摇到6,请再输入回车摇
第5次,结果3,未要摇到6,请再输入回车摇
第6次,结果2,未要摇到6,请再输入回车摇
第7次,结果4,未要摇到6,请再输入回车摇
第8次,结果5,未要摇到6,请再输入回车摇
第9次,结果1,未要摇到6,请再输入回车摇
第10次,结果5,未要摇到6,请再输入回车摇
第11次,结果5,未要摇到6,请再输入回车摇
第12次,结果5,未要摇到6,请再输入回车摇
第13次,结果4,未要摇到6,请再输入回车摇
第14次,结果4,未要摇到6,请再输入回车摇
第15次,终于摇到6了,恭喜您!
作者: yyx1992 时间: 2015-3-13 20:45
楼主差矣,scanf 输入结束的标志就是回车,意思就是不管你输入了什么只要一回车,系统就会认为你输入结束了,就会继续scanf之后的代码,其实while循环此处最合适,个人见解,仅供参考
作者: hero200521296bj 时间: 2015-3-13 20:49
恩,就是利用这个感觉上,每次出结果都需要打一次回车。呵呵。这几天看视频,都看疯了,娱乐一下了。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |