#include <stdioh>
main ( )
{ char str1[100],str2[100],c;
int i,s;
printf("\n Input string 1:\n");gets(str1);
printf("\n Input string 2:\n");gets(str2);
i=0;
while((str1[i]==str2[i])&&(str1[i]!='\0'))
i++;
s= str1[i]- str2[i];
printf("%d\n",s);
}
ASCII比较大小的时候,是比较两个数中的第一个字符 1)常用字符有128个,编码从0到1272)控制字符:31、127,共33个,不可显示; 3)普通字符:95个,包括10个阿拉伯数字、52个英文大小写字母、33个运算符4)每个字符占一个字节,7位,最高位为0常见ASCII码的大小规则,0-9<A-Z<a-z:1)数字比字母要小如 “7”<“F” 2)数字0比数字9要小,并按0到9顺序递增如 “3”<“8” 3)字母A比字母Z要小,并按A到Z顺序递增如“A”<“Z” 4)同个字母的大写字母比小写字母要小32如“A”<“a” 记住几个常见字母的ASCII码大小:“A”为65;“a”为97;“0”为48;
在比较两个字符串时,先从第一个字符开始比较,如果前—个字符中的第—个字符的AscII码值大于(或小于)后一个字符串的第一个字符的ASCII码值,则称前一个字符串大于(或小于)后—个字符串;如果两个字符串的第——个字符的AscII码值相等,则比较第二个字符,以此类推,直到ASCII码值不相等的字符。常见字符的ASCII码值如下:空格的ASCII码值为32;数字0到9的ASCII码值分别为48到37;大写字母“A”到“Z”的ASCII码值分别为65到90;小写字母“a”到“z”的ASCII码值分别为97到到122。
字符串的比较不是这样的
如
"abc"
"abd"
你上面只是比较了,字符串的地址了
用#include<string>
strcmp函数比较
在程序中使用ASCII码要进行强制类型转换,将字符型转换为整型的具体为(int)b,b为要转换的字符,通过ASCII码可以将大小写字符转换,对字符进行特定的 *** 作。可以根据具体程序而定。
字符本身并没有编码的区别~
字符本身的定义就是一个八字节的数据,
而ascii码是一种编码规则。(也可以说是一种编码表,对照表)
如一个字符中的数值为41,那么从ascii表中,我们找出其对应的值,就可以知道这个值对应的是一个拉丁字母'A';
如果你认为ASCII码的大小是在字母在表中的前后关系,那么你完全可以直接用字符进对比~
但是你认为ASCII码的大小是字母自然的前后关系,那么就要看具体的情况了,如果编码表中字母的顺序与字母的自然顺序是一致的,那么可以用字符直接比较,如果顺序是相反的,也可以直接用字符比较,结果取反值
如果编码顺序与字母自然顺序不是简单的映射关系,那么你就要先对字母自然顺序进排序,然后再根据这顺序比较字母的前后关系
ascii编码中,ascii对字母的排序与字母的自然顺序是致的,所以你可以直接用字符进行对比,然后以此判断字母的前后关系~
以上就是关于一下程序用来对从键盘上输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差。全部的内容,包括:一下程序用来对从键盘上输入的两个字符串进行比较,然后输出两个字符串中第一个不相同字符的ASCII码之差。、ASCII码是如何比较大小的、怎么比较ASCII码值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)