『壹』 c語言:把數字字元串轉換成整型數字
程序如下:
若輸入字元串"ab56cd87",則輸出結果:以%d格式輸出十進制整數5687;若輸入字元串"-ab56cd87",則輸出結果:以%d格式輸出十進制整數-5687。
(1)c語言長整型格式轉化擴展閱讀:
C語言高效編程技巧:
一:以空間換時間
計算機程序中最大的矛盾是空間和時間的矛盾,那麼,從這個角度出發逆向思維來考慮程序的效率問題
二:數學方法解決問題
數學是計算機之母,沒有數學的依據和基礎,就沒有計算機發展,所以在編寫程序的時候,採用一些數學方法會對程序的執行效率有數量級的提高。
三:使用位操作
實現高效的C語言編寫的第三招----使用位操作,減少除法和取模的運算。
在計算機程序中,數據的位是可以操作的最小數據單位,理論上可以用「位運算」來完成所有的運算和操作。一般的位操作是用來控制硬體的,或者做數據變換使用,但是,靈活的位操作可以有效提高程序運行的效率。
『貳』 C語言中無符號長整型數的輸入輸出格式是什麼
C語言中無符號長整型數的輸入輸出格式%u。
示例:
intmain()
{
unsignedinta;
intb=-1;
a=b;
printf(「%u」,a);
}
(2)c語言長整型格式轉化擴展閱讀
c語言printf()輸出格式
%p指針
%s字元串
%%"%"
%a(%A)浮點數、十六進制數字和p-(P-)記數法(C99)
%c字元
%d有符號十進制整數
%f浮點數(包括float和doulbe)
%e(%E)浮點數指數輸出[e-(E-)記數法]
%g(%G)浮點數不顯無意義的零"0"
%i有符號十進制整數(與%d相同)
%o八進制整數e.g.0123
%x(%X)十六進制整數<xml:namespaceprefix=st1/>()e.g.0x1234
『叄』 在C語言中,長整型轉化為短整形怎麼轉化已80000為例,求詳解,
用十六進製表示比較好說:
80000轉化成十六進制就是0x13880
兩位十六進制佔一個位元組所以需要三個位元組分別存放01 38 80,短整型只有兩個位元組所以只有低位的38 80,所以如果80000轉成短整型的話值為0x3880即十進制的14460。
『肆』 用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]='