c语言怎么用for循环给数组元素赋值,直到输入“#”停止? - 爱问答

(爱问答)

c语言怎么用for循环给数组元素赋值,直到输入“#”停止?

#include<stdio.h>

int main()

{


    int i;

    char a[100]={0};

    printf("输入数据,当输入#时结束");

    i=0;

    do{

    printf(" 第%d个数",i+1);

    scanf("%d",&a[i]);

    i++;

    }

    while(a[i]!='#');

    return 0;

}

为啥不行呢?


这个是你基本概念的问题了,%d输入只能用于整形,也就是输入只能是数字及头上的+/-,输入其它字符直接会出错的,你可以对char 赋整形的值,它范围只能是-128~+127

你用%d输入,那么  while(a[i]!='#');中,有两个问题

1。你的i已加1,那么实际要判while(a[i-1]!='#');

2。你的a[i].只有当输入35时(#的ASCII码)你的程序才会结束


相关标签:c语言

下一篇:i73770装win10的系统会有什么影响吗?现在是win7

上一篇:PTA运行错误及G++与clang++区别

热门标签:
excel 网盘 破解 word dll
最新更新:
微软重新评估新的Outlook的使用时机 联想推出搭载联发科Helio G80芯片组的Tab M9平板 英特尔创新大赛时间确定! 微软Edge浏览器在稳定渠道中推出Workspaces功能 英伟达RTX4060TiGPU推出MaxSun动漫主题! 谷歌地图为用户提供了街景服务! GameSir 在T4 Kaleid中推出了一款出色的控制器! 微软开始在Windows 11 中测试其画图应用程序的新深色模式! LG电子推出全球首款无线OLED电视 英伟达人工智能芯片崭露头角! Steam Deck可以玩什么游戏-Steam Deck价格限时优惠 雷蛇推出CobraPro鼠标 Kindle电子阅读器可以访问谷歌商店吗 Windows10如何加入组策略 window10图片查看器怎么没有了?