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]='