我试图让这段代码验证用户输入的值.如果我使用gets(),但是当我将其更改为fgets()时它会停止工作.我希望它继续循环,直到用户输入至少1个字符但少于25个字符串的字符串.如果在我的代码中不明显,我是编程新手.谢谢!
int main(void)
{
char input[25], inputNew[25];
int i;
int x;
int y;
do
{
printf("Please enter a string less then 25 characters!\n");
fgets(input, sizeof(input), stdin);
y = strlen(input);
}
while(y>25 || y<=0);
for (i = 0; i <= strlen(input); i++)
{
inputNew[i] = toupper(input[i]);
for (x = 1; x <= strlen(input); x+=2)
{
inputNew[x] = tolower(input[x]);
}
}
printf("The new value is: %s.\n", inputNew);
return 0;
}
Run Code Online (Sandbox Code Playgroud)