Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在C语言的循环或IF语句中一次重复一次?_C++_C - Fatal编程技术网

C++ 如何在C语言的循环或IF语句中一次重复一次?

C++ 如何在C语言的循环或IF语句中一次重复一次?,c++,c,C++,C,我正在C语言编程中做一个关于WHILE循环、FOR循环或IF语句的赋值。我尝试过各种方法,但都失败了。我需要有人帮我解决这个问题。 我想重复一个表达式,直到得到一个满足前两个条件之一的数字。 代码如下所示: #include<stdio.h> #include<string.h> #include<stdlib.h> #include<conio.h> int main() { int function; printf("Ple

我正在C语言编程中做一个关于WHILE循环、FOR循环或IF语句的赋值。我尝试过各种方法,但都失败了。我需要有人帮我解决这个问题。 我想重复一个表达式,直到得到一个满足前两个条件之一的数字。 代码如下所示:

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<conio.h>

int main()
{
    int function;

    printf("Please choose a function:\n>>");
    scanf("%d",&function);
    printf("\n");
    if(function==1)
    {
        system("cls");
        printf("Nice");
    }
    else if(function==2)
    {
        printf("You chose to exit.\n\n");
        return 0;
    }
    else if(function>2)
    {
        printf("Error! Please try again.\n\n");
    }
    else;
    return 0;
}

有人有办法解决这个问题吗?无论我是否必须将if语句更改为FOR循环或WHILE循环,只要结果与我上面提到的一样。

将以下内容放入循环中

while(1)
{
    printf("Please choose a function:\n>>");
    scanf("%d",&function);
    printf("\n");
    if(function==1)
    {
        system("cls");
        printf("Nice");
        break;
    }
    else if(function==2)
    {
        printf("You chose to exit.\n\n");
        return 0;
    }
    else if(function>2)
    {
        printf("Error! Please try again.\n\n");
    }
}

将以下内容放入一个循环中

while(1)
{
    printf("Please choose a function:\n>>");
    scanf("%d",&function);
    printf("\n");
    if(function==1)
    {
        system("cls");
        printf("Nice");
        break;
    }
    else if(function==2)
    {
        printf("You chose to exit.\n\n");
        return 0;
    }
    else if(function>2)
    {
        printf("Error! Please try again.\n\n");
    }
}

尝试使用while循环和switch语句

诸如此类(不确定是否符合,只是想告诉你我的意思):


尝试使用while循环和switch语句

诸如此类(不确定是否符合,只是想告诉你我的意思):

使用这个可以帮助你

for(i=1;i<10;i++)
{
printf("Please choose a function:\n>>");
scanf("%d",&function);
printf("\n");
if(function==1)
{
    system("cls");
    printf("Nice");
}
else if(function==2)
{
    printf("You chose to exit.\n\n");
    return 0;
}
else if(function>2)
{
    printf("Error! Please try again.\n\n");
}
}
(i=1;i2)的

{
printf(“错误!请重试。\n\n”);
}
}
你可以根据自己的要求设置任何数字。我在for循环中使用了10。您可以根据自己的要求使用

使用本手册可能会对您有所帮助

for(i=1;i<10;i++)
{
printf("Please choose a function:\n>>");
scanf("%d",&function);
printf("\n");
if(function==1)
{
    system("cls");
    printf("Nice");
}
else if(function==2)
{
    printf("You chose to exit.\n\n");
    return 0;
}
else if(function>2)
{
    printf("Error! Please try again.\n\n");
}
}
(i=1;i2)的

{
printf(“错误!请重试。\n\n”);
}
}

你可以根据自己的要求设置任何数字。我在for循环中使用了10。您可以根据您的要求使用

假设您被允许使用多个
,而
/
用于
/
如果
,混合使用
如何<代码>while
if

int function;
do {
    while (scanf("Please choose a function:\n>>%d", &function) != 1)
        ;
    printf("\n");
    if(function==1) {
        system("cls");
        printf("Nice");
    }
    else if(function>2) {
        printf("Error! Please try again.\n\n");
    }
} while (function != 2);
printf("You chose to exit.\n\n");
return 0;

假设允许您使用多个
,而
/
用于
/
if
,那么混合使用
do
如何<代码>while
if

int function;
do {
    while (scanf("Please choose a function:\n>>%d", &function) != 1)
        ;
    printf("\n");
    if(function==1) {
        system("cls");
        printf("Nice");
    }
    else if(function>2) {
        printf("Error! Please try again.\n\n");
    }
} while (function != 2);
printf("You chose to exit.\n\n");
return 0;

