/*接收输入的一个字符串(无空格、制表符等),
将字符串中的小写字母转换为大写字母,输出转换后的字符串,最后必须输出回车。
最长输入20个有效字符(不包括回车)。
例如输入:apple 输出:APPLE
如果字符串中包含了其他字符,均不进行转换,只转换小写字母为大写字母。
如输入:test2test* 输出:TEST2TEST* */
#include<stdio.h>
#include<string.h>
int main(void)
{
int i, n;
char str1[20];
char str2[20];
scanf_s("%s", str1);
i = strlen(str1);
for(n = i; i >= 0; n--)
{if (str1[i]>='a' && str1[i] <= 'z')
str2[n] = str1[i] - 'a' + 'A';
else
str2[n] = str1[i];
i--;
}
printf("%s", str2);
return 0;
}
而且用vs2019显示没有问题,但输入后一直没有输出结果。