c语言itoa函数的用法 c语言中atof函数用法

C语言 编写函数itoa(int n,char *p)有2种方式实现,其中两种是使用系统函数,另一种是直接自己编写 。
下面的代码就是2种方式的实现,包括任意整数(2的31次方以内)都可以 。可自己选择需要的实现方式 。
1. 利用系统函数 。sprintf(str,"%d",value);str是转化存储的位置,%d表示十进制格式 , value是要转化的数字 。所以代码可以为:
char * itoa(int n, char * p)
{
sprintf(p, "%d", n);
return (p);
}
2. 自己编写 。由于计算方法是每次都除以10和对10取余数,余数以倒序的顺序排列就是结果,所以最佳方法是用递归函数(当然循环也可以,但需要最后再进行倒序) 。递归代码如下:
static int i = 0;
char * itostr(int n, char * p)//递归函数
{
if (n10)//递归结束条件
{
p[i] = n + '0';//当前数转换成字符放入字符串
}
else
{
itostr(n / 10, p);//递归调用
i++;//字符串索引+1
n %= 10;//计算当前值
p[i] = n + '0';//当前数转换成字符放入字符串
}
p[i+1] = '\0';//字符串结束标志
return (p);
}
char * itoa(int n, char * p)
{
i = 0;//初始化下标为0
itostr(n, p);
}
最后测试代码如下(以自己编为例,其余只要替换intoa函数中的代码内容即可):
#include stdio.h
static int i;
char * itostr(int n, char * p)//递归函数
{
if (n10)//递归结束条件
{
p[i] = n + '0';//当前数转换成字符放入字符串
}
else
{
itostr(n / 10, p);//递归调用
i++;//字符串索引+1
n %= 10;//计算当前值
p[i] = n + '0';//当前数转换成字符放入字符串
}
p[i+1] = '\0';//字符串结束标志
return (p);
}
char * itoa(int n, char * p)
{
i = 0;//初始化下标为0
itostr(n, p);
}
int main ()
{
int num;
char str[33];
printf ("Enter a number: ");
scanf ("%d",num);
itoa (num, str);
printf ("The number: %s\n", str);
return 0;
}
c语言的函数“itoa”有什么功能?功
能:
把一整数转换为字符串

法:
char
*itoa(int
value,
char
*string,
int
radix);
详细解释:itoa是英文integer
to
string
a(将整形数转化为一个字符串,并将值保存在a中)
的缩写.其中value为要转化的整数,
radix是基数的意思,即先将value转化为几进制的数,之后在保存在a
中.
作用:实现数制之间的转化
比较:ltoa,其中l是long
integer(长整形数)
备注:该函数的头文件是"stdlib.h"
程序例:
#include
stdlib.h
#include
stdio.h
int
main(void)
{
int
number
=
12345;
char
string[25];
itoa(number,
string,
10);///number为输入的整数 , string为输出转换的字符串 , 10
为以十进制输出
printf("integer
=
%d
string
=
%s\n",
number,
string);
return
0;
}
c语言中,函数itoa有什么功能,怎么用?itoa是广泛应用的非标准C语言扩展函数 。由于它不是标准C语言函数,所以不能在所有的编译器中使 用 。但是,大多数的编译器(如Windows上的)通常在stdlib.h头文件中包含这个函数 。在stdlib.h中与之有相反功能的函数是atoi 。功能:把一整数转换为字符串 。
用法
char *itoa(int value, char *string, int radix);
头文件: stdlib.h
程序例:
#include stdlib.h
#include stdio.h
int main()
{
int number = 123456;

推荐阅读