1. matlab字元串矩陣和數據矩陣的拼接----想在一個純數據的矩陣上加一行描述各列數據的字元串,如下面例子
cell {}是array [] 的一種特例廳衡掘,只是cell中得攔橘元素可以是數組array,可以是cell,也可以是實數等,而且cell各個元素可以不必相同!
a={'time','p1';num2str(px(1,1:2))}錯在第一行有兩個元素,而第二行只有一個元素。就像array的[1,2;1] 也是不行的
上述,改成a={'time'扮核,'p1';px,''}或a=[cellstr('time'),cellstr('p1');num2cell(px)]就好了
2. c語言,怎麼實現矩陣合並
給你實常式序吧。
#include<stdio.h>
voidcpy(inta[][2],intb[][2],int[],int,int);
intmain(void)
{
intarr1[3][2];
intarr2[3][2];
int[100];
inti,j,n,k;
printf("Pleaseinputnandk(0<=n,k<=3): ");
scanf("%d%d",&n,&k);
printf("Pleaseinputthefirstmatrix: ");
for(i=0;i<n;i++){
for(j=0;j<2;j++)
{
scanf("%d",&arr1[i][j]);
}
}
printf("Please羨跡扮inputthesecond州旅matrix: ");
for(i=0;i<k;i++){
for(j=0;j<2;j++){
scanf("%d",&arr2[i][j]);
}
}
printf("Afterthecombination,theresultis: ");
cpy(arr1,arr2,,n,k);
return0;
}
voidcpy(intp[][2],ints[][2],int[],intn,intk)
{
inti,j,x=0;
for(i=0;i<n;i++)
{
for(j=0;j<2;j++)
{
[x]=p[i][j];
x++;
}
}
for(i=0;i<k;i++)
{
for(j=0;j<2;j++){
[x]=s[i][j];
兄灶x++;
}
}
for(i=0;i<x;i++)
{
printf("%d",[i]);
if((i+1)%2==0){
putchar(' ');
}
}
return;
}
3. 如何把幾個矩陣合並成為一個矩陣
1、一維數組直接合並
數組 work1[x1,x2—游棚—,xn],
work2[y1,y2——,yn],
現在要生成一個數組work3,
work3中的數據為[x1,x2,x3--xn,y1,y2--yn];
合並方法:
步驟一: 直接將兩個矩陣合並
步驟二: A = [1,2,3,4];
步驟三: B = [-1,-2,-3,-4];
步驟四: C = zeros(1,size(B,2)+size(A,2));
步驟五: C = [A, B];
2、一罩磨隱維數組交叉合並:
數組work1[x1,x2—物廳—,xn],
work2[y1,y2——,yn],
現在要生成一個數組work3,
work3中的數據為[x1,y1,x2,y2——,xn,yn];
步驟一: A = [1,2,3,4];
步驟二: B = [-1,-2,-3,-4];
步驟三: C = zeros(1,size(B,2)+size(A,2));
步驟四: C(1:2:end) = A;
步驟五: C(2:2:end) = B ;
步驟六: C = 1 -1 2 -2 3 -3 4 -4。
4. 用c語言把兩個矩陣合為一個矩陣 要求如下
下面是一個可以將兩個矩陣合並為一個矩陣的 C 語言程序。該程序中,我們使用了嵌套循環分別基粗遍歷兩個矩陣,並將它們合並到一個新的數組中。
```c
#include <stdio.h>
#define ROWS 3
#define COLS 3
int main() {
char a[ROWS][COLS] = {{'1', '2', '3'}, {'4', '5', '6'}, {'7', '8', '9'}};
char b[ROWS][COLS] = {{'a', 'b', 'c'}, {'d', 'e', 'f'}, {'g', 'h', 'i'}};
char c[ROWS * 2][COLS * 2]; // 合並後的矩陣
int i, j;
// 將 a 矩陣復制到合並後的矩陣的左上角
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
c[i][j] = a[i][j];
}
}
// 將 b 矩陣復制到合並後的矩陣的右上角
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
c[i][j + COLS] = b[i][j];
}
}
// 輸出合並後的矩陣
for (i = 0; i < ROWS * 2; i++) {
for (j = 0; j < COLS * 2; j++) {
printf("%c", c[i][j]);
}
}
printf("\n");
return 0;
}
```
在這個程序中,我們首先定義了兩個字元型二維數組 `a` 和 `b`,分別表示要合並的兩個矩陣。然後,我們定義了一個新的字元型二維數組 `c`,用於存儲合並後的矩陣。注意,`c` 的行數和列數分別是 `a` 和 `b` 的兩倍。
接下來,我們使用兩個嵌套的循環遍歷 `a` 矩陣,並將它的每個元素復制到 `c` 矩陣的對應位置。然後,我們再使用另外兩個嵌套的循環遍歷 `b` 矩陣,並將它的每個元素復制到 `c` 矩陣氏鋒雀的右上角。
最後,我們使用兩個嵌套的循環遍歷 `c` 矩陣,並逐個輸出它的每個元素。輸出完成後,我們在最後加上一個換行符,以便輸出結果更加美觀。
需要注意的是,在這個程序中,我們沒有對輸入數據進行任何檢查(例如,矩陣的維度是否殲早相同等)。如果需要確保輸入數據的有效性,可以在程序中添加相應的檢查代碼。