我正在尝试将第一个单词提取到字符串中并将其用作字符



在这里,我尝试输入名字和姓氏作为"名字姓氏"。 我想将输出作为"姓氏,FN",其中 FN 是名字的第一个字母。

示例:输入="詹姆斯·加西亚";输出="加西亚,J.">

请在我的代码中找到错误。

#include <stdio.h>
int main () {
char fn[20],ln[20];
printf("Enter a first name and a last name:");
scanf("%c %s",&fn,&ln);
printf("%s, %c.",ln,fn);

return(0);
}

你想要这个:

printf("Enter a first name and a last name:");
scanf("%s %s", fn, ln);        // you are reading two strings,
// not one char and one string
printf("%s, %c.", ln, fn[0]);  // you print one string and one char
// not two chars

免责声明:这是过于简化的代码,为了简洁起见,不进行任何错误检查。

最新更新