C语言字符转换为数字 如何用C语言将字符型数字转化成数值型数字

c\u8bed\u8a00\u6570\u5b57\u548c\u5b57\u7b26\u7684\u76f8\u4e92\u8f6c\u6362

#include "stdio.h"
#include "math.h"
main()
{
char change(int x,int n);
int x,i,j;
char s[8],y;
printf("\u8bf7\u8f93\u5165\u6574\u6570:");
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--)//\u7531\u4e8e\u5b57\u7b26\u5b58\u50a8\u5230\u5b57\u7b26\u6570\u7ec4\u65f6\u987a\u5e8f\u4e0e\u539f\u6765\u76f8\u53cd\uff0c\u6545\u5728\u6b64\u5c06\u5b57\u7b26\u987a\u5e8f\u5012\u8f93
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);
}

\u5728C/C++\u8bed\u8a00\u4e2d\u6ca1\u6709\u4e13\u95e8\u7684\u5b57\u7b26\u4e32\u53d8\u91cf
\u901a\u5e38\u7528\u5b57\u7b26\u6570\u7ec4\u6765\u5b58\u653e\u5b57\u7b26\u4e32\u3002\u5b57\u7b26\u4e32\u662f\u4ee5\u201c\0\u201d\u4f5c\u4e3a\u7ed3\u675f\u7b26\u3002C/C++\u63d0\u4f9b\u4e86\u4e30\u5bcc\u7684\u5b57\u7b26\u4e32\u5904\u7406\u51fd\u6570\uff0c\u4e0b\u9762\u5217\u51fa\u4e86\u51e0\u4e2a\u6700\u5e38\u7528\u7684\u51fd\u6570\u3002
\u5b57\u7b26\u4e32\u662f\u9762\u8bd5\u7684\u91cd\u70b9\u8003\u67e5\u90e8\u5206\u7684\u76f8\u5173\u77e5\u8bc6\uff0c\u901a\u8fc7\u8003\u67e5\u5b57\u7b26\u4e32\u7684\u76f8\u5173\u77e5\u8bc6\u53ef\u4ee5\u8003\u5bdf\u7a0b\u5e8f\u5458\u7684\u7f16\u7a0b\u89c4\u8303\u4ee5\u53ca\u7f16\u7a0b\u4e60\u60ef\u3002\u5e76\u4e14\u5176\u4e2d\u5305\u62ec\u4e86\u8bb8\u591a\u77e5\u8bc6\u70b9\uff0c\u4f8b\u5982\u5185\u5b58\u8d8a\u754c\u3001\u6307\u9488\u4e0e\u6570\u7ec4\u64cd\u4f5c\u7b49\u3002\u8bb8\u591a\u516c\u53f8\u5728\u9762\u8bd5\u65f6\u4f1a\u8981\u6c42\u5e94\u8058\u8005\u5199\u4e00\u6bb5\u590d\u5236\u5b57\u7b26\u4e32\u6216\u5b57\u7b26\u4e32\u5b50\u4e32\u64cd\u4f5c\u7684\u7a0b\u5e8f\u3002\u672c\u7ae0\u5217\u4e3e\u4e86\u4e00\u4e9b\u4e0e\u5b57\u7b26\u4e32\u76f8\u5173\u7684\u9762\u8bd5\u9898\uff0c\u6709\u4e9b\u9898\u76ee\u8981\u6c42\u8f83\u9ad8\u7684\u7f16\u7a0b\u6280\u5de7\u3002
\u4ee5\u4e0a\u5185\u5bb9\u53c2\u8003\uff1a\u767e\u5ea6\u767e\u79d1-\u5b57\u7b26\u4e32

\u7528\u5faa\u73af\uff0c\u4e00\u4e2a\u5b57\u7b26\u4e00\u4e2a\u5b57\u7b26\u7684\u8f6c\u5316\uff0c\u8f6c\u5316\u65b9\u6cd5\u6bd4\u5982\uff1a'1' - '0' = 1\u3002\u6bcf\u4e00\u4e2a\u5143\u7d20\u51cf\u53bb'0'\uff0c\u5f97\u5230\u5bf9\u5e94\u7684\u6570\u503c\u3002\u518d\u7528\u4e58\u4ee510\u6765\u64cd\u4f5c\u5c31OK\u3002

  1. 如果你的字符串里只有一个字符,即只有 a[0] = '0',没有 a[1]、a[2] 等,那么用 a[0] - '0' 就可以得到整数 0

  2. 如果你的字符串里不只一个字符,那么要看它到底能不能转换成 0,比如 "000" 就可以转换成 0,但 "012" 转换后得到 12,这个转换可以用标准库里的 atoi 函数。



