c語言漢字拼音
發布時間: 2024-03-23 08:46:21
① 在c語言中我想對漢字字元串按拼音進行排序,可以直接利用strcmp函數來進行排序嗎
ansi GB2312里一級漢字是按拼音排序的,其他的漢字按部首/筆劃排序。所以能按拼音排序的漢字只有3000多個,直接用strcmp()比較就可以了。但是如果用的是Unicode,由於Unicode里的漢字按筆劃順序排序,所以沒有辦法實現按拼音排序。
代碼如下:
#include<stdio.h>#include<string.h>
intmain()
{
chara[5]="王華",b[5]="張麗",c[5]="李強";
chart[5];
if(strcmp(a,b)>0)
{
strcpy(t,a);
strcpy(a,b);
strcpy(b,t);
}
if(strcmp(a,c)>0)
{
strcpy(t,a);
strcpy(a,c);
strcpy(c,t);
}
if(strcmp(b,c)>0)
{
strcpy(t,b);
strcpy(b,c);
strcpy(c,t);
}
printf("%s %s %s ",a,b,c);
return0;
}
(1)c語言漢字拼音擴展閱讀
C語言 strcmp() 函數用於對兩個字元串進行比較(區分大小寫)。
頭文件:string.h
語法/原型:int strcmp(const char* stri1,const char* str2);
參數 str1 和 str2 是參與比較的兩個字元串。
strcmp() 會根據 ASCII 編碼依次比較 str1 和 str2 的每一個字元,直到出現不到的字元,或者到達字元串末尾(遇見 )。
返回值:
如果返回值 < 0,則表示 str1 小於 str2。
如果返回值 > 0,則表示 str2 小於 str1。
如果返回值 = 0,則表示 str1 等於 str2。
熱點內容