不用strcmp实现字典序排列(不知道是否正确

来源:互联网 发布:结构优化 编辑:程序博客网 时间:2024/06/05 09:24

写完才发现用strcmp就能直接实现….不过还是放上来吧 尴尬

#include <stdio.h>#include <string.h>int main() {    char str1[20];    char str2[20];    int length1 = 0,length2 = 0,flag1 = 0,flag2 = 0,i1= 0,i2 = 0,flag3 = 0;    scanf("%s",str1);    scanf("%s",str2);    length1 = strlen(str1);    length2 = strlen(str2);    if  (length1 < length2) {        flag1 = length1;        flag3 = 1;    } else {        flag1 = length2;        flag3 = 2;    } //先将循环次数设为较短的一方的长度     for (i1 = 0;i1 < flag1;i1++) {        if (str1[i1] > str2[i1]) {            printf("%s > %s\n",str1,str2);            break;        }        if (str1[i1] < str2[i1]) {            printf("%s < %s\n",str1,str2);            break;        }        if (str1[i1] == str2[i1]) {            flag2++;        }    }    if (flag2 == flag1 && length1 == length2) {        printf("%s = %s\n",str1,str2);    }     if (flag2 == flag1 && length1 != length2) {        switch (flag3) {            case 1:                printf("%s < %s",str1,str2);                break;            case 2:                printf("%s > %s",str1,str2);                break;        }    }    return 0;}
0 0