私の課題は、2 種類のループ (For、While、do While) を使用することです。タスクは、ユーザーに 1 から 10 までの数字を入力するように求めることであり、プログラムは 0 からユーザー数までカウントします。また、ユーザーが 1 ~ 10 以外の数字を入力した場合、プログラムはエラー メッセージを表示し、ユーザーに数字の再入力を求めることができなければなりません。正常に動作しています。ただし、範囲内の数値を入力すると、何も実行されないか、0 からその数値まで無限にカウントされ、カウントのループが停止しません。助けてください!
#include <stdio.h>
int main(void)
{
//Variables
int num;
int zero;
//Explains to the user what the program will do
printf("This program will count from 0 to a number you pick.\n\n");
//Asks the user to input a value
printf("Please enter a number (between 1 and 10): \n");
scanf("%d", &num);
//If the correct range was selected by the user
while ( num >= 1 && num <= 10 )
{
for ( zero = 0; zero <= num; zero++ )
{
printf("%d...", zero);
}
}
//If a value outside of the accepted range is entered
while ( num < 1 || num > 10)
{
printf("I'm sorry, that is incorrect.\n");
printf("Please enter a number (between 1 and 10): \n");
scanf("%d", &num);
}
printf("\n\n\n");
return 0;
}