小新冲冲冲 2022-12-30 09:59 采纳率: 96.7%
浏览 22
已结题

关于字符数组的判断问题

要求:本题要求编写程序,针对输入的N个字符串,输出其中最长的字符串。
输入第一行给出正整数N;随后N行,每行给出一个长度小于80的非空字符串,其中不会出现换行符,空格,制表符。

我这个代码只输出第一个读的字符串,我通过检查发现是35行不会进去,但是我觉得没有问题,所以是哪里出错了呢

int main() {
    int N = 0, i = 0, m = 0, e = 0;
    scanf("%d",& N);
    char A[83] = { 0 };//chang的那个
    int qda = 0;
    char B[83] = { 0 };//当前
    int da = 0;
    getchar();
    for (i = 0; i < N; i++) {
        B[82] = { 0 };
        da = 0;
        for (m = 0; m < 83; m++) {
            B[m] = getchar();
            if (B[m] == '\n') {
                break;
            }
            da++;
        }
        if (i == 0) {
            for (m = 0; m < da; m++) {
                A[m] = B[m];
                qda = da;
            }
        }
        else {
            for (m = 0; m < 83; m++) {
                printf("1");
                if (A[m] == '0' && B[m] != '0') {
                    for (e = 0; e < da; e++) {
                        A[e] = B[e];
                    }
                    qda = da;
                    break;
                }
                if (A[m] != '0' && B[m] == '0' || A[m] == '0' && B[m] == '0') {
                    printf("2");
                    break;
                }
            }
        }
    }
    for (i = 0; i < qda; i++) {
        if (i == 0) {
            printf("The longest is: %c", A[i]);
        }
        else {
            printf("%c", A[i]);
        }
    }
    return 0;
}
  • 写回答

2条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-12-30 12:08
    关注
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月20日
  • 已采纳回答 3月12日
  • 修改了问题 12月30日
  • 创建了问题 12月30日

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。