C語言實現 藍橋杯 算法訓練 十進制轉2進制輸出

點擊👇郵我

試題 算法訓練 十進制轉2進制輸出

                                                                                  藍橋杯試題解答彙總鏈接

資源限制

       時間限制:1.0s 內存限制:256.0MB


問題描述

       編寫遞歸函數,實現將一個十進制的正整數以二進制的形式輸出。
  注:不考慮符號位,僅從二進制數不爲0的最高位開始輸出。


輸入格式

       一個十進制正整數


輸出格式

       該整數對應的二進制數


樣例輸入

一個滿足題目要求的輸入範例。
例:
96

樣例輸出

與上面的樣例輸入對應的輸出。
例:
1100000

數據規模與約定

輸入爲正整數

代碼

#include<stdio.h>
void f(int a){
	if(a==0){//a爲0時結束遞歸 
		return;
	}
	f(a>>1);//每次遞歸a右移一位,因爲從高位開始輸出所以先遞歸在輸出 
	printf("%d",a&1);//a和1按位與,0得0,1得1 
}
int main(){
	int a;
	scanf("%d",&a);
	f(a);
	return 0;
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章