试图转专业的kk 2022-10-04 00:41 采纳率: 42.9%
浏览 25
已结题

PAT-B1031 如何进行修改将乱码消除?(语言-c语言|开发工具-visualstudio)

题目:
https://pintia.cn/problem-sets/994805260223102976/exam/problems/994805290334011392

以下是我所写的代码:

#include <stdio.h>
int main()
{
    int N, i, j = 0, sum;
    char id[101][19];
    int w[] = { 7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2 };
    char M[] = { '1','0','X','9','8','7','6','5','4','3','2' };
    scanf("%d", &N);
    for (i = 0; i < N; i++)
    {
        scanf("%s", id[i]);
    }
    for (i = 0; i < 17; i++)
    {
        int k = 0;
        for (k = 0, sum = 0; k < 17 && id[i][k] >= '0' && id[i][k] <= '9'; k++)
        {
            sum += (id[i][k] - '0') * w[k];
        }
        if (k == 17 && M[sum % 11] == id[i][17])
            j = 1;
        else
        {
            printf("%s\n", id[i]);
            j = 0;
        }
    }
    if (j == 1)
    {
        printf("All passed");
    }
    return 0;
}

经过编译器测试后:

img

  • 写回答

1条回答 默认 最新

  • qzjhjxj 2022-10-04 08:32
    关注

    问题在第13行:for (i = 0; i < N; i++) //for (i = 0; i < 17; i++) 这里不是 i < 17

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

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

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助