㈠ c语言如何将一个数字组成的字符串转变成十进制数
办法很多,提供三种供参考。
一、直接使用库函数atoi将数字字符串转换成十进制整数。代码如下:
#include"stdio.h"
#include"stdlib.h"//调用库函数atoi要包含这个文件
intmain(intargc,char*argv[]){
chara[]="478167831";
printf("%d ",atoi(a));//直接调用atoi将a转换为十进制整数
return0;
}
二、用库函数sscanf直接将数组中的数字字符串读入十进制整型变量。代码如下:
#include"stdio.h"
intmain(intargc,char*argv[]){
chara[]="478167831";
intx;
sscanf(a,"%d",&x);//调用sscanf,读入时自动转换为int型并由%d控制以十进制赋给变量x
printf("%d ",x);//输出
return0;
}
三、自行编写转换代码:
#include"stdio.h"
intmain(intargc,char*argv[]){
chara[]="478167831";
intx,i;
for(x=i=0;a[i];(x*=10)+=a[i++]-'0');//字符与数字的关系是"字符值-'0'==同名数字"
printf("%d ",x);//输出
return0;
}
上述三代码的输出结果如下图:
㈡ c语言四则运算输入字符为10的时候怎么办
把10转换成字符串的形式
㈢ C语言 输入一个长度为10的字符串,
#include<stdio.h>
intmain()
{
charpsw[11];
inti;
printf("输入10个字符:");
scanf("%s",psw);
printf("输出:
");
for(i=0;i<10;i++)
{
if((psw[i]>='a'&&psw[i]<='z')||(psw[i]>='A'&&psw[i]<='Z'))
{
if(i==2)
psw[i]='E';
elseif(i==7)
psw[i]='e';
else
psw[i]=psw[i]<=90?psw[i]+32:psw[i]-32;//大写变小写,小写变大写
}
}
psw[10]=0;
printf("%s
",psw);
return0;
}
㈣ c语言编程 将输入的2进制字符串转换为10进制数输出
数组s已经定义长度,strlen的结果就是100,另外换算的时候语句可以优化
㈤ C语言,把数字字符转换成十进制整数。
#include<cstdio>
intmain()
{
chara;
scanf("%c",&a);
printf("%d",a-'0');
return0;
}
㈥ c语言中如何将8进制字符串转化成10进制
先化为二进制,再化成十进制,不对弄错了,这不是C语言,用printf(“%d",a)输出十进制,printf(”%o",a)输出八进制,printf(”%x",a)输出十六进制
㈦ c语言中,将字符转换为十进制的程序
字符转为10进制 用sscanf或者用atoi均可
以字符串中, 本身为10进制字符串为例
用sscanf程序如下:
#include<stdio.h>
intmain()
{
chars[20];
inti;
scanf("%s",s);
sscanf(s,"%d",&i);
printf("%d ",i);
return0;
}
㈧ c语言中如何将16进制字符串转化成10进制整数
1、输入字符串
3、反转字符串,并赋给字符串数组A
2、循环检测数组A,依次检测1每个字符
5、判断当前检测的字符,如果属于ABCDEF,则依次把ABCDEF
转换为11....16,否则不做任何操作
6、累加,当前循环次数的16次方乘以当前字符的数值大小。
7、输出总累加值就是10进制整数