来地球玩 2021-12-15 12:47 采纳率: 90%
浏览 46
已结题

C++可以帮我看看这个程序哪里写错了吗

img

img

char a[11], b[11];
int s1, s2, i, flag;
gets(a);
gets(b);
s1 = strlen(a);
s2 = strlen(b);
if( s1 != s2){
    printf("1\n");
}
if( s1 == s2){
    for( i = 0; i <= s1-1; i++)
    {
        if( a[i] == b[i])
        {
            continue;
        }    else if( a[i] != b[i] && abs(a[i]-b[i])==32 )
        {
            flag = 3;
        }
        else
        {
            flag = 4;
            break;
        }
    }
    if( i > s1-1 && flag != 3){
        printf("2\n");
    }
    else{
        printf("%d\n", flag);
    }
}
return 0;

}

  • 写回答

3条回答 默认 最新

  • 书山客 2021-12-15 13:15
    关注
    
    #include<stdio.h>
    #include<string.h>
    #include<math.h>
    int main() 
    { 
        char a[11], b[11];
        int s1, s2, i, flag=0;
        gets_s(a);
        gets_s(b);
        s1 = strlen(a);
        s2 = strlen(b);
        if (s1 != s2) {
            printf("1\n");
        }
        if (s1 == s2) {
            for (i = 0; i <= s1 - 1; i++)
            {
                if (a[i] == b[i])
                {
                    continue;
                }
                else if (a[i] != b[i] && abs(a[i] - b[i]) == 32)
                {
                    flag = 3;
                }
                else
                {
                    flag = 4;
                    break;
                }
            }
            if (i > s1 - 1 && flag != 3) {
                printf("2\n");
            }
            else {
                printf("%d\n", flag);
            }
        }
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 12月23日
  • 已采纳回答 12月15日
  • 创建了问题 12月15日