比较两个字符串的大小,不许使用strcmp函数。
输入格式:
在两行分别输入两个长度小于20的字符串。在字符串中不要出现换行符,空格,制表符。
输出格式:
直接输出“>”或“<”或“=”,分别表示第一个字符串大于第二个字符串,第一个字符串小于第二个字符串,第一个字符串等于第二个字符串。
输入样例:
asd
abcd
输出样例:
>
输入样例:
asd
asd
输出样例:
=
输入样例:
cdfg
fgh
输出样例:
<
字符串比较规则:将两个字符串自左至右逐个字符相比(按照ASCII码值大小比较),直到出现不同的字符位置或遇到'\0'为止。如果字符全部相等,则认为这两个字符串相等;如果出现不同的字符,则按第一对不同的字符的比较结果为准。
如”A“<”B“;”computer“>”compare“等等。
答案:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
char a[20], b[20];
int c, i;
scanf("%s", a);
scanf("%s", b);
for (i = 0; a[i] != '\0' || b[i] != '\0'; i++)
{
c = a[i] - b[i];//计算两字符间的差。
if (c > 0)
{
printf(">\n");
break;
}
else if(c==0&&(a[i+1]=='\0'||b[i+1]=='\0'))printf("=\n");//要两组字符串中的所有字符全部相同才能算字符相等。
else if(c<0)
{
printf("<\n");
break;
}
}
return 0;
}