用scanf程序输入字符数组,在输入的数字之间输入空格对于c语言用%c输出会出现奇怪的数字?

2025-03-20 09:37:11
推荐回答(1个)
回答(1):

后面是乱码,你没有初始化字符数组
char a[5] = {};
scanf遇到空格回车都会停止操作,所以当你输入q空格时就只输进了q,空格后面的数据暂时还在输入缓冲区里等待读入
所以只有a[0]是正确的数据,后面因为没有初始化,是分配时储存在里面的旧数据,也就是乱码