c语言中实现输入一个数字字符,然后转换成整数数字输出.怎么做?

2024-11-18 08:27:24
推荐回答(4个)
回答1:

字符串转整数可以有两种方法:

1.使用c语言自带的库函数:atoi。

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

功能:把字符串转成整型数。

例如:

#include 
#include  
int main(void)
{
    int n;
    char *str = "12345";
    n = atoi(str);
    printf("int=%d\n",n);
    return 0;
}
/*
输出:
int = 12345
*/

2.可以自己编写一个转换函数:

#include 
#include 
int atoi(char *s)
{
int t=0;
while(*s){
t=t*10+*s-'0';
s++;
}

return(t);
}
int main ()
{
char a[]="12345";
int n = atoi(a);
printf("n=%d ",n);
return 0;
}
/*
输出:
n = 12345
*/

回答2:

char c;
int n;
c = getchar();
n = c;
printf(%d,n);
/*也可以直接输出c*/
printf(%d,c);

如果要数字对应输出就这样写
char c;
int n;
c = getchar();
n = c-48;/*48是0的ascii码值*/
printf(%d,n);

回答3:

我只知道数据类型能相互转换,但貌似字符和整形无法用一句程序转换吧,如果你想写多句程序来转换,可直接用switch语句,对'0'-'9'进行判断,直接输出0-9,不知道这样行不行的通。

回答4:

#include