比较两个字符串大小,如果不同,输出从左至右第一个不同字符ASC2码的差的绝对值

2024-11-25 22:33:18
推荐回答(1个)
回答1:

#include
void bi(char s1[],char s2[])
{
 int i;
 for(i=0;i<999;i++)
 {
  if(s1[i]>s2[i])
  {
   printf("%d\n",s1[i]-s2[i]);
   break;
  }
 敬渗指 if(s1[i]  {
   printf("%d\n",s2[i]-s1[i]);
   break;
  }
  if(s1[i]=='\0')
  {
    printf("0\n");
    break;
   }
 }
}
void main()
{
 char str1[80]={0},str2[80]={0};
 gets(str1);
 gets(str2);
 bi(str1,str2);
}

你原来的代码,如果亮配两个字符串相同,字符串比较到结尾时,仍然不会退出for循环,但结束字符后的内容喊滚都是随机的,随机的两个值的差就不可预知了。