本文目录一览:
- 1、C语言。为什么我定义6个长度的数组,只输入了5个字符也可以得到输出结果。要是输入5个以下字符就得不
- 2、C语言帝请进!这个程序本来就只要输入4个数,但是运行的时候要输入5个才运行呢?
- 3、请问C语言中scanf函数里的%5c 的意思是不是用来输出5个字符?
- 4、定义的字符串数长度为五,为什么可以输入六七个字符?
- 5、C语言,为什么输出字符的时候会多几个字符?
C语言。为什么我定义6个长度的数组,只输入了5个字符也可以得到输出结果。要是输入5个以下字符就得不
孩子啊,你看看循环,循环要循环六次啊,你不输入五个字符加一个回车键(刚好六个),那么是无法跳出循环的,后面的语句也就无法执行哦~
望采纳!么么哒!
C语言帝请进!这个程序本来就只要输入4个数,但是运行的时候要输入5个才运行呢?
scanf("%d%d",block_length,block_width);
scanf("%d%d",house_length,house_width);
这两句这么改就行了,把\n去掉。
请问C语言中scanf函数里的%5c 的意思是不是用来输出5个字符?
确实是5个字符,但这个字符是空白符,通常这是作用是用来对齐的,%5c,那么前面4个为空格,第5个为你转义的字符,%-5c则相反,第一个为你转义的字符,后4个为空白符。这种同样适用%5d,%-5d等,例如%5d,输出的数为123,则前面2个为空格加123;若输出的数为12345,则就输出12345,保持原样
定义的字符串数长度为五,为什么可以输入六七个字符?
发生了内存溢出,C语言不检查是否内存溢出,使用上要格外小心。多输入的字符存储在紧邻的栈上,在c[5]后面的存储位置,如果后面有其他变量,那其他变量会被覆盖。
C语言,为什么输出字符的时候会多几个字符?
\0不是读入的,是程序自动加上的,表示一个串或一个行读取完成的结束位置,你只需要处理\0之前的数据,到\0就不要继续处理了。这个结束符总要占用一个字节的内存位置.
对于二进制文件用fread读取,就不需要为这个\0预留位置了