为了账号安全,请及时绑定邮箱和手机立即绑定

C语言:编写函数MyStrCmp并用相应主函数进行测试?

C语言:编写函数MyStrCmp并用相应主函数进行测试?

PHP
婷婷同学_ 2019-02-06 10:06:52
C语言:编写函数MyStrCmp并用相应主函数进行测试
查看完整描述

3 回答

?
函数式编程

TA贡献1807条经验 获得超9个赞

123456789101112131415161718192021222324252627282930313233343536373839#include<stdio.h>#include<string.h>int MyStrCmp( char *s1,char *s2 );int main(){    char s1[30], s2[30];     gets(s1);    gets(s2);     printf("%d\n", MyStrCmp(s1, s2));         return 0;} int MyStrCmp(char * s1, char * s2){    int flag = 0;//0表示相等,1表示s1大于s2,-1表示s1小于s2    int minLength = 0; //较短串的长度    int i = 0;     minLength = strlen(s1) >= strlen(s2) ? strlen(s1) : strlen(s2);     for(i = 0; i < minLength; i++)    {        if(s1[i] != s2[i])        {            if(s1[i] > s2[i])                flag = 1;            else                flag = -1;            break;        }        else            continue;    }     return flag;}



查看完整回答
反对 回复 2019-03-19
?
繁花如伊

TA贡献2012条经验 获得超12个赞

BOOL MyStrCmp(char* a,char* b)

{
return a[0]>=b[0];

}

查看完整回答
反对 回复 2019-03-19
?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

#include<stdio.h>
#define N 100

int MyStrCmp(char * s1, char * s2){
int ret, i=0;
while(s1[i]!='\0' && s2[i]!='\0' && s1[i]==s2[i])
i++;
if(s1[i]==0 && s2[i]==0)
ret=0; //相等
else if(s1[i]==0)
ret=-1; //串s1小于串s2
else if(s2[i]==0)
ret=1; //串s1大于串s2
else if(s1[i]>s2[i])
ret=1; //串s1大于串s2
else
ret=-1; //串s1小于串s2
return ret;
}

int main(){
char s1[N], s2[N];
gets(s1);
gets(s2);
printf("%s\n%s\n",s1,s2);
printf("%d\n", MyStrCmp(s1, s2));
return 0;
}



查看完整回答
反对 回复 2019-03-19
  • 3 回答
  • 0 关注
  • 862 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信