A. c語言 把char 型 或者 整數轉化成二進制 要怎麼轉
這個可以使用itoa函數
itoa為c語言的一個函數。itoa函數是一個廣泛應用的,從非標准擴展到標準的C語言。它不能被移植,因為它不是標準定義下的C語言,但是,編譯器通常在一個不遵循程式標準的模式下允許其通過header
,因為它是一個從邏輯對應到標准庫的函數。itoa取整數輸入值,並將其轉換為數字的基數。
原
型
char
*itoa(
int
value,
char
*string,int
radix);
功
能
把一整數轉換為字元串
用
法
itoa(i,num,10);
i
----需要轉換成字元串的數字
num----
轉換後保存字元串的變數
10----
轉換數字的基數(即進制)。10就是說按10進制轉換數字。還可以是2,8,16等等你喜歡的進制類型
返回值:指向num這個字元串的指針
程序例:
#include
#include
int
main(void)
{
int
number
=
12345;
char
string[25];
itoa(number,
string,
10);
printf("integer
=
%d
string
=
%s\n",
number,
string);
return
0;
}
char
*itoa(int
value,char
*string,int
radix)
將整數value轉換成字元串存入string,
radix為轉換時所用基數(保存到字元串中的數據的進制基數)
B. 怎麼用C語言編程把十進制轉化成二進制
c語言中沒有二進制的格式輸出符號.
你可以用itoa函數很方便的將一個10進制int轉變成二進制字元串.
如:
int
i;
char
s[128];
scanf("%d",&i);
itoa(i,
s,
2);
/*3個參數,第一個是待轉換的數,第二個是存放轉換後的字元串,第三個即需要轉換的進制*/
printf("該數轉換為二進制是:
[%s]\n",s);
補充一點,itoa函數的頭文件是stdlib.h
C. c語言編程,如何將十進制轉化為2進制
c語言編程將十進制轉化為2進制可按手工轉換規則進行程序轉換。
整數佔四個位元組,每位元組8位,共32位。所以,可以定義一個32位的數組來存儲轉換結果。
循環將整數進行除2取余數,余數存儲到數組中。
當整數整除為0時,結束循環
逆序輸出數組,得到轉換結果
參考代碼:
#include<stdio.h>
voidmain()
{
intc[32],i=0,n;
scanf("%d",&n);//輸入待轉換整數n
do{
c[i++]=n%2;
n/=2;
}while(n!=0);
for(i--;i>=0;i--)
printf("%d",c[i]);
printf(" ");
}
D. 請用一個很簡單的C語言程序:十進制轉換為二進制。
#include"stdio.h"
intmain()
{
intn;
inti=0,j;
charstr[100]={0};
charoutput[100]={0};
printf("請輸入一個整數:");
scanf("%d",&n);
while(n)
{
str[i]=n%2+'0';
n=n/2;
i++;
}
for(j=0;j<i;j++)
output[j]=str[i-1-j];
printf("該整數的二進製表示為:%s ",output);
}
E. C語言,使用數組,編寫一個十進制正整數轉換為二進制數的轉換工具
#include<stdio.h>
intmain()
{
inti=0,j=0,a=0,n[100]={0};
scanf("%d",&a);
printf("input=%d ",a);
while(a)
{
n[i++]=a%2;
a/=2;
}
for(j=i-1;j>=0;j--)
{
printf("%d",n[j]);
}
printf(" ");
return0;
}
65
input=65
1000001
F. 在C語言中怎麼把一個數轉換成二進制然後輸出
數據在內存中本來就是以二進制補碼存放的,設法從高位元組至低位元組一個bit一個bit地輸出到屏幕上即可。根據題面要求,輸出過程還要做以下工作:
從最高位元組開始檢測,全0的位元組略去;
每8位增加輸出一個空格。
代碼如下:
12345678910111213141516//#include "stdafx.h"//If the vc++6.0, with this line.#include "stdio.h"int main(void){ char *p; unsigned i,n,x=1<<sizeof(int)*8-1; printf("Input an integer...\n"); scanf("%d",&n); for(p=(char *)&n,i=sizeof(int)-1;i>0;i--) if(*(p+i)==0) x>>=8; else break; for(i=0;x;x>>=1) printf(++i%8 ? "%d" : "%d ",(n&x) || 0); printf("\n"); return 0;}
G. 一道c語言編程題,將十進制轉換為二進制
1、打開visual C++ 6.0-文件-新建-文件-C++ Source File。