实际上,对于这段代码,主要存在以下问题:

  1. 在使用scanf_s函数接收输入时,需要提供输入变量的地址,并指定输入的最大长度。所以应该使用scanf_s('%d', &a, sizeof(a));

  2. 在输出星期几时,需要根据输入的数字进行数组越界检查,确保输入的数字在有效范围内(1到7)。此外,数组arr的大小应该是8,而不是10,以容纳星期一到星期日的字符串。

修正后的代码如下:

#include <stdio.h>
int main()
{
    char arr[8][10] = { '', '星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期日' };
    int a = 0;
    scanf_s('%d', &a, sizeof(a));
    if (a >= 1 && a <= 7) {
        printf('%s', arr[a]);
    }
    else {
        printf('输入无效');
    }
    return 0;
}

这样,在输入数字1到7时,会输出对应的星期几。输入其他数字会显示'输入无效'。请确保使用的是支持C11标准的编译器,并正确配置了相关的编译环境。

VS 代码运行错误修复:C语言星期几判断代码示例

原文地址: https://www.cveoy.top/t/topic/pjU 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录