写入位置时发生访问冲突

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图

img

运行结果及报错内容

img

我的解答思路和尝试过的方法

img

我想要达到的结果

(1)scanf_s读取%c需要设置大小,改成scanf_s("%c%c%c", &c1, 1, &c2, 1, &c3, 1);
(2)下面读取double类型的时候,你的%lf之间有逗号,但是输入的时候没有逗号,会出错。改成 scanf_s("%lf%lf", &x, &y);
代码修改如下:

#include <iostream>
int main()
{
    double x, y, z;
    char c1, c2, c3;
    int a1, a2, a3;
    scanf_s("%d%d%d", &a1, &a2, &a3);
    printf("%d,%d,%d\n", a1, a2, a3);
    scanf_s("%c%c%c", &c1, 1, &c2, 1, &c3, 1);
    printf("%c,%c,%c\n", c1, c2, c3);
    scanf_s("%lf%lf", &x, &y);
    printf("%lf,%lf\n", x, y);
    return 0;
}

scanf_s输入字符时需要指定长度
scanf_s("%c%c%c",&c1,1,&c2,1,&c3,1);

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632