c语言如何将数值转化为字符串

如题所述

char str[100];

int n=123;

sprintf(str,"%d",n);//库函数

printf("%s",str);

下面是

#include<stdio.h>

#include<string.h>

int main()

{

int n,k=0;

int num[50]={0};

char str[50]={'\0'};

scanf("%d",&n);

while(n)

{//先将n的各个位上的数取出,放入(int)数组num中 

num[k]=n%10;

n/=10;

k++;

}

for(int j=0,i=k-1;i>=0;j++,i--)

{//num[i]+'0'->强制转换(char) 

// 然后存入(char)数组str中 

str[j]=(char)(num[i]+'0');

}

str[k]='\0';//尾部加个结束符,可以整串输出

printf("%s\n",str);//整串输出 

for(int i=0;i<strlen(str);i++)//单个输出 

printf("%c ",str[i]);

return 0;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-05-05
可以使用强转的方式将数值转为字符串,也可以用它提供的方法!谢谢,望采纳!
第2个回答  2021-05-06
使用函数int2str类似的库函数即可。
相似回答