例68:C语言编一个程序,将两个字符串s1和s2比较,若s1>s2,输出一个正数;若s1=s2,输出0,否则输出负数要求不要用strcmp函数。 解析:两个字符串用gets函数读入。输出的正数或负数的绝对值应是相比较的两个字…
这句话才是遍历字符串啊。如果没有这句,只用k=str1[i]-str2[i]; 判断的话,只能判断第一个字符(如"a"和"ab"就会判定为相等了)。while(str1[i]) // 这句话是判断 字符串1 有没有到结尾 if(str1[i]!=str2[i]) break; // 这计划是判断两个字符串的第 i 个字符相不相...
strcmp函数是用来比较字符串的,而字符串以'\0'作为结尾标志,故要加上&&a[i]!='\0'。
int s_cmp(char *s1,char *s2){ while (*s1 == *s2++)if (*s1++ == 0)return (0);return (*s1 - *(s2-1));}
int mystrcmp( const char * _Str1, const char * _Str2 ){ char _L, _R;if( !_Str1 || !_Str2 ) return _Str1 ? 1 : -1;while( 1 ){ _L = * _Str1;_R = * _Str2;if( _L > _R ) return 1;if( _L < _R ) return -1;if( _L == 0 ) return 0;_Str...
)printf("%s<%s\n",p1,p2);else printf("%s=%s\n",p1,p2);} int main(){ char a[N]={"abcdef"},b[N]={"abcdfg"};char c[N]={"abcdefg"},d[N]={"abcdefg"};char e[N]={"abcdefg"},f[N]={"abcdeeg"};cmp(a,b);cmp(c,d);cmp(e,f);return 0;} 运行效果:...
例58:C语言编一个程序,将两个字符串s1和s2比较,若s1>s2,输出一个正数;若s1=s2,输出0,否则输出负数要求不要用strcmp函数。 解析:两个字符串用gets函数读入。输出的正数或负数的绝对值应是相比较的两个字符串相应字符的ASCII码的差值。 源代码演示:...
例68:C语言编一个程序,将两个字符串s1和s2比较,若s1>s2,输出一个正数;若s1=s2,输出0,否则输出负数要求不要用strcmp函数。 解析:两个字符串用gets函数读入。输出的正数或负数的绝对值应是相比较的两个字符串相应字符的ASCII码的差值。 源代码演示: ...
C语言 不用strcmp() 实现字符串比较 #include "stdio.h" main() { char str1[20],str2[20]; int i=0,k; gets(str1); gets(str2); while(str1[i]) if(str1[i]!=str2[i]) break; else i++; k=str1[i]-str2[i]; if(k==0) printf("str1=str2\n"); else ... 展开 ...