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

c語言數值轉換函數

發布時間: 2022-12-23 01:18:21

c語言中怎樣調用函數將十進制轉換成二進制

1、打開visualC++6.0-文件-新建-文件-C++SourceFile。

Ⅱ C語言有沒有函數可以直接把數字字元串轉換整型或浮點型的

#include
double
atof(
const
char
*str
);
功能:將字元串str轉換成一個雙精度數值並返回結果。
參數str
必須以有效數字開頭,但是允許以「e」或「e」除外的任意非數字字元結尾。例如:
x
=
atof(
"42.0is_the_answer"
);
x的值為42.0.
#include
int
atoi(
const
char
*str
);
功能:將字元串str轉換成一個整數並返回結果。參數str
以數字開頭,當函數從str
中讀到非數字字元則結束轉換並將結果返回。例如,
i
=
atoi(
"512.035"
);
i
的值為
512.

Ⅲ 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中首次出現的位置的運算叫做模式匹配。串的兩種最基本的存儲方式是順序存儲方式和鏈接存儲方式。

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

Ⅳ c語言16進制轉換為10進制數的函數是什麼

方案一:

#include<stdio.h>#include<math.h>#include<string.h>intmain(){chars[50];scanf("%s",s);intt=strlen(s);longsum=0;for(inti=0;i<t;i++){if(s[i]>='A'&&s[i]<='Z')s[i]=int(s[i]-'A')+10+'0';sum+=((s[i]-'0')*(pow(16,t-1-i)));}printf("%ld ",sum);}

方案二:

#include<stdio.h>intmain(){chars[50];scanf("%s",s);intt;longsum=0;for(inti=0;s[i];i++){if(s[i]<='9')t=s[i]-'0';elset=s[i]-'A'+10;sum=sum*16+t;}printf("%ld ",sum);return0;}

Ⅳ C語言將數字轉換為字元型輸出(用函數)

可以使用sprintf函數實現功能。
sprintf的聲明為
int sprintf(char *dst, const char * format_str...);
其功能為:將...部分的參數,按照format_str的要求,輸入到dst中。
需要根據數字的類型,使用format_str。
如整型(int)的使用方式為
sprintf(buf, "%d", a);
如果a為123,那麼buf中的字元串為"123"。
常見的數字類型還有:
1 short, 用%h輸出;
2 long, 用%ld輸出;
3 float, 用%f輸出;
4 double, 用%lf輸出。

Ⅵ c語言中實現輸入一個數字字元,然後轉換成整數數字輸出.怎麼做

字元串轉整數可以有兩種方法:

1.使用c語言自帶的庫函數:atoi。

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

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

例如:

#include<stdlib.h>
#include<stdio.h>
intmain(void)
{
intn;
char*str="12345";
n=atoi(str);
printf("int=%d ",n);
return0;
}
/*
輸出:
int=12345
*/

2.可以自己編寫一個轉換函數:

#include<stdio.h>
#include<stdlib.h>
intatoi(char*s)
{
intt=0;
while(*s){
t=t*10+*s-'0';
s++;
}

return(t);
}
intmain()
{
chara[]="12345";
intn=atoi(a);
printf("n=%d",n);
return0;
}
/*
輸出:
n=12345
*/

Ⅶ 用c語言編寫函數,將輸入的十進制數轉換成十六進制數並輸出

//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
intmain(void){
unsignedn,i,k;
printf("Pleaseenterapositiveinteger... n=");
scanf("%d",&n);
printf("%d(10)=0x",n);
if(n){
for(i=0;(n&0xf0000000)==0;n<<=4,i++);
for(;i<8;i++){
k=n&0xf0000000;
(k>>=28)&=0x0f;
printf("%c",k<10?k+'0':k+0x37);
n<<=4;
}
}
elseprintf("0");
printf(" ");
return0;
}

Ⅷ c語言如何把數字轉化為字元串

C語言提供了幾個標准庫函數,可以將任意類型(整型、長整型、浮點型等)的數字轉換為字元串,下面列舉了各函數的方法及其說明。
● itoa():將整型值轉換為字元串。
● ltoa():將長整型值轉換為字元串。
● ultoa():將無符號長整型值轉換為字元串。
● gcvt():將浮點型數轉換為字元串,取四捨五入。
● ecvt():將雙精度浮點型值轉換為字元串,轉換結果中不包含十進制小數點。
● fcvt():指定位數為轉換精度,其餘同ecvt()。

Ⅸ 求c語言將十進制數轉換為16進制的函數

c語言將十進制數轉換為16進制的函數:

#include<stdio.h>

main()
{
int u10;
char u16[10];
int w=0,a,b,i;

printf("請輸入一個數字-->");
scanf("%d",&u10);
if(u10==0)
{
u16[0]='0';
w++;
}
else
{
a=u10;
while(a)
{
b=a%16;
if(b<10)
{
u16[w]='0'+b;
}
else
{
u16[w]='A'+b-10;
}
a=a/16;
w++;
}
}
printf(" ");
printf("%d(10)轉換為16進制數字為:",u10);
for(i=w-1;i>=0;i--)
{
printf("%c",u16[i]);
}
printf(" ");
}

(9)c語言數值轉換函數擴展閱讀:

十進制數轉換為二進制數方法

十進制數轉換為二進制數時,由於整數和小數的轉換方法不同,所以先將十進制數的整數部分和小數部分分別轉換後,再加以合並。

1. 十進制整數轉換為二進制整數 十進制整數轉換為二進制整數採用"除2取余,逆序排列"法。具體做法是:用2去除十進制整數,可以得到一個商和余數;再用2去除商,又會得到一個商和余數,如此進行,直到商為零時為止,然後把先得到的余數作為二進制數的低位有效位,後得到的余數作為二進制數的高位有效位,依次排列起來。

2.十進制小數轉換為二進制小數

十進制小數轉換成二進制小數採用"乘2取整,順序排列"法。具體做法是:用2乘十進制小數,可以得到積,將積的整數部分取出,再用2乘餘下的小數部分,又得到一個積,再將積的整數部分取出,如此進行,直到積中的小數部分為零,或者達到所要求的精度為止。

然後把取出的整數部分按順序排列起來,先取的整數作為二進制小數的高位有效位,後取的整數作為低位有效位。

Ⅹ C語言 int/float/double 數值轉成字元串的方法或者函數

對於int型,可以調用函數itoa。
char*itoa(int value,char*string,int radix);
功能為將任意類型的數字轉換為字元串。
int value 被轉換的整數,char *string 轉換後儲存的字元數組,int radix 轉換進制數,如2,8,10,16 進制等。

float和double類型沒有特定的轉換函數。

不過不論是float, double還是int,都可以通過sprintf函數進行轉換。
sprintf類似於printf,都是按照格式化字元串輸出參數到目標。不過printf是輸出到終端,而sprintf是輸出到第一個參數的字元串中。
定義
int i;
float f;
double d;
再定義字元串空間
char buf[100];
調用
sprintf(buf, "%d",i);
sprintf(buf, "%f",f);
sprintf(buf, "%lf",d);
就可以分別把int, float, double轉換成值對應的字元串。