读书人

麻烦大大看看小弟我的程序新手啊

发布时间: 2013-07-01 12:33:04 作者: rapoo

麻烦大大看看我的程序,新手啊~~~
#include <stdio.h>

int main(void)
{
int i , c ,d;
char data[1];
printf("请在下面输入一个数字进行计算\n");
//scanf("%d",&i);
i = 60;
c = i * 60;
data[0] = (char)c;
printf("%s \n",data);
return 0;
}
我想把整型的数换成字符,但是输出的同样是那个数字,比如我int i = 10;在字符输出里也要是'10';我上面的代码数出来的竟然是乱码这是怎么搞得???希望大神们给个代码参考参考,谢谢
[解决办法]
一个字符在计算机看来也是一个数值而已,这就是字符的ascll码,你想让一个int i = 10;在字符串输出里也是10,直接printf("%d" ,i);就可以了,字符只能是单个,多个字符连起来才叫字符串,没有'10'这种字符,只有字符串"10"
[解决办法]
printf里面的%和变量的一一对应关系
scanf里面的%和变量以及变量前加不加&的一一对应关系
是C代码中非常容易出错的地方,而且通常编译还不出错。
所以在编译源代码之前值得专门仔细检查一遍甚至多遍。

不要写连自己也预测不了结果的代码!

读书人网 >C++

热点推荐