當前位置:首頁 » 編程語言 » 數字轉換代碼c語言
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

數字轉換代碼c語言

發布時間: 2022-05-20 17:49:45

A. c語言十進制轉十六進制數

C語言十進制轉十六進制數的源代碼如下:

#include<bits/stdc++.h>

using namespace std;

void IntZh0x(int n)

{int s=n%16;

if(n/16!=0) IntZh0x(n/16);

if(s>9)

{

if(s==15) cout<<"F";

else if(s==14) cout<<"E";

else if(s==13) cout<<"D";

else if(s==12) cout<<"C";

else if(s==11) cout<<"B";

else if(s==10) cout<<"A";

}

else cout<<s;

}

int main(){

int n;

cin>>n;

IntZh0x(n);

return 0;

}

(1)數字轉換代碼c語言擴展閱讀

1、十六進制數轉換成十進制數解,其值為各個位碼乘以位權然後完全相加。

2、十六進制就是把 4 個二進制位組合為一位來表示,每一位有0b0000 ~ 0b1111 共 16 個值,用 0 ~ 9 再加上 A ~ F(或 a ~ f)表示,那麼它自然就是逢十六進位,它本質上同二進制是一樣的,是二進制的一種縮寫形式。

B. C語言如何把一個字元串轉換成數字

C語言中,可以使用atoi函數將字元串轉換為數字,如atoi("123")可以得到數字123。

atoi (表示 ascii to integer)是把字元串轉換成整型數的一個函數,應用在計算機程序和辦公軟體中。int atoi(const char *nptr) 函數會掃描參數 nptr字元串,會跳過前面的空白字元(例如空格,tab縮進)等。

如果 nptr不能轉換成 int 或者 nptr為空字元串,那麼將返回0。特別注意,該函數要求被轉換的字元串是按十進制數理解的。atoi輸入的字元串對應數字存在大小限制(與int類型大小有關),若其過大可能報錯-1。

(2)數字轉換代碼c語言擴展閱讀:

C語言中數字轉化為字元串的方案:

使用sprintf函數來實現,如sprintf("%d", 123)可以得到字元串"123"。

sprintf指的是字元串格式化命令,主要功能是把格式化的數據寫入某個字元串中。sprintf 是個變參函數。使用sprintf 對於寫入buffer的字元數是沒有限制的,這就存在了buffer溢出的可能性。解決這個問題,可以考慮使用 snprintf函數,該函數可對寫入字元數做出限制。

C. 用c語言怎麼將整數轉換成字元串

1.int/float to string/array:

C語言提供了幾個標准庫函數,可以將任意類型(整型、長整型、浮點型等)的數字轉換為字元串,下面列舉了各函數的方法及其說明。

● itoa():將整型值轉換為字元串。

● ltoa():將長整型值轉換為字元串。

● ultoa():將無符號長整型值轉換為字元串。

● gcvt():將浮點型數轉換為字元串,取四捨五入。

● ecvt():將雙精度浮點型值轉換為字元串,轉換結果中不包含十進制小數點。

● fcvt():指定位數為轉換精度,其餘同ecvt()。

除此外,還可以使用sprintf系列函數把數字轉換成字元串,其比itoa()系列函數運行速度慢

2. string/array to int/float

C/C++語言提供了幾個標准庫函數,可以將字元串轉換為任意類型(整型、長整型、浮點型等)。

● atof():將字元串轉換為雙精度浮點型值。

● atoi():將字元串轉換為整型值。

● atol():將字元串轉換為長整型值。

● strtod():將字元串轉換為雙精度浮點型值,並報告不能被轉換的所有剩餘數字。

● strtol():將字元串轉換為長整值,並報告不能被轉換的所有剩餘數字。

● strtoul():將字元串轉換為無符號長整型值,並報告不能被轉換的所有剩餘數字。

C語言實現:

#include

#include

void itoa (int n,char s[]);

//atoi 函數:將s轉換為整形數

