【发布时间】:2013-10-15 19:28:13
【问题描述】:
基本上,程序应该将名称拆分为 F 和 L 名称。用户输入他们的名字,或者结合或使用空格(例如 AlexTank 或 Alex Tank)。程序应该读入每个大写字母并用空格分隔字符串。我遇到的问题是我的程序拆分了名称(识别大写字母),但从字符串的新输出中排除了大写字母。
#include <stdio.h>
#include <string.h>
int main()
{
char name[50], first[25], last[25];
char *pch;
char* key = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
// ask user for name
printf("What is your name? ");
scanf("%s", name);
printf("Hello \"%s\" here is your First and Last Name:\n", name);
pch = strtok(name, key);
while (pch != NULL)
{
printf("%s\n", pch);
pch = strtok(NULL, key );
}
return 0;
}
【问题讨论】:
-
您发现的问题是什么?
-
你是正则表达式的粉丝,想不出别的了吗?