use可以使用do-while循环

int main()

int function;
do {
  printf("Please choose a function:\n>>");
  scanf("%d",&function);
  printf("\n");
  if(function==1) {
      system("cls");
      printf("Nice");
  }
  else if(function==2)  {
      printf("You chose to exit.\n\n");
      return 0;
  }
  else  {
      printf("Error! Please try again.\n\n");
  }
} while (function > 2)
return 0;

}use可以使用do-while循环

int main()

int function;
do {
  printf("Please choose a function:\n>>");
  scanf("%d",&function);
  printf("\n");
  if(function==1) {
      system("cls");
      printf("Nice");
  }
  else if(function==2)  {
      printf("You chose to exit.\n\n");
      return 0;
  }
  else  {
      printf("Error! Please try again.\n\n");
  }
} while (function > 2)
return 0;


}/P>你也应该考虑-1,SCANF的返回值。当然,你实际上想要重复的部分是调用<代码> SCANF。否则,<代码>函数< /代码>的值永远不会改变。当你开始尝试最简单的问题时。尝试编写一个只接受退出选项的程序。如果你先考虑较小的任务,这是有帮助的。实际上我已经做了,但是现在我面临的问题是在我的子程序中添加东西,这就是我需要帮助的地方。你也应该考虑——1,以及scanf的返回值。当然,您真正想要重复的部分是调用

scanf
,否则
函数的值将永远不会改变?当您开始时,请先尝试最简单的问题。尝试编写一个只接受退出选项的程序。如果你先考虑较小的任务,这会有所帮助。实际上我已经做了,但现在我在子程序中添加内容时遇到了问题,这就是我需要帮助的地方。我想你需要“休息一下”在“printf(“Nice”);”之后行。或者使用
while(function>2)
而不是
while(1)
该要求是一个无限循环,我认为只要2不是chosenThanks uba,但实际上我计划在零件内部添加另一个函数if(function==1),它不会重复整个主函数。else if(function>2)部分应该是我的子函数的一部分,这是我想重复的唯一部分,介意在那里给我一些帮助吗?已编辑。我想你需要休息一下在“printf(“Nice”);”之后行。或者使用
while(function>2)
而不是
while(1)
该要求是一个无限循环,我认为只要2不是chosenThanks uba,但实际上我计划在零件内部添加另一个函数if(function==1),它不会重复整个主函数。else if(function>2)部分应该是我的子函数的一部分,这是我想重复的唯一部分,介意在那里给我一些帮助吗?已编辑。现在将按要求工作。
while(function!=2)
也许?但另一方面,
函数==2
被循环中的
返回0
覆盖,因此(;;)
在开始时的
在这个特殊情况下会更好…我希望printf(“错误”)一次运行一次,直到我点击数字2或数字1,而不是结束程序,介意稍微修改一下你的代码让我理解一下吗?
while(function!=2)
也许?但另一方面,
函数==2
被循环中的
返回0
覆盖,因此(;;)
在开始时的
在这个特殊情况下会更好…我希望printf(“错误”)一次运行一次,直到我点击数字2或数字1,而不是结束程序,介意让我理解一下你的代码吗?我想他想要一个无限循环,因为他显式地使用了
while(1)
,并且有一个退出策略…@Saccha他在哪里使用了while(1)?嗯。。。我想我搞错了什么。。。和一个安韦斯夫妇在一起。很抱歉你说得对!!我的错!我猜他想要一个无限循环,因为他显式地使用了
while(1)
,并且有一个退出策略…@Saccha他在哪里使用了while(1)?嗯。。。我想我搞错了什么。。。和一个安韦斯夫妇在一起。很抱歉你说得对!!我的错!如果我想让表达式printf(“Error”)循环直到得到数字1或2,是否需要在表达式printf(“Error”)后加上break?我不确定最后一个例子是否需要
break
。我只是把它放在每一端,所以如果我附加另一个案例,即使只是为了测试,我也不会得到奇怪的结果,因为它丢失了。如果我想让它循环直到得到数字1或2,我需要在表达式printf(“Error”)后加上break吗?我不确定最后一个案例是否需要
break
。我只是把它放在每一端,所以如果我附加另一个案例,即使只是为了测试,我也不会得到奇怪的结果,因为它丢失了。这段代码相当复杂。我只理解do{…}while()部分;但是我不理解它下面的部分和if(函数>2)的其他部分。什么