I've only started coding C. (freshman here, no experience, only basic html)
For some reason, whenever I choose the option 'N', it just creates a new line.
At my second scanf
whenever I change my '%s'
, the result changes.
When I use, "%d"
,after entering a number, it continuously enter "Choose a number between 1-4
". If I use "%c"
,after entering a number, it will skip directly to the loop. Help?
#include <stdio.h>
int main()
{
int n, ok = 0;
char input;
while (ok == 0)
{
printf("Choose a number between 1-4
");
scanf("%d", &n);
switch (n)
{
case 1:
printf("You've chosen number 1");
break;
case 2:
printf("You've chosen number 2");
break;
case 3:
printf("You've chosen number 3");
break;
case 4:
printf("You've chosen number 4");
break;
default:
printf("You have chosen an invalid number");
}
printf("
Input again? (Y/N)
");
scanf("%s", &input);
if (input=='n'||input=='N')
{ok++;}
else if (input=='Y'||input=='y')
{printf("
");}
}
getchar();
getchar();
}
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…