㈠ 怎樣用c語言程序把字母轉化為數字
#include<stdio.h>
#include<stdlib.h>
intmain()
{
chara=0,b;
printf("===========start============ ");
printf("字母轉成ASCII,輸入0退出程序 ");
do
{
printf("輸入一個字母:");
scanf("%s",&a);
if(a!='0')
printf("對應ASCII碼值:%d ",a);
else
printf("退出程序 ",a);
}while(a!='0');
printf("===========end============== ");
return0;
}
㈡ 在C語言里怎麼把字元轉化為數字呢
可以用atoi函數,是將字元串轉換成函數,在<stdlib.h>裡面,原型是int atoi(const char *nptr);
你可以在madn裡面查到,我給你把結果弄下來吧,還有atol是轉換為長整數,atof是轉換為浮點數,這個是上面的例子
Example
/* ATOF.C: This program shows how numbers stored
* as strings can be converted to numeric values
* using the atof, atoi, and atol functions.
*/
#include <stdlib.h>
#include <stdio.h>
void main( void )
{
char *s; double x; int i; long l;
s = " -2309.12E-15"; /* Test of atof */
x = atof( s );
printf( "atof test: ASCII string: %s\tfloat: %e\n", s, x );
s = "7.8912654773d210"; /* Test of atof */
x = atof( s );
printf( "atof test: ASCII string: %s\tfloat: %e\n", s, x );
s = " -9885 pigs"; /* Test of atoi */
i = atoi( s );
printf( "atoi test: ASCII string: %s\t\tinteger: %d\n", s, i );
s = "98854 dollars"; /* Test of atol */
l = atol( s );
printf( "atol test: ASCII string: %s\t\tlong: %ld\n", s, l );
}
Output
atof test: ASCII string: -2309.12E-15 float: -2.309120e-012
atof test: ASCII string: 7.8912654773d210 float: 7.891265e+210
atoi test: ASCII string: -9885 pigs integer: -9885
atol test: ASCII string: 98854 dollars long: 98854
㈢ c語言中如何將字元串格式數字轉換成數字格式
1、首先第一種轉換方式是:將字元串類型的轉換成數字類型的,這中方法轉換直接用to_number()進行轉換,具體的語法為to_number(str)就可以了。
㈣ 編寫一個c語言程序,將輸入的數字字元轉換成數字並輸出並輸出!謝謝
#include "stdio.h"
void main()
{
char c;
scanf("%c",&c);//輸入一個數字字元
if(c>='0' && c<='9'){ //若為0-9則進行處理
c-='0'; //將數字字元轉換為真正的數字值
printf("%d",c);//輸出數字值 這里用%d
}
else{
printf("please enter 0~9!\n");
}
}
㈤ C語言字元轉數字
功能:數字字元串轉整型int,去除高位0。
注意:不要輸入超出int范圍。
#include<stdio.h>
#include<string.h>
intpw10(intm);//計算10次方
intstr2int(char*nums);
intmain()
{
charnums[]="0103456";
intnum;
printf("原字元串:%s
",nums);
num=str2int(nums);
printf("轉成整型後的數字為:%d
",num);
return0;
}
intpw10(intm)//計算10次方
{
inti,mu=1;
if(m==0)
return1;
for(i=0;i<m;i++)
mu=mu*10;
returnmu;
}
intstr2int(char*nums)
{
char*p=nums;
intlen=strlen(nums),i,m=0,sum=0;
while(1)//去高位0
{
if(*p=='0')
p++;
else
break;
}
for(i=len-1;&nums[i]>=p;i--)
sum=sum+(nums[i]-'0')*pw10(m++);
returnsum;
}
㈥ C語言如何把一個字元串轉換成數字
C語言中,可以使用atoi函數將字元串轉換為數字,如atoi("123")可以得到數字123。
atoi (表示 ascii to integer)是把字元串轉換成整型數的一個函數,應用在計算機程序和辦公軟體中。int atoi(const char *nptr) 函數會掃描參數 nptr字元串,會跳過前面的空白字元(例如空格,tab縮進)等。
如果 nptr不能轉換成 int 或者 nptr為空字元串,那麼將返回0。特別注意,該函數要求被轉換的字元串是按十進制數理解的。atoi輸入的字元串對應數字存在大小限制(與int類型大小有關),若其過大可能報錯-1。
(6)c語言中字元轉化為數字擴展閱讀:
C語言中數字轉化為字元串的方案:
使用sprintf函數來實現,如sprintf("%d", 123)可以得到字元串"123"。
sprintf指的是字元串格式化命令,主要功能是把格式化的數據寫入某個字元串中。sprintf 是個變參函數。使用sprintf 對於寫入buffer的字元數是沒有限制的,這就存在了buffer溢出的可能性。解決這個問題,可以考慮使用 snprintf函數,該函數可對寫入字元數做出限制。
㈦ c語言中如何將一個字元轉化為一個數
首先,字元就是數字,
金色潛鳥
說的很對,其實在計算機裡面,只有0和1,存儲字元的方法是先存儲字元的字形,就是在屏幕上怎麼顯示,就想像一下一張方格圖每個格子可以塗黑或者空著,那麼1代表黑色0代表空著,想要什麼字元就塗上一個什麼形狀,這么字形碼就形成了。
但是人們在運用的時候,感覺字形碼太大太麻煩,於是就建立了一張表,這就是最早的ASCii碼表,現在有256個字元,就有256組字形碼,然後對這些網格編碼,從一開始就是0000
0001到1111
1111每次加一,所以我們寫ASCII碼就對應了固定的字元,其實漢字日文之類也是這個原理,只不過更多了,那就多編一些碼就可以了,所以英文一位元組,漢字之類兩位元組,這就是最基本的原理,用法看
金色潛鳥
的就可以了。
㈧ 問大家一個C語言問題。下面的將字元轉換成數值是怎麼轉換的啊,看不懂,請大家幫幫忙啊,
num=num*10+(str[i]-'0');
這一句實現了字元串到數字的轉化。
首先:char型都有個ASCII碼值,str[i]-'0'就把數字者派字元便成了相應的數字值。
再者:num=num*10+每次讀到一個數字,就把num乘10,再加上這個數字,由於是從高位讀取的,就還原出了這個數。就首陵賀像23可以分解成:2*10+3一樣,逐步分解的反向操作,就合成了數字。
循環中其他語句都是為了判斷數字的汪戚正負符號。
再在if (flag==1) num=-num;的時候把正數變成負數。
㈨ C語言中怎麼將一個整數字元串轉換為一個數
#include<stdio.h>
//把一個整數字元串轉換為一個數。
intascii_to_integer(char*string)
{
intvalue;value=0;
//逐個把一個整數字元串轉換為一個數。
while(*string>='0'&&*string<='9'){
value*=10;
value+=*string-'0';
string++;
}
//錯誤檢查:如果由於遇到一個非數字字元而終止,把結果設置為0
if(*string!='