int main(void )

{

int n;

char s[100];

printf("Input n: ");

scanf("%d",&n);

printf("the string : ");

itoa (n,s);

return 0;

}

void itoa (int n,char s[])

{

int i,j,sign;

if((sign=n)<0)//記錄符號

n=-n;//使n成為正數

i=0;

do{

s[i++]=n%10+'0';//取下一個數字

}

while ((n/=10)>0);//刪除該數字

if(sign<0)

s[i++]='-';

s[i]='';

for(j=i;j>=0;j--)//生成的數字是逆序的,所以要逆序輸出

printf("%c",s[j]);

}

拓展資料

C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。

盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標准規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。

二十世紀八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標准局為C語言制定了一套完整的美國國家標准語法,稱為ANSI C,作為C語言最初的標准。目前2011年12月8日,國際標准化組織(ISO)和國際電工委員會(IEC)發布的C11標準是C語言的第三個官方標准,也是C語言的最新標准,該標准更好的支持了漢字函數名和漢字標識符,一定程度上實現了漢字編程。

C#是微軟公司發布的一種面向對象的、運行於.NETFramework之上的高級程序設計語言。並定於在微軟職業開發者論壇(PDC)上登台亮相。C#是微軟公司研究員Anders Hejlsberg的最新成果。C#看起來與Java有著驚人的相似;它包括了諸如單一繼承、介面、與Java幾乎同樣的語法和編譯成中間代碼再運行的過程。但是C#與Java有著明顯的不同,它借鑒了Delphi的一個特點,與COM(組件對象模型)是直接集成的,而且它是微軟公司 .NET windows網路框架的主角。

D. C語言中如何將數字變成字元串啊

C語言提供了幾個標准庫函數,可以將任意類型(整型、長整型、浮點型等)的數字轉換為字元串。用itoa()函數將整數轉換為字元串。

itoa()函數有3個參數:第一個參數是要轉換的數字,第二個參數是要寫入轉換結果的目標字元串,第三個參數是轉移數字時所用的基數。在上例中,轉換基數為10。

#include <stdio.h>

int main()

{

int a[4]={1,2,3,4};

char b[4];

for(int i=0;i<4;i++)

b[i]=a[i];

for(int i=0;i<4;i++)

printf("%c",b[i]);

return 0;

}

字元串在存儲上類似字元數組

它每一位單個元素都是能提取的,字元串的零位是它的長度,如s[0]=10,這提供給我們很多方便,例如高精度運算時每一位都能轉化為數字存入數組。

通常以串的整體作為操作對象,如:在串中查找某個子串、求取一個子串、在串的某個位置上插入一個子串以及刪除一個子串等。

兩個字元串相等的充要條件是:長度相等,並且各個對應位置上的字元都相等。設p、q是兩個串,求q在p中首次出現的位置的運算叫做模式匹配。串的兩種最基本的存儲方式是順序存儲方式和鏈接存儲方式。

以上內容參考:網路-字元串

E. 求C語言中數制轉換代碼

四、源程序清單
/* 用 途: 2~36之間的各種數制的數任意轉換 */
/********************************************************/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>

/* 顯示幫助信息 */
void help()
{
printf("\nUsage : Translate the number between two number systems\n");
printf("Syntex: TNS <number> <radix1> <radix2>\n");
exit(0);
}

/* 顯示錯誤信息 */
void printerror(errno,num,base1)
char errno,*num,*base1;
{
switch (errno) {
case 1 : printf("\nError : Origin number %s(%s) is valid !!!\n",num,base1);
break;
case 2 : printf("\nError : radix (%s) is invalid !!!\n%s\n",base1,
"Correct : radix>=2 and radix <=36");
break;
}
help();
}

