xcxd.net
当前位置:首页 >> C语言编程题,结果有烫烫烫 >>

C语言编程题,结果有烫烫烫

t数组中的字符串 没有'\0'标记 就你的 程序而言 可以 在声明t数组时 使用char t[100]={0};这样的形式 初始化一下 就不会出现问题了

字符串后面缺少必要的'\0',将后面没有初始化的内容输出出来了,前面定义时可以这样改一下看看: char str[100] = {0};

因为你定义的字符型数组是20个字节,但是你在输入赋值时,没有将其全部赋值,但是输出是却又要输出20个,那些没有赋值的当然就乱码了。

缓冲区越界了,把s和a数组的缓冲区设置大一点就好了,一定要保证数组缓冲区大小比输入的字符串长度要大啊 #include #include #include main() { char i,s[100]={0},a[100]={0};//

请lz在使用数组前,先把字符数组用‘\0’初始化!就行ok了! 因为的字符串的长度是80.而可能你赋值的时候,没有达到80的长度!而且程序也不会自动帮你添加‘\0’。所以打印的时候,是整个数组全部打印出来的!也就出现了这些。。。烫烫烫烫烫烫。。...

这是因为你没有赋值串尾标记'\0'。 #include#includeint main(void){int i,j,n; char a[100],b[100]; scanf("%s",a); n=strlen(a); for(i=0;i

有烫烫烫烫烫烫烫 说明你的字符数组其内容不明 一般需如下解决:扩大数组范围 或初始化数组

出现“烫”的原因是由于字符数组中的某些数组元素没赋值。 具体原因可以通过如下实例来进行说明: char a[10]; a[0] = 'a'; a[1] = 'b'; a[2] = 'c'; a[3] = 'd'; printf("%s", a); // 输出结果就会出现很多“烫”,因为只对数组a中前四个元...

for(j=0;jj;k--) 问题在这里 字符串比较结束后会比较后面的cc 这是个负数 你的冒泡是由小到大 会把cc提到前面

字符数组没有结尾符号,或者打印字符串的地址错了 任何c语言的字符串一定要保证字符串以 '\0'结束。

网站首页 | 网站地图
All rights reserved Powered by www.xcxd.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com