估计是你文本的存储格式问题。重新另存为一份UTF-8格式的文件。UTF-8编码格式中的数字占用一个字节。而ANSI或其他字符是占用两个字节的。
其实你看到的也不是乱码,这个数是double类型数据(低4字节)在内存存放的二进制格式数换算成整数的结果。
如果你定义的字符数组等于或小于你想存放字符数的长度,那么C不会将'\0'字符放入你所放入字符串后面(因为已经没有地方放了),如果你想将放入的字符作为一个字符串使用,s1至少要留一个位置放将'\0',如果你输出s1指向的字符串,C将会输出字符直到碰到将'\0'字符,'\0'字符到底是什么时候出现是...
删除fflush(stdin);。fflush(stdin)是清除标准输入缓冲区,与文件读入不搭界。将fscanf(fp,"%d",&q->num);中的"%d"改为"%d ",d后的空格会吸收掉文件中的广义空格。(前一句可改可不改,因为这一句会自动跳过广义空格)将print函数中的printf("%d %d",q->score,q->num);一句改为printf("%d...
int a[M][N], b[N][L], c[M][L];这行定义 改成 int a[M][N], b[N][L], c[M][L]={{0}};或者 在最开始加一个双重循环, 把c的每个值都赋值为0.否则后续 c[z][y] += a[z][x] * b[x][y];是累加到初始值上的....
if((fp=fopen("source.txt","wb"))==NULL)表示你采用的是二进制的形式来写入文件 同理 fp=fopen("source.txt","rb");/*打开文件source.txt*/ 表示你用二进制的形式来读取文件 使用二进制形式读取或写入文件,文件采用的是二进制形式保存,采用记事本打开后会出现乱码。
应该是操作成功了,不过你现在打开这个我文件的编辑器显示格式的问题,你选择成为UTF8格式应该就是可以正确显示汉字了、
putcar('\n')里面是单引号
写一个函数,输入一行字符,将此字符串中最长的单词输出。为啥我的结果出现了乱码?怎么修改呀 惠大队长 酱油 4 才看了一眼,那个longgest应该定义在main外, 孤人海 大能力者 8 你这算法是错的,你要最长单词,应该以空格为间隔,找最长单词 BUG 小吧主 14 从0到空格有多少字符一个一个比 课代表 ...