c语言数组转字符串数组
发布时间: 2021-03-07 10:07:16
1. c语言中如何把int型数组转化为字符串
不准用sprintf 之类函数,要自己写,那么 这样自己写i2s如下:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void i2s(int x, char *s){
int v,xx,i,j,n=0;
char c;
xx = abs(x);
while(1){
v=xx%10;
s[n]=v+'0'; n++;
xx=(xx-v)/10;
if (xx==0) break;
}
if (x<0) {s[n]='-'; n++;}
for (i=0;i<n/2;i++){
c=s[i]; s[i]=s[n-i-1];s[n-i-1]=c;
}
s[n]='\0';
}
main()
{
int a[4]={12,34,-56,789};
char s[4][15];
int i;
for (i=0;i<4;i++){
i2s(a[i],s[i]);
printf("%s ",s[i]);
}
return 0;
}
输出:12 34 -56 789
如用
int i2s(int x, char *s){
//全部照旧
return n;
}
可以返回字符串长度。
你若想把所有输出放入一个长长的char 数组,有了每个字符串长度,应当很容易自己做了--即使不用strcat()。
2. C语言 数组类型转换,怎样将一个float类型的数组转换成字符(串)数组
#include<stdio.h>
#include<string.h>
intmain()
{
chars[50];
floata=1.03;
sprintf(s,"%f",a);//如果用来sprintf函数自小数点后会有6位
for(inti=strlen(s)-1;i>=0;i--)
{
if(s[i]!='0')
{
s[i+1]='