① c/c++比較字元串的大小
可以使用庫函數strcmp判斷,具體如下:
strcmp是c語言比較字元串的庫函數,形式為int strcmp(char *a, char *b);
該函數會對升喚a和b的每個字元,按照ascii碼值比較,如果二者完掘圓全相同返回0;如果a的ascii碼值先出現較大者,會返回1;否則返回-1。
所以,要判斷字元串相等,可以使用。
(1)c語言比較字元串的大小實訓報告擴展閱讀:
關於上述strcmp()函數比較字元串的例子
#include <stdio.h>
#include <string.h>
int main(void)
{
char str_1[] = "abc";
char str_2[] = "abc";
char str_3[] = "ABC";
if (strcmp(str_1, str_2) == 0)
printf("str_1 is equal to str_2. ");
else
printf("str_1 is not equal to str_2. ");
if (strcmp(str_1, str_3) == 0)
printf("str_1 is equal to str_3. ");
else
printf("str_1 is not equal to str_3. ");
return 0;
}
參考資料來源:字元串-網路百吵散凱科
② C語言:用函數和指針比較三個字元串的大小
#include<stdio.h>
#include<string.h>
voidsort_str(char*p[],intn)
{
char*tmp;
inti,j;
for(i=0;i<n;i++)
for(j=i+1;j<n;j++)
{
if(strcmp(p[i],p[j])>0)
{
tmp=p[i];
p[i]=p[j];
p[j]=tmp;
}
}
}
intmain()
{
char*p[]={"hello","world","good"};
inti;
sort_str(p,3);
for(i=0;i<3;i++)
printf("%s ",p[i]);
return0;
}
③ 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語言編程,輸入兩個字元串,比較他們的大小並輸出比較結果
#include "stdio.h"
#include "string.h"
void main()
{
char a[100],b[100];
int comp;
printf("Please input 2 string:\n");
scanf("%s%s",a,b);
comp=strcmp(a,b);
if(comp>0)
printf("The bigger is %s\n",a);
else if(comp<0)
printf("The bigger is %s\n",b);
else
printf("%s=%s\n",a,b);
getch();
}
⑤ 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]");}
(5)c語言比較字元串的大小實訓報告擴展閱讀:
語言特點:
主要特點
C語言是一種結構化語言,它有著清晰的層次,可按照模塊的方式對程序進行編寫,十分有利於程序的調試,且c語言的處理和表現能力都非常的強大,依靠非常全面的運算符和多樣的數據類型,可以輕易完成各種數據結構的構建。
通過指針類型更可對內存直接定址以及對硬體進行直接操作,因此既能夠用於開發系統程序,也可用於開發應用軟體。通過對C語言進行研究分析,總結出其主要特點如下:
(1)簡潔的語言
C語言包含的各種控制語句僅有9種,關鍵字也只有32 個,程序的編寫要求不嚴格且以小寫字母為主,對許多不必要的部分進行了精簡。
語句構成與硬體有關聯的較少,且C語言本身不提供與硬體相關的輸入輸出、文件管理等功能,如需此類功能,需要通過配合編譯系統所支持的各類庫進行編程,故c語言擁有非常簡潔的編譯系統。
(2)具有結構化的控制語句
C語言是一種結構化的語言,提供的控制語句具有結構化特徵,如for語句、if⋯else語句和switch語句等。可以用於實現函數的邏輯控制,方便麵向過程的程序設計。
⑥ C語言怎麼比較兩個字元串大小
兩個字元串s1和s2,若s1=s2時,返回值為0;若s1不等於s2時,返回它們二者第一個不同字元的ASCII碼差值(如"BOY"與"BAD",第二個字母不同,"O"與"A"之差為79-65=14)。如果s1 > s2,則輸出正值;如果s1 < s2,則輸出負值。
答案:
#include<stdio.h>
#include<string.h>
#define N 30
void main()
{
char s1[N],s2[N];
int i,j=0;
puts("輸入字元串s1:");
gets(s1);
puts("輸入字元串s2:");
gets(s2);
for(i=0;(s1[i]!='\0')&&(s2[i]!='\0');i++)
{
j=s1[i]-s2[i];
if(j!=0)
break;
}
if((s1[i]=='\0')&&(s2[i]=='\0'))
printf("%d\n",j);
else
printf("%d\n",s1[i]-s2[i]);
}
⑦ C語言:用指針實現字元串大小的比較,應該怎樣做呢
字元串比較,可採用循環遍歷字元串,用對應位置的指針所指向的字元進行比較,當相等時,循環,遇到不等或其中一個字元串結束時,結束循環,返回對應指針的對應的字元的差值,根據差值判斷兩個字元串的大小:
返回值大於0,則前串大,
返回值小於0,則前串小,
返回值等於0,兩個字元串相等。
參考代碼:
#include<stdio.h>
intstringcompare(char*a,char*b)
{
while(*a&&*a==*b)
{
a++;
b++;
}
return*a-*b;
}
intmain()
{
intret;
chara[10];
charb[10];
printf("請輸入字元串a:");
gets(a);
printf("請輸入字元串b:");
gets(b);
ret=stringcompare(a,b);
if(ret>0)
printf("a>b ");
elseif(ret<0)
printf("a<b ");
else
printf("a=b ");
system("pause");
return0;
}
運行結果:
請輸入字元串a: abcde
請輸入字元串b: acd
a<b
請輸入字元串a: acd
請輸入字元串b: abcde
a>b
請輸入字元串a: abc
請輸入字元串b: abc
a=b
⑧ 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語言中字元串怎麼進行比較大小
您好,我是軟體之家的♂北極熊熊,很高興為您解答。
c語言字元串的比較規則就是按兩個字元串從頭開始比較字元的ascii碼大小
比如"abc">"aacvs",和長度沒關系
從第一個字元開始比,如果字元串a的字元>字元串b的字元,則a>b
如果相同,就一直往後比
如滿意,謝謝五星採納~~~~~
⑩ 編寫一個C語言函數,比較兩個字元串的大小
#include<stdio.h>
#define
N
100
int
input(char*a,char*b)//輸入兩個字元串
{
printf("Input
the
first
information:\n");
fgets(a,N,stdin);
printf("Input
the
secend
information:\n");
fgets(b,N,stdin);
}
int
my_strcmp(char*a,char*b)//比較字元串每個字元的大小
{
while((*a!='\0')&&(*b!='\0'))
{
if(*a>*b)
{
return
0;
}
else
if(*a<*b)
{
return
1;
}
else
{
a++;
b++;
}
}
if((*a=='\0')&&(*b!='\0'))//字元串b比字元串a長
{
return
1;
}
else
if((*a!='\0')&&(*b=='\0'))//字元串a比字元串b長
{
return
0;
}
else
{
return
2;
}
}
int
main()
{
char
a[N]={0};
char
b[N]={0};
int
net2=0;
input(a,b);//調用輸入函數
net2=my_strcmp(a,b);//調用比較大小函數
if(0==net2)//輸出大小
{
printf("a>b\n");
}
else
if(1==net2)
{
printf("a<b\n");
}
else
{
printf("a=b\n");
}
return
0;
}
(10)c語言比較字元串的大小實訓報告擴展閱讀:
一、return在函數中的作用
我們如果將函數看做一個加工廠,參數就是我們向加工廠投入的原料,具體的函數功能實際上就是加工的過程,而return語句代表返回值,就是加工廠在實現加工之後給「投資人」的成品。
二、return語句的特點
1、在函數當中,遇到return語句之後就意味著函數運行的結束,在此之後的代碼是不運行的。
2、它不支持任何運算也沒有任何內建方法,和任何其他的數據類型比較是否相等時永遠返回false,也可以將None賦值給任何變數。
3、執行到return語句時,會退出函數,return之後的語句不再執行。但將return語句放在try語句塊中,是個例外。
三、return的默認值:return函數默認的返回值為undefined。