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

C語言數值轉字元串

發布時間: 2023-06-15 13:25:49

A. 用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網路框架的主角。

B. C語言中,如何將一個數組中的數值轉換成字元串輸出

#include<stdio.h>

void IntToStr(int *i, char *c, int len)

{//i為整形數組,c為要存放字元串的數組,len為整形數組元素個數

int k;

char tmp[10];

for(k=0;k<len;k++)

{

itoa(i[k],tmp,10);

strcat(c,tmp);

int main()

或:

#include <string.h>

int main() // 這里為了方便直接用main函數

{

char array[] = { 'h', 'e', 'l', 'l', 'o' };

/* 需要注意的是,這里沒有終結符,故需要知道數組的 */

/* 大小(數組的大小是編譯時常量)*/

char *dest_str; // 目標字元串

dest_str = (char *)malloc(sizeof(char) * (sizeof(array) + 1));

/* 為字元串分配堆空間 */

strncpy(dest_str, array, sizeof(array));

// 用C標准庫函數strncpy拷貝字元

return 0;

}

(2)C語言數值轉字元串擴展閱讀:

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

通常以串的整體作為操作對象,如:在串中查找某個子串、求取一個子串、在串的某個位置上插入一個子串以及刪除一個子串等。兩個字元串相等的充要條件是:長度相等,並且各個對應位置上的字元都相等。設p、q是兩個串,求q在p中首次出現的位置的運算叫做模式匹配。串的兩種最基本的存儲方式是順序存儲方式和鏈接存儲方式。

C. C語言 將輸入整數轉換成字元串輸出

在這里先假設n的值為123。
*s = '0'+i%10; i%10相當於取i取的個位數,即數字3. 字元0 加上 整數3就是字元3.(這個要弄明白哦)。所以字元s的字為3.
itoa(i/10,s-1); i/10即 123/10 = 12. 迭代函數, 字元指針s後退一位,s-1 = 2;
同理推出 s-2 = 1.itoa(n,str+5); str的長度是7。
即:str[0],str[1],str[2],str[3],str[4],str[5],str[6].
str + 5 即把地址指向 str[5].
看函數itoa(),
n為 123 時
str[0] = '';
str[1] = '';
str[2] = '';
str[3] = '1';
str[4] = '2';
str[5] = '3';
str[6] = '';

D. 求助:怎麼用C語言把一個整數轉換為字元串,如:整數123轉換為字元串「123」

1、一位的整型數轉換為字元。首先,定義一個整型變數,保存轉換的一位整型數值。

E. C語言中,如何將一個數組中的數值轉換成字元串輸出

1、首先寫上注釋內容,如下圖所示。

F. c語言如何將數值轉化為字元串

char str[100];

int n=123;

sprintf(str,"%d",n);//庫函數

printf("%s",str);

下面是

#include<stdio.h>

#include<string.h>

int main()

{

int n,k=0;

int num[50]={0};

char str[50]={''};

scanf("%d",&n);

while(n)

{//先將n的各個位上的數取出,放入(int)數組num中

num[k]=n%10;

n/=10;

k++;

}

for(int j=0,i=k-1;i>=0;j++,i--)

{//num[i]+'0'->強制轉換(char)

// 然後存入(char)數組str中

str[j]=(char)(num[i]+'0');

}

str[k]='';//尾部加個結束符,可以整串輸出

printf("%s ",str);//整串輸出

for(int i=0;i<strlen(str);i++)//單個輸出

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

return 0;

}