c語言中字元串和整數小數相互轉換的函數以及頭文件

函數名: atof 源
功 能: 把字元串轉換成浮點數
用 法: double atof(const char *nptr);
程序例:
#include <stdlib.h>
#include <stdio.h>
int main()
{ float f;
char *str = "12345.67";
f = atof(str);
printf("string = %s float = %f\n", str, f);
return 0;
}

② C語言:把數字字元串轉換成整型數字

程序如下:

若輸入字元串"ab56cd87",則輸出結果:以%d格式輸出十進制整數5687;若輸入字元串"-ab56cd87",則輸出結果:以%d格式輸出十進制整數-5687。

(2)c語言整數與字元的轉換擴展閱讀:

C語言高效編程技巧:

一:以空間換時間

計算機程序中最大的矛盾是空間和時間的矛盾,那麼,從這個角度出發逆向思維來考慮程序的效率問題

二:數學方法解決問題

數學是計算機之母,沒有數學的依據和基礎,就沒有計算機發展,所以在編寫程序的時候,採用一些數學方法會對程序的執行效率有數量級的提高。

三:使用位操作

實現高效的C語言編寫的第三招----使用位操作,減少除法和取模的運算。

在計算機程序中,數據的位是可以操作的最小數據單位,理論上可以用「位運算」來完成所有的運算和操作。一般的位操作是用來控制硬體的,或者做數據變換使用,但是,靈活的位操作可以有效提高程序運行的效率。

③ c語言 字元型轉換成整型

字元串轉成整來型可以使用atoi函數。自

函數原型:int atoi(const char *nptr);

功能:把字元串轉換成整型數。

參數nptr字元串,如果第一個非空格字元存在,是數字或者正負號則開始做類型轉換,之後檢測到非數字(包括結束符 ) 字元時停止轉換,返回整型數。否則,返回零。

(3)c語言整數與字元的轉換擴展閱讀:

整型轉換成字元型

使用itoa函數。原型:extern char *itoa(int i);

參考代碼

#include<stdio.h>

#include<stdlib.h>

intmain()

{

inta=125;

charb[50];

printf("%s ",itoa(a,b,10));//把10進制的125轉成字元並輸出。

return0;

}

/*

④ C語言整型數組與字元數組的轉換

整形數組存放的是整數,字元數組存放的是字元串。

⑤ [C語言]怎樣把整型轉變為字元型

使用itoa函數。

原型:extern char *itoa(int i);

參考代碼:

#include<stdio.h>

#include<stdlib.h>

intmain()

{

inta=125;

charb[50];

printf("%s ",itoa(a,b,10));//把10進制的125轉成字元並輸出。

return0;

}

/*


(5)c語言整數與字元的轉換擴展閱讀:

注意事項

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

itoa 並不是一個標準的C函數,它是Windows特有的,如果要寫跨平台的程序,請用sprintf。

標准庫中有sprintf,功能比這個更強,用法跟printf類似:

⑥ C語言編程題,數字與字元怎麼轉換

#include "stdio.h"
#include "math.h"
main()
{
char change(int x,int n);
int x,i,j;
char s[8],y;
printf("請輸入整數:");
scanf("%d",&x);
for(i=0;i<20;i++)
{
y=change(x,i);
if(y=='\0')
{
s[i]='\0';
break;
}
s[i]=y;
}
for(i=7;i>=0;i--)//由於字元存儲到字元數組時順序與原來相反,故在此將字元順序倒輸
if(s[i]=='\0')
for(j=i-1;j>=0;j--)
printf("%c",s[j]);
printf("\n");
}
char change(int x,int n)
{
int i;
char g;
for(i=0;i<=n;i++)
{
switch(x%10)
{
case 0 :g='0';break;
case 1 :g='1';break;
case 2 :g='2';break;
case 3 :g='3';break;
case 4 :g='4';break;
case 5 :g='5';break;
case 6 :g='6';break;
case 7 :g='7';break;
case 8 :g='8';break;
case 9 :g='9';break;
}
if(x==0)
{
g='\0';
break;
}
x=x/10;
}
return(g);
}
代碼比較渣,但是大概能夠實現,數字范圍是int型上限

⑦ C語言一維數組數字字元和整數的轉換

ch為字元時,ch-'0'的差是一個數,這個差對應的就是數字。
例如
ch='0',那麼ch-'0'='0'-'0'=0,結果是0
ch='1',那麼ch-'0'='1'-'0'=1,結果是1
…………
依次類推。

⑧ C語言編程題 數字與字元的轉換

C語言字元中的數字0-9是用Ascii碼表示的,如果已知一個字元表示的數字,那麼用其減去字內符'0'的Ascii碼即可。比如,已知容 char a是用字元表示的數字,即a滿足以下條件:

a>='0'&&a<='9'

那麼用下列命令就可將其轉化為數字

a=a-'0';

具體看這個這個例了,將一個字元串數組轉化為數字。

#include<stdio.h>
#include<string.h>
#include<math.h>

intmain(void)
{
chara[]="123563";
intsize;
inti;
intresult=0;

size=strlen(a);
for(i=0;i<size;i++)
if(a[i]>='0'&&a[i]<='9')
result+=(a[i]-'0')*pow(10,(size-i-1));
printf("%d ",result);
}

⑨ C語言中怎麼把一個整數轉換成字元串或字元

atoi: 把字元串轉換成整型數
itoa:把整數轉換為字元串
#include <stdlib.h>
#include <stdio.h>
{
int main(void)
int number = 12345;
char string[25];
itoa(number, string, 10);
printf("integer = %d string = %s\n", number, string);
return 0;
}