C語言 while循環 十進制轉二進制,低位到高位排列

/*
時間:2018年2月3日22:38:56 
題目:求:十進制轉二進制,低位到高位排列,如10的二進制爲1010,低位到高位爲0101 
目的:練習 while循環 
*/
#include <stdio.h>
int main(int argc, char** argv)
{ 
		int n=0;
		int ret=0;
		printf("請輸入一個整數");
		scanf("%d",&n);
	while(n != 0)
				{
					ret = n % 2;
					n /= 2;
					printf("%d",ret);
				}
				printf("\n");
	return 0;
}
/*
輸出結果:
請輸入一個整數10
0101

解析:

n=10,10/2=5(商)...0(餘) 
n=5,  5/2=2(商)...1(餘) 
n=2,	2/2=1(商)...0(餘) 
n=1,	1/2=0(商)...1(餘)
n=0,跳出循環 
	從以上看:應該先求餘,再求商,依次循環,直到 n=0爲止 
*/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章