‘壹’ 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语言中字符串比较大小的规则!
小写字母比任何大写字母都大;
如果同是小写或大写字母表中后者大于前者。