C语言 | 比较字符串s1 s2,不用strcmp

例68:C语言编一个程序,将两个字符串s1和s2比较,若s1>s2,输出一个正数;若s1=s2,输出0,否则输出负数要求不要用strcmp函数。

解析:两个字符串用gets函数读入。输出的正数或负数的绝对值应是相比较的两个字符串相应字符的ASCII码的差值。

源代码演示:

#include<stdio.h>//头文件 
int main()//主函数 
{
    
    
  int i,result;//定义整型变量 
  char s1[100],s2[100];//定义字符数组 
  printf("输入字符1:");//提示语句 
  gets(s1); //键盘录入,空格也算 
  printf("\n输入字符2:");//提示语句 
  gets(s2); //键盘录入 
  i=0;//赋初值 
  while((s1[i]==s2[i])&&(s1[i]!='\0'))
  {
    
    
    i++; //逐个比较 
  }
  if(s1[i]=='\0'&&s2[i]=='\0')
  {
    
    
    result=0;
  }
  else
  {
    
    
    result=s1[i]-s2[i]; //按照ASCII码表输出差值 
  }
  printf("\n输出结果:%d\n",result);
  return 0;//主函数返回值为0 
}

编译运行结果如下:

输入字符1:love

输入字符2:love

输出结果:0

--------------------------------
Process exited after 7.613 seconds with return value 0
请按任意键继续. . .

以上,如果你看了觉得对你有所帮助,就给小林点个赞,分享给身边的人叭,这样小林也有更新下去的动力,跪谢各位父老乡亲啦~
C语言比较字符串
更多案例可以go公众号:C语言入门到精通

猜你喜欢

转载自blog.csdn.net/weixin_48669767/article/details/113105070