c语言输出字母是问号,为什么数组输出会多一个问号

在C语言编程中遇到数组输出显示问号的情况通常是因为字符数组未设置字符串结束符,导致输出越界。对于整型数组,未初始化的数据可能会导致输出随机值,包括不可见字符。此外,讨论还涉及到了文件操作、数组溢出和逆序输出文本时的空白行问题,这些问题都与数组边界和内存管理有关。
部署运行你感兴趣的模型镜像

公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解。

话题:为什么数组输出会多一个问号回答:这个问题问的。是什么数组,int数组,char数组?什么叫多输出一个问好。最好把码贴出来,才知道是什么。不过估计应该是char数据没有设置字符串结束符,输出的时候越界了。

参考回答:这个数组你没有初始化啊,它的值是系统随机值,你还用字符格式打出来,这个随机值系统很可能不识别这个数值的字符啊,建议初始化或者先给数组赋值再打

7cd54ae9ef8b35e0cb2ebbb89b88014c.png话题:为什么输出的时候会输出多一个字符,而汉字就不会,码如下回答:while(!outfile.eof()) { outfile.get(charr); // 在获取之后可能EOF,此句之后再增加eof()判断。 if (outfile.eof())

参考回答:DEV CPP 下有这样的问题,vc ++ 6.0 没有这个问题。话题:为什么输出的时候会多一个回答:for(i=n;i0;--i){p=(LinkList)malloc(sizeof(LNode));scanf("%d",data);p-next = L-next;L-next = p;}改为LinkList m=L;for(i=n;i0;--i){p=(LinkList

参考回答:是不是要建立一个长度为 n 的表,再又分配了 n 个,所以表的总长度是 n+1 嘛这是不是就是你说的输出的时候会多一个?CreateList_L函数里面,先 malloc 出了第一个节点猜想话题:求问大神为什么最后输出的时候会多一个零回答:Console.WriteLine ("输入一个十进制数:"); int x = int.Parse(Console.ReadLine()); Console.Write(x); Console.Write(","); string binStr = ""; do { binStr = x % 2 + binStr; x /=2; } while (x 0); Console.WriteLine(

参考回答:展开全部 Console.WriteLine ("输入一个十进制数:"); int x = int.Parse(Console.ReadLine()); Console.Write(x); Console.Write(","); string binStr = ""; do { binStr = x % 2 + binStr; x /=2; } while (x 0); Console.WriteLine("{0}(D)= {1}(B)", x, binStr); 在第一次输出后面加个间隔符,就明显了。第一次输出是的输入值,do循环后,x = 0, 在 Console.WriteLine("{0}(D)= {1}(B)", x, binStr)中又输出一次;所以后面带个0。 希望能帮到你。话题:这是一个矩阵,为什么会多输出呢.回答:是你的数据有问题!最后一个0的后面还有个空格,然后才回车的!

f4b00d2eb8a1cfb99f3cc31a8f58bef2.png话题:为什么数组输出会多一个问号回答:这个问题问的。是什么数组,int数组,char数组?什么叫多输出一个问好。最好把码贴出来,才知道是什么。不过估计应该是char数据没有设置字符串结束符,输出的时候越界了。

参考回答:展开全部 这个数组你没有初始化啊,它的值是系统随机值,你还用字符格式打出来,这个随机值系统很可能不识别这个数值的字符啊,建议初始化或者先给数组赋值再打话题:保存时为什么会多一个“~$衰竭的临床表现特点.doc”?回答:那是office程序生成的一个很有用临时,为了防止在电脑突然断电的情况下你打开的office的丢失。那个一般是隐藏的,在正常情况下看不见。如果你把打开的office保存关闭,那么系统自动的就把那删除!看起来虽然影像

参考回答:展开全部那是office程序生成的一个很有用临时,为了防止在电脑突然断电的情况下你打开的office的丢失。那个一般是隐藏的,在正常情况下看不见。如果你把打开的office保存关闭,那么系统自动的就把那删除!看起来虽然影像不大,但是在突然断电的情况下,就会把office保存在我们打开的时候的那种情况!对我们平时的正常使用没用什么影响!话题:C语言编程有错,求问。为什么最后输出数据会多一个1?回答:数组溢出了第一个N+1只是定义了该数组横轴有11个长度但是你下边用的[N+1]的时候已经是12个长度了

参考回答:展开全部数组溢出了第一个N+1只是定义了该数组横轴有11个长度但是你下边用的[N+1]的时候已经是12个长度了

7fdee8e9145355a834632868382ec48a.png话题:C语言 逆序输出文本时为什么会每一行后面都多一行空白行?求高回答:首先告诉你这是正常现象。要克服的话把逆序函数改如下:void Reverse(FILE *fp){long int flenth;char ch;//这里加一个变量fseek(fp, 0L, SEEK_END);flenth = ftell(fp);for(long int i = 1; i lt;= flenth; i++){fseek(fp, -i, SEEK_END);putchar(ch=fgetc(fp));//这里同时把读出的字符存入ch以供下一句处理if(ch=='\n') i++;//加上这一行}}原因先自己琢磨,因为要打比较多的字。可续问。顺便说一句,你的PutFileData函数也有点潜在纰漏。

参考回答:scanf ("%c", s); 这里出错了,你要么用个for循环输入字符串,要么把%c改为%s,还有s是一维字符数组名,已经了,再加符就错了 改正: #include stdio.h #include string.h int main (void) { char s[10]; int i,j; scanf ("%s", s); i = strlen (s); for (j = i-1;j = 0; j--) { printf ("%c", s[j]); } return 0; }

您可能感兴趣的与本文相关的镜像

Qwen-Image-Edit-2509

Qwen-Image-Edit-2509

图片编辑
Qwen

Qwen-Image-Edit-2509 是阿里巴巴通义千问团队于2025年9月发布的最新图像编辑AI模型,主要支持多图编辑,包括“人物+人物”、“人物+商品”等组合玩法

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值