當前位置:首頁 » 編程語言 » c語言數組轉換

c語言數組轉換

發布時間: 2022-05-28 15:23:53

❶ 用c語言寫代碼三個一維數組如何轉換成一個二維數組

int a[10],b[10],c[10];
int d[10][3];
for(int i=0;i<10;i++)
d[0][i] = a[i];
for(int i=0;i<10;i++)
d[1][i] = b[i];
for(int i=0;i<10;i++)
d[2][i] = c[i];

❷ C語言一個二維數組如何轉換成一個新的一維數組

當然可以了。

例如:


#include<stdio.h>voidmain(){inti,j,k=0,a[2][2]={1,2,3,4},b[4];for(i=0;i<2;i++)for(j=0;j<2;j++){b[k]=a[i][j];k++;}for(k=0;k<4;k++)printf("%d",b[k]);}

運行結果:

就是將一個2×2的二維數組的值按順序賦給一個一維數組。

❸ C語言 數組類型轉換,怎樣將一個float類型的數組轉換成字元(串)數組

不使用sprintf,使用求余%,且代碼少

#include<stdio.h>
#include<math.h>

//4個二進制位轉成一個16進制位的字元(3個二進制位轉成一個8進制位的字元)(十進制0-9轉成字元)
(unsignedcharnum)
{
switch(num)
{
case0:return'0';
case1:return'1';
case2:return'2';
case3:return'3';
case4:return'4';
case5:return'5';
case6:return'6';
case7:return'7';
case8:return'8';
case9:return'9';
case10:return'A';
case11:return'B';
case12:return'C';
case13:return'D';
case14:return'E';
case15:return'F';
default:return'X';
}
}

//字元串反轉
voidReverseString(char*Source,intBegin,intEnd)
{
inti;
charTemp;
for(i=0;i<((End-Begin+1)/2);++i)
{
Temp=Source[Begin+i];
Source[Begin+i]=Source[End-i];
Source[End-i]=Temp;
}
}

//比較float類型大小
intCompareFloat(floatA,floatB)
{
if((A<B)
&&(fabs(A-B)>1e-6f))
{
return-1;
}
elseif((A>B)
&&(fabs(A-B)>1e-6f))
{
return1;
}
else
{
return0;
}
}
//float轉字元串(十進制)(Precision是小數精度)
voidFloatToStringDecimal(floatFloat,char*Destination,unsignedintPrecision)
{
if(CompareFloat(Float,0)!=0)
{
//將小數移到整數位
floatTemp=Float*powf(10.0f,(float)Precision);
//負數轉成正數,否則不能使用迷之轉換
if(CompareFloat(Temp,0)==-1)
{
Temp=-Temp;
}
floatIntInFloat=0.0;
modff(Temp,&IntInFloat);
inti=0;
unsignedcharnum;
for(i=0;(i<(int)Precision)&&(CompareFloat(IntInFloat,0)!=0);++i)
{
//float轉成unsignedint
//迷之轉換(因為不知道內部如何實現,所以叫迷之轉換)
num=(unsignedchar)((unsignedint)IntInFloat%10);
Destination[i]=(num);
IntInFloat/=10;
modff(IntInFloat,&IntInFloat);
}
if(Precision!=0)
{
Destination[i]='.';
++i;
}
while(CompareFloat(IntInFloat,0)!=0)
{
num=(unsignedchar)((unsignedint)IntInFloat%10);
Destination[i]=(num);
IntInFloat/=10;
modff(IntInFloat,&IntInFloat);
++i;
}
if(CompareFloat(Float,0)==-1)
{
Destination[i]='-';
++i;
}
ReverseString(Destination,0,i-1);
Destination[i]='';
return;
}
else
{
Destination[0]='0';
Destination[1]='';
return;
}
}

然後是測試

