(新手)结束一个程序,偶数或奇数程序
(Newbie) Ending a program, even or odd program
我正在编写一个程序来判断一个数是偶数还是奇数。它会一直询问一个数字,直到用户输入零。
#include <stdio.h>
int main () {
int number = 1;
do{
printf("Number? ");
scanf("%d", &number)
if(number % 2 != 0){
printf("Odd\n");
}
else{
printf("Even\n");
}
}while(number != 0);
return 0;
}
但是我不知道如何在我键入零而不输出“偶数”时结束程序。非常感谢您的帮助,因为我被困在这个问题上并且不太确定如何前进。
您可以将 else
更改为 else if
并在打印 Even
之前检查数字是否为 0
。
只需将条件语句 if(number != 0)
添加到您的 else
块:
#include <stdio.h>
int main () {
int number = 1;
do{
printf("Number? ");
scanf("%d", &number)
if(number % 2 != 0){
printf("Odd\n");
}
else if(number != 0){
printf("Even\n");
}
}while(number != 0);
return 0;
}
#include <stdio.h>
int main () {
int number = 1;
do{
printf("Number? ");
scanf("%d", &number)
if (number == 0)
{
printf("You Entered 0 to quit\n");
break; // Exit out of the Do-While Loop immediately
}
if(number % 2 != 0){
printf("Odd\n");
}
else{
printf("Even\n");
}
}while(number != 0);
return 0;
}
您可以简单地在 return 上或直接在 return 0
上使用 exit()
函数。
#include <stdio.h>
int main () {
int number = 1;
do{
printf("Number? ");
scanf("%d", &number)
if (number == 0)
return 0;
if(number % 2 != 0){
printf("Odd\n");
}
else{
printf("Even\n");
}
}while(number != 0);
return 0;
}
在这种情况下,最好使用无限循环。
例如
#include <stdio.h>
int main(void)
{
while ( 1 )
{
printf( "Enter a number (0 - exit): " );
int number;
if ( scanf( "%d", &number ) != 1 || number == 0 ) break;
printf( "The number %d is %s.\n", number, number % 2 == 0 ? "even" : "odd" );
}
return 0;
}
程序输出可能看起来像
Enter a number (0 - exit): 10
The number 10 is even.
Enter a number (0 - exit): 11
The number 11 is odd.
Enter a number (0 - exit): 0
您还可以在程序中包含 header <stdbool.h>
#include <stdbool.h>
并重写 while 语句,如
while ( true )
{
// ...
}
我正在编写一个程序来判断一个数是偶数还是奇数。它会一直询问一个数字,直到用户输入零。
#include <stdio.h>
int main () {
int number = 1;
do{
printf("Number? ");
scanf("%d", &number)
if(number % 2 != 0){
printf("Odd\n");
}
else{
printf("Even\n");
}
}while(number != 0);
return 0;
}
但是我不知道如何在我键入零而不输出“偶数”时结束程序。非常感谢您的帮助,因为我被困在这个问题上并且不太确定如何前进。
您可以将 else
更改为 else if
并在打印 Even
之前检查数字是否为 0
。
只需将条件语句 if(number != 0)
添加到您的 else
块:
#include <stdio.h>
int main () {
int number = 1;
do{
printf("Number? ");
scanf("%d", &number)
if(number % 2 != 0){
printf("Odd\n");
}
else if(number != 0){
printf("Even\n");
}
}while(number != 0);
return 0;
}
#include <stdio.h>
int main () {
int number = 1;
do{
printf("Number? ");
scanf("%d", &number)
if (number == 0)
{
printf("You Entered 0 to quit\n");
break; // Exit out of the Do-While Loop immediately
}
if(number % 2 != 0){
printf("Odd\n");
}
else{
printf("Even\n");
}
}while(number != 0);
return 0;
}
您可以简单地在 return 上或直接在 return 0
上使用 exit()
函数。
#include <stdio.h>
int main () {
int number = 1;
do{
printf("Number? ");
scanf("%d", &number)
if (number == 0)
return 0;
if(number % 2 != 0){
printf("Odd\n");
}
else{
printf("Even\n");
}
}while(number != 0);
return 0;
}
在这种情况下,最好使用无限循环。
例如
#include <stdio.h>
int main(void)
{
while ( 1 )
{
printf( "Enter a number (0 - exit): " );
int number;
if ( scanf( "%d", &number ) != 1 || number == 0 ) break;
printf( "The number %d is %s.\n", number, number % 2 == 0 ? "even" : "odd" );
}
return 0;
}
程序输出可能看起来像
Enter a number (0 - exit): 10
The number 10 is even.
Enter a number (0 - exit): 11
The number 11 is odd.
Enter a number (0 - exit): 0
您还可以在程序中包含 header <stdbool.h>
#include <stdbool.h>
并重写 while 语句,如
while ( true )
{
// ...
}