每日打卡一小时(第三十四天)

发布时间 2023-05-25 21:40:51作者: 伐木工熊大

一.问题描述

比较的规则按照对应位置上的字符的ASCII的大小进行比较。如果两个字符串相等则返回0,若str1<str2则返回-1,若str1>str2则返回1。在main( )中输入2个字符串,调用strcom()比较它们的大小并输出相应信息。

二.设计思路

1.找到不一样的字符进行比较

2.都一样的话先结束的一方小

三.代码实现

#include<stdio.h>

int strcom(char a[80],char b[80])
{
    int i,c,d,n;
    for(i=0; a[i]==b[i]; i++);
    if(a[i]>b[i])
        n=1;
    if(a[i]<b[i])
        n=-1;
    if(a[i-1]==b[i-1]&&a[i-1]=='\0'&&b[i-1]=='\0')
        n=0;
    return n;
}
int  main( ){
    char  str1[80],str2[80];
    int  result;
    gets(str1);
    gets(str2);
    result=strcom(str1,str2);
    if(result==1)
        printf( "\"%s\" > \"%s\"\n", str1,str2) ;
    else if(result==-1)
        printf( "\"%s\" < \"%s\"\n", str1,str2) ;
    else
        printf( "\"%s\" = \"%s\"\n", str1,str2) ;
    return  0 ;
}