1樓:冒險島樂樂
#include
#include
#include
#include
int main(void )
2樓:匿名使用者
#include
using namespace std;
void main()
else cout<<"unequal"< 3樓: 用strcmp不就直接解決了? 還可以用string物件直接==比較。 4樓:匿名使用者 #include using namespace std; const int buff_size = 100; int main() 5樓:匿名使用者 char *p="abc"; char *q="mnkd"; int a=length(p); int b=length(q); if(a==b) cout< cout< 怎樣用c++編寫比較兩個字串的大小(用指標) 6樓:匿名使用者 看來就是自己實現一個strcmp了...以下應該是最簡單的寫法了... //非模板版本: int mystrcmp(const char* s1, const char* s2) return *s1 - *s2; }//簡單模板版本,適合char、wchar_t之類的等寬c風格字串: template int mystrcmp(const _chart* s1, const _chart* s2) return *s1 - *s2; }==== [原創回答團] 7樓: 可以用strcmp();函式來做比較 使用是要包含標頭檔案string.h如果已經包含了iostream就不需要包含string.h了 用法為strcmp(string1,string2);這個函式有返回值的 如果返回的是1代表前者大 -1就是後者大 一樣大是0 8樓: #include using namespace std; int cmp(char *s, char *p); int main()}}} 9樓:我是it農民工 #include strcmp (char *p,char *q)return(*p-*q); }main() 用c++寫的「編寫程式比較兩個字串是否相等(用指標完成)。」哪位仁兄幫忙看一下為什麼錯了啊? 10樓:匿名使用者 你的迴圈語句沒有實現迴圈,對長度相同字串僅在比較第一個字元後,就終止迴圈、結束程式了。應當做下述改動: 將 改為 else return 0; 11樓:夢飛湖畔 int compare(char*p,char*q)}} 你加上個大括號就行了,for迴圈後如果不加括號的話,就只迴圈它後面的一句 12樓:一水臨風 if(strlen(p)==strlen(q)) //另外得加一行**,因為兩個字串長度不相等的話也得返回一個0. else return 0; 13樓:匿名使用者 compare函式中for迴圈沒有將else語句包含 14樓: 想比較內容的話用strcmp()函式 用c++ 編寫一個程式:提示使用者輸入兩個字串,然後比較這兩個字串是否相等。求教了 15樓:匿名使用者 #include #include #include void replace(char *s,char *t,char *v) //對s採用char s等同於char *s 傳遞值 *為取消引用 int slen=strlen(s); int tlen=strlen(t); int i=0,j=0; while(i=tlen) //如果找到子串則進行替換}} int main() 16樓:匿名使用者 #include using namespace std; int main() if (i == strlen(str1) - 1)//如果字串比較到最後一個字元都相同,那麼相等 cout << "相同!" << endl;}}return 0;} 17樓:匿名使用者 這麼簡單的問題就懸賞50分 樓主你的分太多了吧 18樓:匿名使用者 #include #include using namespace std; int main() 編寫一個函式,比較兩個字串是否相等(利用指標完成)c語言: 19樓: #include #include int same(char *a,char *b);return ((*a != '\0') ? 0 : 1); };int main() c++ 寫一個函式,實現兩個字串的比較,即自己寫一個strcmp函式 20樓:匿名使用者 好複雜的樣子,vc執行庫或者 glibc庫中 都有 strcmp的原始碼,你最好看看那些原始碼砸寫的,再和你這個對比下子。。真的。。。 int __cdecl strcmp ( const char * src, const char * dst )看到沒,簡潔吧。。 21樓:匿名使用者 你只比較了第一個字元和字串的長度,結果肯定是錯的了 22樓: //你的迴圈體根本就沒起作用,其實就是簡單用指標遍歷真個字元陣列,找到第一個不相同的字元,它們的ascii的差就是返回值 參考**如下,最好自己動手寫哈 #include #include #include #include using namespace std; int strcmp(char*p1,char*p2)return *p1 - *p2; }return 0; }int main(void) 用c語言程式設計序:用指標方法處理:寫一函式,實現兩個字串的比較。即自己寫一個strcmp函式,函式 23樓:叢念煙 int strcmp(char *p1, char *p2)}if (*p1==0 && *p2==0)return 0; else if (*p1==0) return -1; else return 1;} 利用指標來比較兩個字串大小,不能用strcmp()函式 的程式怎麼寫 24樓:問明 #include"stdio.h" int mmm(char*aa[20],char*bb[20],int c) int a; for(a=0;a<20;a++) if(aa[a]>bb[a]) c+=1; return(c); //break; if(aa[a]return(c); //break; void main() //for(i=0;i<5;i++) ////for(i=0;i<5;i++) ////for(i=0;i<5;i++) ////for(i=0;i<5;i++) printf("%d\n",a); printf用法: printf()函式的呼叫格式為:printf("《格式化字串》",《參量表》)。 其中格式化字串包括兩部分內容:一部分是正常字元,這些字元將按原樣輸出;另一部分是格式化規定字元,以"%"開始,後跟一個或幾個規定字元,用來確定輸出內容格式。 參量表是需要輸出的一系列引數,其個數必須與格式化字串所說明的輸出引數個數一樣多,各引數之間用","分開,且順序一一對應,否則將會出現意想不到的錯誤。 比如:int a=1234; printf("a=%d\n",a); 輸出結果為a=1234。 scanf()是c語言中的一個輸入函式。與printf函式一樣,都被宣告在標頭檔案stdio.h裡,因此在使用scanf函式時要加上#include。 int scanf(const char*restrict format,...); 函式scanf()是從標準輸入流stdin(標準輸入裝置,一般指向鍵盤)中讀內容的通用子程式,可以說明的格式讀入多個字元,並儲存在對應地址的變數中。 如:scanf("%d%d",&a,&b); 函式返回值為int型,如果a和b都被成功讀入,那麼scanf的返回值就是2。 25樓: #include int str_cmp(char *p, char *q);//自定義字串比較函式 int main() return 0; }int str_cmp(char *p, char *q) 26樓: #include void main() else if(*q>*p) else}} 27樓:匿名使用者 以下是字串操作庫函式的自定義實現,自己寫個main函式測測吧: 自己敲一遍,我故意不貼原始碼的! include int str cmp char str1,char str2 if str1 0 str2 0 return 1 if str1 0 str2 0 return 1 if str1 0 str2 0 return 0 int main else if a i 0 return 1 ... strcmp的實現是這樣的,對兩個字串,先比較第一個字元,如果不相等,返回差值。如果相等,繼續比較下一個字元,直到有不相等或遇到 0 時結束。現在你把陣列a和b傳入,因為前三個字元都相等,會越界繼續比較的。如果你想比較兩個字串,字串是要用 0 結束的。如果你只想比較前n個,可以使用strncmp,s... 這要看型別,如果用的是c 裡面的string類,那麼只需要用上過載符號 就行了 例如 string s1 12345890 s2 abcdedg s1 s2 把s2連線在s1尾部 cout 如果是c語言裡面的字元陣列,可以用strcat char s1,char s2 函式,功能是把,s2連線在s1...用C語言編寫比較兩個字串大小的程式 不能用string函式
用strcmp函式比較兩個字串,結果不正確啊
在c 中如何將兩個字串合併成字串