随机产生一个数字,直到产生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了,恭喜您!
|