//測試代碼
fprintf(FP_BaseZeroth,"測試對象:voidFloatToStringDecimal(floatFloat,char*Destination,unsignedintPrecision) ");
fprintf(FP_BaseZeroth,"測試輸入:0;123;123.456;-123;-123.456;1.23456e10f; ");
fprintf(FP_BaseZeroth,"預測輸出:0;123;123.456;-123;-123.456;有效數字部分確定 ");
fprintf(FP_BaseZeroth,"實際輸出:");
floatA[6]={0.0f,123.0f,123.456f,-123.0f,-123.456f,1.23456e10f};
charDes[100];
FloatToStringDecimal(A[0],Des,0);
fprintf(FP_BaseZeroth,"%s;",Des);
FloatToStringDecimal(A[1],Des,0);
fprintf(FP_BaseZeroth,"%s;",Des);
FloatToStringDecimal(A[2],Des,3);
fprintf(FP_BaseZeroth,"%s;",Des);
FloatToStringDecimal(A[3],Des,0);
fprintf(FP_BaseZeroth,"%s;",Des);
FloatToStringDecimal(A[4],Des,3);
fprintf(FP_BaseZeroth,"%s;",Des);
FloatToStringDecimal(A[5],Des,3);
fprintf(FP_BaseZeroth,"%s;",Des);
fprintf(FP_BaseZeroth," ");

測試結果

❹ c語言如何將數組轉成字元串

數組是指針,如果是字元數據就已經是字元串了,其它類型可以使用對應的函數轉換,如inttostr,floattostr等。

❺ c語言中數組的大小寫轉換,大小比較,長度等函數

strupr
()
原型:extern
char
*strupr(char
*s);
用法:#include
功能:將字元串s轉換為大寫形式
說明:只轉換s中出現的小寫字母,不改變其它字元。返回指向s的指針。
strlwr
()
原型:extern
char
*strlwr(char
*s);
用法:#include
功能:將字元串s轉換為小寫形式
說明:只轉換s中出現的大寫字母,不改變其它字元。返回指向s的指針。
注意事項:在linux編譯器中,有可能會編譯不通過。
有問題請追問

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

#include<stdio.h>

void IntToStr(int *i, char *c, int len)

{//i為整形數組,c為要存放字元串的數組,len為整形數組元素個數

int k;

char tmp[10];

for(k=0;k<len;k++)

{

itoa(i[k],tmp,10);

strcat(c,tmp);

int main()

或:

#include <string.h>

int main() // 這里為了方便直接用main函數

{

char array[] = { 'h', 'e', 'l', 'l', 'o' };

/* 需要注意的是,這里沒有終結符,故需要知道數組的 */

/* 大小(數組的大小是編譯時常量)*/

char *dest_str; // 目標字元串

dest_str = (char *)malloc(sizeof(char) * (sizeof(array) + 1));

/* 為字元串分配堆空間 */

strncpy(dest_str, array, sizeof(array));

// 用C標准庫函數strncpy拷貝字元

return 0;

}

(6)c語言數組轉換擴展閱讀:

字元串在存儲上類似字元數組,它每一位單個元素都是能提取的,字元串的零位是它的長度,如s[0]=10,這提供給我們很多方便,例如高精度運算時每一位都能轉化為數字存入數組。

通常以串的整體作為操作對象,如:在串中查找某個子串、求取一個子串、在串的某個位置上插入一個子串以及刪除一個子串等。兩個字元串相等的充要條件是:長度相等,並且各個對應位置上的字元都相等。設p、q是兩個串,求q在p中首次出現的位置的運算叫做模式匹配。串的兩種最基本的存儲方式是順序存儲方式和鏈接存儲方式。

熱點內容
javathread源碼 發布:2025-02-12 12:12:37 瀏覽:907
整個伺服器搭建教程 發布:2025-02-12 11:48:16 瀏覽:579
我的世界伺服器人多的 發布:2025-02-12 11:48:12 瀏覽:347
為實現分頁存儲管理需要哪些硬體支持 發布:2025-02-12 11:46:34 瀏覽:539
編程下載線 發布:2025-02-12 11:41:48 瀏覽:210
json存儲數據 發布:2025-02-12 11:41:39 瀏覽:219
天龍八部腳本免費 發布:2025-02-12 11:30:12 瀏覽:501
卡羅拉的配置一般買哪個好一點 發布:2025-02-12 11:20:03 瀏覽:743
沒有伺服器的IP怎麼連上 發布:2025-02-12 11:19:55 瀏覽:80
編程sqs 發布:2025-02-12 11:09:55 瀏覽:239