導航:首頁 > 源碼編譯 > c語言字元串比較演算法

c語言字元串比較演算法

發布時間:2023-05-21 14:26:55

1. 比較ab大小 用一行代碼,c語言

您好,如果只是問個演算法,我可以告訴你,但是如果是你要全部,那就不可以了毀蘆,作業要自己做的啊!如果你要用戶輸入2個字元串作比較的話可以用「」來區分字元串1與字元串2然後把2個字元串存到2個數組里去比inti=1,j=1;chara[20],b[20]if(c=getchar()!="")then{a[i]=c;i++;}else{b[j]=c;j++;}然後用for循環一個一個比他們的大小就可以了,如果有一個大了就return大的值,如果遇到一個數組為空了,也return另外悔源一個字元串就碧余態好了。

2. C語言的compare函數是在哪裡定義的演算法是什麼

C語言只有字元數組有庫函數strcmp函數,格式如下:

int strcmp(const char *str1, const char *str2);

如果左邊小於右邊的字元串,函數返回-1

如果左邊字元串等於右邊字元串,函數返回0

如果左邊字元串大於右邊字元串,函數返回1

一般基本數據類型的比較都可以用關系運算符,如果自定義的可以重載運算符或者使用函數對象,如果用C語言的方式,自定義一個比較函數就可以了,庫函數中沒有這種普適類型的比較函數。

(2)c語言字元串比較演算法擴展閱讀:

compare函數滲迅規則

當s1<s2時橋腔,返回為負數;

當s1=s2時,返回值= 0;

當s1>s2時,返回正數。

即兩個字元串自左向右逐個字元相比(按ASCII值大小相比較),直叢消此到出現不同的字元或遇''為止,如:

1."A"<"B" 2."A"<"AB" 3."Apple"<"Banana" 4."A"<"a" 5."compare"<"computer"

3. 如何使用C語言求解最長公共子字元串問題及相關的演算法

假定字元串採用堆分配方式,編寫一個程序,求兩個字元串S和T的一個最長公共子串

本題的思路:
本題要實現的演算法掃描兩個字元串。其中index指出最長公共子串在s中的序號,length指出最長公共子串的長度

堆分配存儲表示如下:
typedef struct{
char *ch;
int length;
}Hstring;

Status MaxComString(Hstring S,Hstring T,int &length){

index=0;
length=0;
i=0;

//令i作為掃描字元串S的指針
while(i<S.length){
j=0;
//令j作為掃描字元串T的指針
while(j<T.length){
if(s.ch[i]==T.ch[j]){
//找一個子串,其在字元串S中的序號為i,長度為length1
length1=i;
for(k=1;S.ch[i+k]==T.ch[j+k];k++)length1++;
if(length1>length){
//將較大長度值賦給index與length
index=i;
length=length1;
}
j=j+length1;//繼續掃描字元串T中第j=length1個字元之後的字元
}else{
j++;
}
}//while
i++;
}//while
printf("最長公共子串:");
for(i=0;i<length;i++)printf("%c",S.ch[index+i]);
return OK;
}

閱讀全文

與c語言字元串比較演算法相關的資料

熱點內容
伺服器軟路由怎麼做 瀏覽:289
冰箱壓縮機出口 瀏覽:225
OPT最佳頁面置換演算法 瀏覽:642
網盤忘記解壓碼怎麼辦 瀏覽:852
文件加密看不到裡面的內容 瀏覽:651
程序員腦子里都想什麼 瀏覽:430
oppp手機信任app在哪裡設置 瀏覽:185
java地址重定向 瀏覽:268
一年級下冊摘蘋果的演算法是怎樣的 瀏覽:448
程序員出軌電視劇 瀏覽:88
伺服器系統地址怎麼查 瀏覽:54
解壓游戲發行官 瀏覽:601
國外小伙解壓實驗 瀏覽:336
頂級大學開設加密貨幣 瀏覽:437
java重載與多態 瀏覽:528
騰訊應屆程序員 瀏覽:942
一鍵編譯程序 瀏覽:129
語音加密包哪個好 瀏覽:341
有什麼學習高中語文的app 瀏覽:283
安卓手機的表格里怎麼打勾 瀏覽:411