『壹』 c語言中比較兩個字元串的大小,應該怎麼做
一:(這個調用了 string.h 頭函數)
#include <stdio.h>
#include <string.h>
void comparision(char a[],char b[])
{
if(strcmp(a,b)>0) printf("a[40]>b[40]");
else if(strcmp(a,b)==0) printf("a[40]=b[40]");
else printf("a[40]<b[40]");
}
main(void)
{
char a[40],b[40];
gets(a);
gets(b);
comparision(a,b);
}
2:這個是普通方法 不調用函數strcmp();
#include <stdio.h>
int comparision(char a[],char b[])
{
int t,i=0;
while(a[i]!='\0'||b[i]!='\0')
{
if(a[i]==b[i]) t=0;
else if(a[i]>b[i]) t=1;
else t=-1;
if(t!=0) break;
i++;
}
return t;
}
main(void)
{
char a[40],b[40];
int k=0;
gets(a);
gets(b);
k=comparision(a,b);
if(k==1) printf("a[40]>b[40]");
else if(k==-1) printf("a[40]<b[40]");
else printf("a[40]=b[40]");
}
『貳』 C語言比較字元串大小
提供演算法可以么。。1.放入4個字元串數組比較A[i]
B[i]
C[i]
D[i]
2.設置index數組初始化為index{0};在一輪A
B
C
D
比較後設置已分出順序的字元串
設置其下標,最小設置為1。其餘類推選出仍然為0的index[]繼續1
2
循環
直到分出全部下標
若2數組相同則按照數組顯示順序排
『叄』 C語言字元串大小問題
首先比較第一個字元,最小的是a開始的然後是c開始的,最後是d開始的
由於a開始的字元串有"abc","aabdfg","abbd",c和d開始的各自有一個
所以"dcdbe"是最大的,倒數第二大的是"cd"
然後再看a開始的,比較第二個字元,最小的是a,只有一個字元串"aabdfg";其次是b,有兩個字元串;
所以"aabdfg"是5個中最小的;
第二個字元是b的兩個字元串"abc","abbd"再比較第3個字元,最小的是b、然後是c
所以abbd<abc
所以最後結果為aabdfg<abbd<abc<cd<dcdbe
『肆』 C語言字元串的長度和大小的幾個問題
字元串以'\0'表示結束,"he\0llo" \0字元中就結束了,長度為2
"he\\0llo" ,雙引號字元串自動加上'\0'結束符,\\表示'\'字元共有'h' ,'e','\','0','l','l' ,'o'七個字元,長度為7
ch1[]={'h','e','l','l','o'} 不會自動加上'\0',測試長度時直到遇到內存中第一個』\0'結束,長度不固定,如果重新編譯程序運行長度就不一定是11
『伍』 c語言中字元串怎麼進行比較大小
您好,我是軟體之家的♂北極熊熊,很高興為您解答。
c語言字元串的比較規則就是按兩個字元串從頭開始比較字元的ascii碼大小
比如"abc">"aacvs",和長度沒關系
從第一個字元開始比,如果字元串a的字元>字元串b的字元,則a>b
如果相同,就一直往後比
如滿意,謝謝五星採納~~~~~
『陸』 c語言中比較兩個字元串的大小
在C語言中比較字元串大小,可以使用庫函數strcmp,也可以自己編寫比較函數。
1、使用庫函數。
需要包含頭文件string.h。聲明為:
int strcmp(const char *s1, const char *s2);
會根據字典序比較s1和s2, 如果二者相等,則返回0;如果s1較小則返回-1;如果s1較大則返回1。
比如
strcmp("123", "123") 結果為0。
strcmp("123", "456") 結果為-1。
strcmp("456", "123") 結果為1。
2、自定義函數。
實現字元串比較的方法有很多,其基本原理為按位元組比較。
舉例如下:
intmy_strcmp(char*s1,char*s2)
{
inti;
for(i=0;s1[i]==s2[i]&&s1[i]!=0;i++);//循環比較,達到結束或者出現不相等值時退出循環。
if(s1[i]==s2[i])return0;//代表全部相等,返回0
if(s1[i]<s2[i])return-1;//s1較小,返回-1。
return1;//s1較大,返回1.
}
『柒』 C語言中字元串的大小指的是什麼
C語言中字元串的大小表示按字元的ASCII碼值大小進行度量的一種表示方法。
字元串的大小是相對而言的,即至少需要2個字元串才能進行比較
對於判斷2個字元串的大小可以根據如下規則進行判斷:
從第一個字元開始,順次向後直到出現不同的字元為止,然後以第一個不同的字元的ASCII碼值確定,ASCII碼值大的字元串就大。
舉例如下:
比較字元串"abc"和"aabdfg"的大小。
由於第一個字元相同,都是'a',所以看下一個字元。第二個字元一個是'b',一個是『a',由於b的ASCII值比a的ASCII值大,所以,這二個字元串的比較結果是"abc">"aabdfg"
『捌』 c語言怎麼比較字元的大小
(這個調用了string.h頭函數)
#include <stdio.h>
#include <string.h>
void comparision(char a[],char b[])
{if(strcmp(a,b)>0) printf("a[40]>b[40]")。
else if(strcmp(a,b)==0) printf("a[40]=b[40]");else printf("a[40]<b[40]");}
(8)c語言字元串大小問題擴展閱讀:
語言特點:
主要特點
C語言是一種結構化語言,它有著清晰的層次,可按照模塊的方式對程序進行編寫,十分有利於程序的調試,且c語言的處理和表現能力都非常的強大,依靠非常全面的運算符和多樣的數據類型,可以輕易完成各種數據結構的構建。
通過指針類型更可對內存直接定址以及對硬體進行直接操作,因此既能夠用於開發系統程序,也可用於開發應用軟體。通過對C語言進行研究分析,總結出其主要特點如下:
(1)簡潔的語言
C語言包含的各種控制語句僅有9種,關鍵字也只有32 個,程序的編寫要求不嚴格且以小寫字母為主,對許多不必要的部分進行了精簡。
語句構成與硬體有關聯的較少,且C語言本身不提供與硬體相關的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統。
(2)具有結構化的控制語句
C語言是一種結構化的語言,提供的控制語句具有結構化特徵,如for語句、if⋯else語句和switch語句等。可以用於實現函數的邏輯控制,方便麵向過程的程序設計。
『玖』 C語言中字元串比較大小的規則!
小寫字母比任何大寫字母都大;
如果同是小寫或大寫字母表中後者大於前者。