zesty0338 发表于 2021-12-24 18:15:37

关于字符串的比较

题目是:12.从键盘读入两个字符串str1、str2,进行比较,然后按格式将比较结果存入新的字符数组中,并将新的字符数组中的字符串显示在屏幕上。比较结果的格式是“str1关系运算符str2”。例如,2个字符串为“hello”和“world”,则新的字符数组中内容为“hello<world”。
比较出结果后的'<'符号要怎么打出

zesty0338 发表于 2021-12-24 18:18:34

#include <stdio.h>
#include <string.h>
void main()
{
        char a,b,c;
        int i;
        printf("请输入字符串一:");
        gets(a);
        printf("请输入字符串二:");
        gets(b);
        if(strcmp(a,b)>0)
        {
                strcpy(c,b);
                for(i=0;;i++)
                {
                        if(b=='\0')
                        {
                                b='<';
                                b='\0';
                                break;
                        }
                }
                strcat(c,a);
        }
        else
        {
                strcpy(c,a);
                for(i=0;;i++)
                {
                        if(a=='\0')
                        {
                                a='<';
                                a='\0';
                                break;
                        }
                }
                strcat(c,b);
        }
        puts(c);
}
我是这样写的但打印出来没有‘<’符号

人造人 发表于 2021-12-24 18:36:44

#include <stdio.h>
#include <string.h>

int main(void) {
    char a;
    char b;
    char c;
    scanf("%s%s", a, b);
    int n = strcmp(a, b);
    strcpy(c, a);
    strcat(c, n == 0 ? "=" : n > 0 ? ">" : "<");
    strcat(c, b);
    puts(c);
    return 0;
}

人造人 发表于 2021-12-24 18:38:12


                for(i=0;;i++)
                {
                        if(b=='\0')
                        {
                              b='<';
                              b='\0';
                              break;
                        }
                }

strcat(c,"<");
页: [1]
查看完整版本: 关于字符串的比较