1. 程式人生 > 其它 >十進位制轉化為二進位制

十進位制轉化為二進位制

技術標籤:c#程式語言

輸入1個無符號的十進位制整數,將其轉換成二進位制,並輸出。(10分)

題目內容:

從鍵盤輸入1個小於65536的無符號的十進位制整數,將其轉換成16位二進位制,並輸出。

具體要求完成的功能如下:

1)如輸入負數,則輸出 “資料小於0”

2)如超過65535,則輸出“超過最大數”

3)輸出轉換過的16位二進位制數;

輸入格式:

輸入一個小於65536的正整數

輸出格式:

二進位制數每8位數字後空一格,不足16位補0,行末沒有空格。

輸入樣例:

765

輸出樣例:

00000010 11111101
#include<stdio.h>
int main(){
	int a[
16]={0},m,i,time;//陣列會往後補0,但是不會往前 scanf("%d",&m);//輸入一個整數m if(m>=0&&m<=65535) { time=0; while(m!=0){ time++; if(m%2==1){ a[16-time]=1; } else if(m%2==0){ a[16-time]=0; } m=m/2;//用除二法對十進位制數進行轉化 } for(i=0;i<=7;i++) { printf("%d"
,a[i]); } printf(" "); for(i=8;i<16;i++) { printf("%d",a[i]); } } else if(m<0) printf("資料小於0"); else printf("超過最大數"); return 0; }