[求助]一个字符的问题
a[i++]=num%2+'0';请问一下,上面的'0'是什么意思啊?这个语句又执行什么作用呢?
谢谢!~~
----------------解决方案--------------------------------------------------------
以下是引用yjbqq在2006-11-28 15:48:50的发言:
a[i++]=num%2+'0';
请问一下,上面的'0'是什么意思啊?这个语句又执行什么作用呢?
谢谢!~~
a[i++]=num%2+'0';
请问一下,上面的'0'是什么意思啊?这个语句又执行什么作用呢?
谢谢!~~
这个程序不完全,只有这样说,‘0’表示字符在ascii为48,这个语句执行整形转化字符。
----------------解决方案--------------------------------------------------------
#include<stdio.h>
int main()
{
int num,i;
char a[20];
i=0;
scanf("%d",&num);
while(num)
{
a[i++]=num%2+'0'; 这里不明白,可以解释一下吗?
num/=2;
}
while(--i>=0)
{
printf("%c",a[i]);
}
return 0;
}
这是程序的全部
----------------解决方案--------------------------------------------------------
我个人认为:这段语句的作用是,将num转换成字符'0'和'1'并存入数组,没有看见更多的程序,所以,可能理解的不正确!
----------------解决方案--------------------------------------------------------
这段程序的功能好像是从键盘输入一个整数,输出他的二进制的值,其实,就是,将一个数的十进制转换成二进制,
a[i++]=num%2+'0';的作用就是,见整型的0和1转换成字符'0'和'1'并存入数组.
----------------解决方案--------------------------------------------------------
哦,谢谢啊!!~~明白了
[此贴子已经被作者于2006-11-28 16:13:29编辑过]
----------------解决方案--------------------------------------------------------
哦
----------------解决方案--------------------------------------------------------
哦
----------------解决方案--------------------------------------------------------
哦,我明白了!长见识啊!
[此贴子已经被作者于2006-11-29 18:04:48编辑过]
----------------解决方案--------------------------------------------------------
就是把存进数组的值以字符型输出么
----------------解决方案--------------------------------------------------------