c语言输出数字乱码 输出字符串后面有乱码
你在每次输入的时候都有一个回车按键,需要把回车按键处理掉,你在scanf()下面的一行添加一句:getchar(),用来接收标准输入里的回车键!应该可以解决问题.
int score[2]; 这个应该是int score[3]; 再看看别人怎么说的.
C语言输出结果存在乱码a[10]是在子函数中定义的,生命周期应该和子函数一样.出了子函数就会被销毁、 . 打印出来的肯定是乱码.知道了问题的所在.相应的解决办法就是.增加a[10]所对应.
c语言中 输出乱码问题提几个建议.1)没给出str的大小,不知道你定义的多大.至少str要保证120以上.考虑用2的倍数最优可以char str[122]并且因为系统将自动在最后加'\0'.最好设定读取121为好.以免读取半个中文字.2)fgets的用法问题. 追加返回值的判断为好.if(fgets(str,120,fp)!=null){ printf("%s\n",str);}3)关于出现乱码的问题,估计你的文件中有中文汉字.读取到119位的时候正好是某个汉字的前一半.要解决这个if(fgets(str,121,fp)!=null) 这里120 改成读偶数个121.另外文件最好用宽字符的.就可以避免乱码了.
C语言文件输出时,输入数据后为什么会出现乱码可能是输入缓冲区之前未清空 使用这个函数将文件缓冲区清空 memset(buffer,0,sizeof(buffer)); 头文件在#include中
c语言程序输出的数据后面多了一些乱码一般出现这种情况是数组越界了 再看看别人怎么说的.
C语言中结果为什么会输出乱码,求解你写到文件时用的是fwrite()二进制输出,不是文本输出,那当然显示出乱码啦.睇书睇书,书上有说明的!
c语言,输出总是乱码没看懂你想做什么 scanf("%d",m); 不能这样输入 m是一个数组,要一个元素一个元素的输入 例如 for(i = 0;i<M;i++) scanf("%d",&m[i]); 同样 printf("%d ",n) 这样输出 也不对 要一个一个的输出
C语言程序输出有乱码#include <string.h>#include <stdio.h>#define LEN 20 void fun(char a[],char b[],int n) { int i; for(i=0;i<n;i++) b[i]=a[i]; for(i=n+1;i<strlen(a);i++) b[i-1]=a[i]; b[i]='\0'; } void main() { .
C++程序输出的数字是乱码ios::in表示打开已经存在的文件,如果文件不存在也不新建 改成下面这个样子就可以了 fstream f("test.txt", ios::out); f f.open("test.txt",ios::in|ios::out); char name[20]; f >> name; cout f.close();