发布网友 发布时间:2022-04-25 17:58
共2个回答
热心网友 时间:2023-10-23 01:13
从前向后,逐个字符比较,以二个字符的ASCII码大小决定它们的大小。若某处已经比出大小,则二个字符串的大小就以此为标准。比如,"as1234"与“as3"相比时,前面的字符相同,就依次后移,继续比较后面的字符。比互第3个字符时,因为“3”>"1",所以前者就小;如"as1234"与"as12340"相比,比到”4“时仍相等,但前者已经结束,则后者为大。
热心网友 时间:2023-10-23 01:14
两个字符串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]);
}