#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main(void)
{
printf("print your full name: ");
char name[50];
scanf("%[^\n]s", name);
printf("%s %c", name, toupper(name[0]));
for(int i = 1; i < strlen(name); i++)
{
if(name[i] == ' ')
{
printf("%c", name[i++]);
}
}
printf("\n");
}
字符串
这个程序必须打印某人的姓名首字母,但它没有。我真的不知道为什么。它只打印第一个字母。
1条答案
按热度按时间gg58donl1#
您使用
i
的后增量,因此它会导致打印一个空格。相反,使用pre-increment来打印空格后的字符 *。示例如下:
字符串