我是C语言的新手。我试图使用do while循环编写一个简单的程序。该程序应接受整数输入并打印出其平方。然后,它询问用户是否继续。如果输入是“ y”或“ Y”,它将继续进行下一轮,否则将退出循环。除“ y”,“ Y”,“ n”,“ N”之外,还有一个子句用于检查输入。如果是这样,它将重复提示,要求正确输入。
这里是我的代码-
#include <stdio.h>
#include <stdlib.h>
int main()
{
int num;
char choice;
char c;
system("clear");
do{
printf("\nEnter a number: ");
fflush(stdin);
scanf("%d", &num);
printf("Square of %d : %d", num, num*num);
printf("\n\n");
getchar();
do{
printf("Do you want to continue?(y/n): ");
scanf("%c", &choice);
getchar();
if(choice != 'y' || choice != 'Y' || choice != 'n' || choice != 'N'){
printf("\nInvalid Choice !! Press 'Y/y' or 'N/n'!!\n\n");
}
}while(choice != 'y' || choice != 'Y' || choice != 'n' || choice != 'N');
}while(choice == 'y' || choice = 'Y');
getchar();
printf("\n\n");
return 0;
}
choice != 'y' || choice != 'Y'
将始终为true。更改为choice != 'y' && choice != 'Y'