编写函数原型为“int strcmp(char s1,char s2);”的函数,该函数实现两个字符串的比较。 strcmp函数是string compare(字符串比较)的缩写,用于比较两个字符串并根据比较结果返回整数。基本形式为strcmp(str1,str2),若str1=str2,则返回零;若str1<str2,则返回负数;若str1>str2,则返回正数。
输入
输入两个字符串,以换行为分隔,如: abc abc
输出
输入strcmp函数原型的结果,如:0
样例
标准输入复制文本 |
abc abc |
标准输出复制文本 |
0 |
标准输入复制文本 |
adaa ada |
标准输出复制文本 |
97 |
标准输入复制文本 |
ada adab |
标准输出复制文本 |
-98 |
解题思路:
创建字符数组,gets()接受,然后一一比较,当出现不同时判断并输出
#include <stdio.h>
int strcmp(char a[100], char b[100])
{
for(int i = 0; !(a[i]=='\0'&&b[i]=='\0'); i++)
{ //巧解:直到第一个不同时输出
if(a[i]>b[i]) return a[i];
if(a[i]<b[i]) return -b[i];
}
}
int main()
{
char a[100]={0}, b[100]={0};
gets(a);
gets(b);
printf("%d", strcmp(a,b));
return 0;
}