取出每个数字字符,a[i]-'0'

  • C璇█涓庝箞灏嗕竴涓暣鏁瀛楃涓茶浆鎹负涓涓暟
    绛旓細include<stdio.h> //鎶婁竴涓暣鏁瀛楃涓茶浆鎹负涓涓暟銆俰ntascii_to_integer(char*string){ intvalue;value=0;//閫愪釜鎶婁竴涓暣鏁板瓧绗︿覆杞崲涓轰竴涓暟銆倃hile(*string>='0'&&*string<='9'){ value*=10;value+=*string-'0';string++;} //閿欒妫鏌ワ細濡傛灉鐢变簬閬囧埌涓涓潪鏁板瓧瀛楃鑰岀粓姝紝鎶婄粨鏋...
  • c璇█闂:灏鏁板瓧瀛楃涓(濡傗1234鈥)杞崲涓鏁板煎瀷鏁版嵁鎬庝箞瀹炵幇鍟奯鐧 ...
    绛旓細浠g爜绀轰緥濡備笅锛歩nclude<stdio.h> int fun(char*p){ int sum=0;while(*p!='\0'){ sum=10*sum+*p-'0';p++;} return sum;} void main(){ char str[20];int num;gets(str);num=fun(str);printf("%d\n",num);}
  • C璇█绋嬪簭:杈撳叆涓涓瓧绗,濡傛灉鏄鏁板瓧瀛楃,鎶婂畠杞崲鎴愮浉瀵瑰簲鐨勬暟瀛楀苟杈撳嚭...
    绛旓細1銆佹柊寤轰竴涓伐绋嬪拰.c鏂囦欢 锛岃緭鍏ュご鏂囦欢鍜屼富鍑芥暟銆2銆佸0鏄庤璋冪敤鐨勫嚱鏁帮紝瀹氫箟鍙橀噺绫诲瀷銆3銆佽緭鍏ユ暣鏁般4銆佺敤涓涓猧f璇彞鍘诲垽鏂暣鏁版槸鍚︿负璐熸暟锛岃嫢涓鸿礋鏁板垯鐢╬utchar鍑芥暟杈撳嚭涓涓礋鍙枫5銆佽皟鐢ㄤ竴涓嚱鏁般6銆佸畾涔夊嚱鏁扮殑杩斿洖绫诲瀷鍜屽舰鍙傜被鍨嬨7銆侀氳繃if璇彞鍒ゆ柇璇ユ暟鏄惁浠呭墿涓浣嶆暟锛岃嫢涓嶆槸鍒欐墽琛宔lse璇彞銆8...
  • 鍦C璇█涓,'1'琛ㄧず浠涔?
    绛旓細鍦C璇█涓紝'1'琛ㄧず瀛楃1锛堝瓧绗﹀瀷甯搁噺锛夛紱 1琛ㄧず鏁板瓧1锛堟暟瀛楀瀷甯搁噺锛夈備袱鑰呯殑鍏崇郴涓猴細1='1' - '0'; // 鍗冲皢瀛楃1杞崲涓烘暟瀛1 涓よ呯殑鍖哄埆浜庤仈绯诲彲浠ラ氳繃涓嬮潰鐨勭▼搴忔鏉ヨ鏄庯細char ch1='1'; // 灏嗗瓧绗'1'璧嬪肩粰瀛楃鍙橀噺ch1char ch2=1; // 灏咥SCII鐮佸间负1鐨勫瓧绗﹁祴鍊肩粰瀛楃鍙橀噺ch...
  • C璇█鎬庝箞鎶瀛楃涓茶浆鎹负鍙互鐢ㄤ簬璁$畻鐨鏁板瓧
    绛旓細锛1锛変娇鐢ㄥ父鐢ㄦ爣鍑嗗嚱鏁板簱stdlib褰撲腑鐨勫瓧绗︿覆杞崲鍑芥暟锛屽彲浠ユ妸鍚勭绫诲瀷鐨瀛楃涓茶浆鎹负鐩稿簲绫诲瀷鐨鏁板瓧銆傦紙2锛変娇鐢ㄨ緭鍏ヨ緭鍑烘爣鍑嗗嚱鏁板簱stdio褰撲腑鐨剆scanf鍑芥暟銆傜敤鏍囧噯搴撲腑鐨剆scanf鍑芥暟锛堝叾涓牸寮忔帶鍒跺瓧绗︾殑浣跨敤鏂规硶鍜宻canf涓鑷达紝%d璇诲崄杩涘埗鏁存暟锛%x璇16杩涘埗鏁存暟锛夈備緥濡傦細char s[] = {"92283976 73b1c080 1e...
  • C璇█:鎶鏁板瓧瀛楃涓茶浆鎹鎴愭暣鍨嬫暟瀛
    绛旓細绋嬪簭濡備笅锛氳嫢杈撳叆瀛楃涓"ab56cd87"锛屽垯杈撳嚭缁撴灉锛氫互%d鏍煎紡杈撳嚭鍗佽繘鍒舵暣鏁5687锛涜嫢杈撳叆瀛楃涓"-ab56cd87"锛屽垯杈撳嚭缁撴灉锛氫互%d鏍煎紡杈撳嚭鍗佽繘鍒舵暣鏁-5687銆
  • c璇█ 瀛楁瘝濡備綍杞崲涓烘暟瀛
    绛旓細include<stdio.h> include<math.h> main(){ char str[1024];int i;printf("CopyRight: 2010 [email protected] \n");printf("Please input string:\n");gets(str);for (i=0;i < strlen(str);i++){ if (str[i] != ' ')printf("%d",str[i] - 96);else printf(" ");...
  • c璇█char鍨瀛楃涓茶浆鎹鎴恑nt鍨嬪瓧绗︿覆
    绛旓細1銆佹妸char鍨嬭浆鎹㈡垚int绫诲瀷銆俧or(int i=0;i<str.length();i++){ char temp_char=str.charAt(i);//鎶瀛楃杞崲鎴鏁板瓧鏂规硶涓 int temp_int=temp_char-'0';//鎶婂瓧绗﹁浆鎹㈡垚鏁板瓧鏂规硶浜 int temp_int=Integer.parseInt(String.valueOf(temp_char));} 绗竴绉嶅姙娉曪細閫氳繃charAt(i)锛屾妸瀛楃涓茬殑...
  • 鎬庢牱鐢C璇█绋嬪簭鎶婂瓧姣嶈浆鍖涓烘暟瀛?
    绛旓細姣忎竴涓瓧姣嶉兘瀵瑰簲涓涓狝SCII鍊硷紝鍙浣犲湪杈撳嚭鐨勬椂鍊欐帶鍒朵竴涓嬭緭鍑烘牸寮忓氨鍙互浜嗐俢harch;scanf(%c,&ch);printf("%d",ch);娉ㄦ剰锛氫笂闈㈢殑鍙浣犺緭鍑烘牸寮忔槸int鐨勶紝灏辫兘姝e父杈撳嚭ASCII鍊笺1銆佷緥濡傦細2銆佸彲浠ヨ嚜宸辩紪鍐欎竴涓杞崲鍑芥暟锛
  • 鍐C璇█閲,濡備綍灏嗕竴琛瀛楃涓茶浆鎹鎴鏁板瓧??
    绛旓細include define n 10 //缂栧啓涓涓嚱鏁板皢涓涓暣鏁扮殑鍚勪綅鏁版彁鍙栧嚭鏉ワ紝骞跺皢鍏杞崲鎴鏁板瓧瀛楃涓锛//鍦ㄤ富鍑芥暟涓緭鍑鸿瀛楃涓诧紝涓嶇敤鎸囬拡锛岀敤绠鍗曠偣鐨c璇█銆俰nt main(){ int number_int,i,str_len;char number_str[n],swap_temp;scanf("%d",&number_int);i=0;while(number_int){ number_str[i...
  • 扩展阅读:c语言将vkwc转换为数字 ... c++替换指定字母为数字 ... c语言转义字符对照表 ... 字符转化为数字c+ ... c语言字符转换为ascii码 ... c语言一个&和两个& ... c将数字转换为字符串 ... c++字符串转成数字 ... c语言怎么将数字转成字符 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网