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]='';//需要把後面的0去掉

break;

}

}

printf("%s ",s);

return0;

}

3. C語言,整數數組轉化為字元串

C有「整數數組轉化為字元串」的專用庫函數char *itoa(int num,char *str,int radix)。聲明一個存放轉換後的字元串的二回維字元數答組,將整型數組的元素作為num來調用itoa函數,將結束存入二維數組即可。舉例代碼如下:

//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
#include"stdlib.h"
intmain(void){
inta[8]={123,234,345,10,787,743891,123456789,0},i;
charx[8][11]={"",};
for(i=0;i<8;i++){
itoa(a[i],x[i],10);//將整數a[i]按十進制轉換成字元串存入字元數組x[i]
printf("%s",x[i]);//打出來看看......
}
printf(" ");
return0;
}

4. 用C語言進行字元串到數組的轉化

#include <stdio.h>
#include <string.h>//為strlen()函數提抄供原型
int main()
{ char ch[100];
int i,length;
int n_number=0,m_number=0;
printf("請輸入字元串: ");
gets(ch);//獲取輸入,並存入數組中
length=strlen(ch);//計算輸入字元串的長度版
for(i=0;i<length;i++)
{
if(ch[i]>='0'&&ch[i]<='9')//判斷是權否為數字
{
n_number++;
}
if(ch[i]>='a'&&ch[i]<='z'||ch[i]>='A'&&ch[i]<='Z')//判斷是否為字母
{
m_number++;
}
}
printf("輸入的字元串為: ");
puts(ch);//輸出存入數組的字元串
printf("字元串中數字的個數=%d,字母的個數=%d\n",n_number,m_number);
return 0;
}

5. c語言問題-把數字轉換為字元數組

#include
<stdio.h>
void
main()
{
int
i=10;
char
s[10];定義抄定符數組
sprintf(s,"%d",i);//把字轉襲換成字元放到數據里
//
itoa(i,s,10);
//效果一樣的
printf("%s",s);//列印結果
}

6. c語言 數組可以轉換成字元串嗎

你的意思是不是把用字元串表示的十六進制轉換為用bit表示的16進制?
我是按這個意思寫的。
unsigned char fun(char c)/*把用字元表示的十六進制數轉換為二進製表示*/
{
if('A' <=c && c <='Z')
return c - 'A' + 10;
if('a' <=c && c <='z')
return c - 'a' + 10;
return c - '0' ;
}
void convert(const char *str, unsigned char *arr)
{
for(unsigned i = 0; str[i] != '\0'; ++i )
if(i%2 == 0){
arr[i/2] = fun(str[i]);
arr[i/2] <<= 4;
}
else
arr[i/2] |= fun(str[i]);
}

7. 標准C語言中如何將字元串中的內容轉換為字元數組

/**************************************************
* 函數名: CharToInt
* 參數:
* 形參:
* intString: 保存整數的字元串
* 返回值:
* int: 成功返回轉換後的整數,否則返回0
* 功能:
* 把字元串轉換成整數
* 例如:
* "1200" => 1200
* 作者: sdh
* 編寫明細:
* 完成時間 2009-10-23 作者名 sdh
**************************************************/

int CharToInt(char* intString)
{
int i =1;
int j =1;
int b =0;
int a =strlen( intString );

for( i=0 ;i<a ;i++)
{
b = b+(intString[a-i-1]-48)*j;
j=j*10;
}
return b;
}

這個函數只能將一個字元串中的數字字元轉換成一個數字。如果多個數字用空格隔開,我想是不是可以先記錄空格的位置,然後求出每個字元函數在數組中的位置,比如b[]="12 21 -2 -3 2 3 6 100 ",-2的位置就是從b[6]到b[7],然後將每個數字字元串當做一個小數組調用我上面的那個函數。

8. C語言:將一個整型數組轉換為字元串輸出。如 int[]={10,11,12},輸出char *s = "101112"

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
voidIntToStr(int*i,char*c,intlen)
{//i為整形數組,c為要存放回字元串的數組,len為整形數組元素個數答
intk;
chartmp[10];
for(k=0;k<len;k++)
{
itoa(i[k],tmp,10);
strcat(c,tmp);
}
}
intmain()
{
inti[]={10,11,12};
charc[100]="";
IntToStr(i,c,sizeof(i)/sizeof(i[0]));
printf("%s ",c);
return0;
}

9. C語言數組幫忙轉換成字元串,並告知如何修改

你用的什麼開發環境? 若是.net有現成的函數可以轉。

stringstr=System.Text.Encoding.Default.GetString(bytearray);

10. C語言中,如何將一個數組中的數值轉換成字元串輸出

1、首先寫抄上注釋內容,如下圖所示。