/* 數制轉換函數 */
void transnum(num,base1,base2)
char *num,*base1,*base2;
{
int i,k,l,m,j,ibase1,ibase2;
long inum=0;
char temp[20];
double r=0;
i = strlen(num); /* 數值的長度 */
ibase1 = atoi(base1); /* 數基1 */
if ((ibase1<2) || (ibase1>36)) printerror(2,"",base1); /* 有效嗎? */
ibase2 = atoi(base2); /* 數基2 */
if ((ibase2<2) || (ibase2>36)) printerror(2,"",base2); /* 有效嗎? */
for (j=0;j<i;j++) {
r = pow(ibase1,i-j-1); /* 計算數基的冪指數 */
if (ibase1<=10) l = '9' - (10 - ibase1); /* 計算有效的數范圍 */
else {
m = 'a' + (ibase1 - 11);
l = '9';
}
if ((num[j]>=48) && (num[j]<=l)) /* 求每位數字的十進制值 */
k = num[j]-48;
else if (ibase1>10) {
/* 求每個字母所代表的十進制值 */
if ((num[j]>='A') && (num[j]<=m - 32))
k = num[j] - 'A'+10;
else if ((num[j]>='a') && (num[j]<=m))
k = num[j] - 'a'+10;
else printerror(1,num,base1);
}
else printerror(1,num,base1);
inum += k * (int) r; /* 累加計算結果 */
}
/* 輸出轉換結果 */
printf("%s(%d) = %s(%d)\n",num,ibase1,ltoa(inum,temp,ibase2),ibase2);
}

/* 主程序 */
main(argc,argv)
int argc;
char *argv[];
{
static char num[10],base1[10],base2[10];
printf("(TNS)Translator of Number System 1.0 Copyright (c) 1995 Dong Zhanshan\n");
switch (argc) {
case 1:
case 2:
case 3: help();
break;
case 4: strcpy(num,argv[1]);
strcpy(base1,argv[2]);
strcpy(base2,argv[3]);
transnum(num,base1,base2);
}
}

F. C語言編寫程序,輸入一個字元,如果是數字字元,則轉換成對應的數字

1、新建一個工程和.c文件 ,輸入頭文件和主函數。

G. C語言如何將數字字元『0』到9轉化為數字

可以直接使用字元『0』減去數字即可轉化。

示例如下:

#include<stdio.h> int main() {

char c=『0』;

intnum=0;

num= int(c - '0');}

用函數atoi可以把字元轉為數字。

#include<stdio.h> int main() {

char c='0';

int num =aroi(c);

return 0;}

H. 把數字0~9轉換為a~j的C語言代碼

int main() {

char s[80];

int n;

printf("Input a string: ");

gets(s);

for (n=0;s[n]!='';n++)

printf("%c",s[n]-'0'+'a');

printf(" ");

I. C語言如何將一個數字組成的字元串轉變成十進制數

辦法很多,提供三種供參考。

一、直接使用庫函數atoi將數字字元串轉換成十進制整數。代碼如下:

#include"stdio.h"
#include"stdlib.h"//調用庫函數atoi要包含這個文件
intmain(intargc,char*argv[]){
chara[]="478167831";
printf("%d ",atoi(a));//直接調用atoi將a轉換為十進制整數
return0;
}

二、用庫函數sscanf直接將數組中的數字字元串讀入十進制整型變數。代碼如下:

#include"stdio.h"
intmain(intargc,char*argv[]){
chara[]="478167831";
intx;
sscanf(a,"%d",&x);//調用sscanf,讀入時自動轉換為int型並由%d控制以十進制賦給變數x
printf("%d ",x);//輸出
return0;
}

三、自行編寫轉換代碼:

#include"stdio.h"
intmain(intargc,char*argv[]){
chara[]="478167831";
intx,i;
for(x=i=0;a[i];(x*=10)+=a[i++]-'0');//字元與數字的關系是"字元值-'0'==同名數字"
printf("%d ",x);//輸出
return0;
}

上述三代碼的輸出結果如下圖:

J. 如何用C語言將一個十六進制數字轉換為十進制

需要准備的材料分別有:電腦、C語言編譯器。

1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。