C语言,整数数组转化为字符串

2024-11-27 21:01:23
推荐回答(5个)
回答(1):

C有“整数数组转化为字符串”的专用库函数char *itoa(int num,char *str,int radix)。声明一个存放转换后的字符串的二维字符数组,将整型数组的元素作为num来调用itoa函数,将结束存入二维数组即可。举例代码如下:

//#include "stdafx.h"//If the vc++6.0, with this line.
#include "stdio.h"
#include "stdlib.h"
int main(void){
    int a[8]={123,234,345,10,787,743891,123456789,0},i;
    char x[8][11]={"",};
    for(i=0;i<8;i++){
        itoa(a[i],x[i],10);//将整数a[i]按十进制转换成字符串存入字符数组x[i]
        printf("%s ",x[i]);//打出来看看......
    }
    printf("\n");
    return 0;
}

回答(2):

先把输出内容放入一个字符数组里,再输出。
字符数组的内容,用sprintf,strcat 等逐步建成:

#include
#include
int main()
{
char str[80];
int data[5]={4, 5, 3, 2, 5};
int i,L;
sprintf(str,"data:");
strcat(str,"[");

for (i=0;i<5;i++) {
L = strlen(str);
if (i<4) sprintf(str+L,"\"%d\",",data[i]);
else sprintf(str+L,"\"%d\" ",data[i]);
};
strcat(str,"]");
printf("%s",str);
return 0;

}

输出:data:["4","5","3","2","5"]

回答(3):

#include
void main()
{
int d[5]={4,5,3,2,5};
char a[80];
int i;
for(i=0;i<5;i++)
a[i]=d[i]+'0';
a[i]='\0'; //这个很重要,是字符串结束符
printf("%s\n",a);
}

回答(4):

写个循环 拼接起来

回答(5):

数组输出和字符输出有什么不同?为什么需要转换?