鱼C论坛

 找回密码
 立即注册
查看: 2039|回复: 8

[已解决]do while 语句循环

[复制链接]
发表于 2019-5-21 00:07:21 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
看来视频想用do while循环语句做个输入密码的小代码,可运行后直接出的
  1. 请输入密码;0
  2. 欢迎回家

  3. --------------------------------
  4. Process exited after 0.03482 seconds with return value 0
  5. [color=DarkGreen][b]请按任意键继续. . .
复制代码

虽然隐约知道自己错哪了,但就是想不出来了,望大神指点
代码如下[/b]
  1. #include<stdio.h>

  2. int main()
  3. {
  4.         int i ;
  5.         printf("请输入密码;%d\n",i);
  6.         do
  7.         {
  8.                
  9.         }

  10.         while(i==123456) ;
  11.         printf("欢迎回家\n");
  12.        
  13.         return 0;
  14. }
复制代码
最佳答案
2019-5-21 00:18:28
      楼主的代码问题太多了,我已经改好了。
  1. #include <stdio.h>

  2. int main()
  3. {
  4.         int i                                ;
  5.         for(;;) {
  6.                 printf("请输入密码 : ")      ;
  7.                 scanf("%d" , & i)            ;
  8.                 if(i == 123456) {
  9.                         printf("欢迎回家\n") ;
  10.                         break                ;
  11.                 }
  12.                 printf("密码错误!\n\n")     ;
  13.         }
  14. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-5-21 00:18:28 | 显示全部楼层    本楼为最佳答案   
      楼主的代码问题太多了,我已经改好了。
  1. #include <stdio.h>

  2. int main()
  3. {
  4.         int i                                ;
  5.         for(;;) {
  6.                 printf("请输入密码 : ")      ;
  7.                 scanf("%d" , & i)            ;
  8.                 if(i == 123456) {
  9.                         printf("欢迎回家\n") ;
  10.                         break                ;
  11.                 }
  12.                 printf("密码错误!\n\n")     ;
  13.         }
  14. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2019-5-21 00:29:26 | 显示全部楼层
jackz007 发表于 2019-5-21 00:18
楼主的代码问题太多了,我已经改好了。

大佬又是你啊,尴尬,就是我用if语句能琢磨出来,就是先看视频时小甲鱼说,do while语句可以用来判断密码的正误,我才想试一试,
  1. printf("密码错误!\n\n")     ;大佬这里两个\n是啥意思呀
  2. for(;;)  大佬,我刚好看的for循环,括号里两个分号前后不写条件有点迷糊
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-21 00:32:05 | 显示全部楼层
白小木 发表于 2019-5-21 00:29
大佬又是你啊,尴尬,就是我用if语句能琢磨出来,就是先看视频时小甲鱼说,do while语句可以用来判断密码 ...

对了,大佬再帮忙看看这个吧
  1. #include<stdio.h>

  2. int main()
  3. {
  4.         int i,num;
  5.         _Bool flag = 1;//布尔类型,结果出现1就是素数
  6.        
  7.         printf("请输入一个整数:");
  8.         scanf("%d",&num);//接受整数和num
  9.          
  10.          for(i =2;i< num/2;i++)
  11.          {
  12.                  if(num % i ==0 )
  13.                  {
  14.                          flag = 0;
  15.                  }
  16.          }
  17.          if (flag)
  18.          {
  19.                  printf("%d是一个宿数!\n",num);
  20.          }
  21.          else
  22.          {
  23.                  printf("%d不是一个素数!\n",num);
  24.          }
  25.         return 0;
  26. }
复制代码


编译显示
  1. 6        2        F:\所有C语言编程\Dev-Cpp\lianxiC++\判断素数.cpp        [Error] '_Bool' was not declared in this scope
  2. 15        5        F:\所有C语言编程\Dev-Cpp\lianxiC++\判断素数.cpp        [Error] 'flag' was not declared in this scope
复制代码

不是很懂
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-21 00:36:18 | 显示全部楼层
本帖最后由 jackz007 于 2019-5-21 00:38 编辑

把这一句改一下:
  1.         _Bool flag = 1;
复制代码

要改成这样
  1.         bool flag = 1;
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-21 00:38:33 | 显示全部楼层
jackz007 发表于 2019-5-21 00:36
把这一句改一下:

要改成这样

不会改
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-5-21 00:43:25 | 显示全部楼层
jackz007 发表于 2019-5-21 00:36
把这一句改一下:

要改成这样

谢谢你,刚看完视频弹幕,这几个问题都解决了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-5-21 00:48:01 | 显示全部楼层
本帖最后由 jackz007 于 2019-5-21 00:50 编辑
白小木 发表于 2019-5-21 00:29
大佬又是你啊,尴尬,就是我用if语句能琢磨出来,就是先看视频时小甲鱼说,do while语句可以用来判断密码 ...


for(;;) 括号里面有 2 个分号,其中,出现在第一个分号之前的是在开始循环之前需要执行的代码,在这里,可以同时为多个变量赋值,只要在赋值语句之间用逗号隔开就可以了;位于两个分号之间的代码是维持循环继续执行的逻辑表达式,只要这个表达式的值为 true(真),循环就会继续,如果这个表达式缺失了,那就意味着循环没有终点;位于第二个分号后面的代码是每次执行完循环语句块代码后需要执行的代码,也可以在这里同时为多个变量赋值,只要在赋值语句之间使用逗号隔开就可以了。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2019-5-21 01:02:30 | 显示全部楼层
jackz007 发表于 2019-5-21 00:48
for(;;) 括号里面有 2 个分号,其中,出现在第一个分号之前的是在开始循环之前需要执行的代码,在这里 ...

&#127383;,学到了,谢谢大佬,早点休息,晚安睡觉了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-1 17:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表