Lập trình căn bản C: Tách họ, chữ lót, tên từ chuỗi họ tên


Đề bài: Có một chuỗi ký tự với ý nghĩa là họ tên một ai đó. Theo quy ước, từ đầu tiên trong chuỗi là họ, từ cuối cùng là tên, các từ ở giữa họ và tên là chữ lót. Hãy viết chương trình nhận vào một chuỗi họ tên và tách chuỗi thành các phần họ, chữ lót và tên

Đoạn code mẫu để tách các từ dựa vào token

#include <string.h>
#include <stdio.h>

int
main()
{

const
char str[80] = "This is - www.tutorialspoint.com - website";
const
char s[2] = "-";
char
*token;

/* get the first token */

token = strtok(str, s);

/* walk through other tokens */

while
( token != NULL )
{

printf( " %s\n", token );

token = strtok(NULL, s);
}


return
(0);
}


Bài giải:

#include <string.h>
#include <stdio.h>

int
main()
{

char
hoten[80];
printf("nhap ho ten: ");
gets(hoten);
char
*token;
token = strtok(hoten, " ");
int
c=0;
char
mang[5][15];
while
( token != NULL )
{

printf( " %s\n", token );
strcpy(mang[c],token);
c++;
token = strtok(NULL, " ");
}

printf("Ho : %s\n",mang[0]);
printf("Chu lot: ");
for
(int i=1;i<c-1;i++){
printf("%s ",mang[i]);
}

printf("\nTen: %s",mang[c-1]);
return
(0);
}

Bài liên quan

Bài liên quan