#include <stdio.h>
void main ( )
{
int y=18,i=0,j,a[8];
do
{
a[i]=y%2;i++;
y=y/2;
} while(y>=1);
for(j=i-1j>0j--)
printf(“%d”,a[j]);
printf(“\n”);
哪句话看不懂?
是do,while看不懂
还是for看不懂
你要说连i++都看不懂,那趁早休学吧
解释啥呀,看不懂吗?
printf("%d“,a[j]);
/*
这段程序的代码表示的是18的二进制转换。
即18的二进制表示为:10010
*/
include <stdio.h> //头文件
void main() //主函数
{int y=18,i=0,j,a[8];
do {
a[i]=y%2; //将y%2的值赋给a[i],这里有a[0]=0,a[1]=1,a[2]=0,a[3]=0,a[4]=1;
i++;
y=y/2;
}while (y>=1); //当y>=1时,执行while循环,结束的时候y=0,i=4.
for (j=i-1;j>=0;j--)
printf("%d",a[j]); //依次输出a[4],a[3],a[2],a[1],a[0].
printf("\n"); //最后输出换行。
}