A. c語言中通過函數給數組復制的問題
for(count=0;count++;count<size)
for循環後面的括弧,第二個條件語句是判斷。
你現在這樣for的循環體一次都不能執行,因為count的初始值為0,一進入判斷就退出了。
B. C語言如何復制數組
int (double *a,double *b,double *c,int n)//a是輸入數組
{
int i;
for(i=0;i<n;i++)
{
b[i]=a[i];
*(c+i)=*(a+i);
}
}
直接手敲的,手上沒C,供參考
C. 用C語言編寫一個程序,將一個數組中的元素復制到另一個數組中
#include <stdio.h>
int main()
{
int i, array1[5], array2[5];
printf("請輸入第一個數組:");
for(i=0; i<5; i++)
scanf("%d", &array1[i]);
printf("\n第二個數組:");
for(i=0; i<5; i++)
{
array2[i] = array1[i];
printf("%d ", array2[i]);
}
return 0;
}
D. C語言中如何復制數組的內容
C語言中復制數組的內容源代碼如下:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define SIZE 10
void show_array(const int ar[], int n);
int main()
{
int values[SIZE] = {1,2,3,4,5,6,7,8,9,10};
int target[SIZE];
double curious[SIZE / 2] =
{2.0, 2.0e5, 2.0e10, 2.0e20, 5.0e30};
puts("memcpy() used:");
puts("values (original data): ");
show_array(values, SIZE);
memcpy(target, values, SIZE * sizeof(int));
puts("target ( of values):");
show_array(target, SIZE);
puts("
Using memmove() with overlapping ranges:");
memmove(values + 2, values, 5 * sizeof(int));
puts("values -- elements 0-5 copied to 2-7:");
show_array(values, SIZE);
puts("
Using memcpy() to double to int:");
memcpy(target, curious, (SIZE / 2) * sizeof(double));
puts("target -- 5 doubles into 10 int positions:");
show_array(target, SIZE/2);
show_array(target + 5, SIZE/2);
system("pause");
return 0;
}
void show_array(const int ar[], int n)
{
int i;
for (i = 0; i < n; i++)
printf("%d ", ar[i]);
putchar('
');
}
(4)c語言拷貝數組擴展閱讀
1、C語言編程中,將常用的操作封裝成函數進行調用,可以大大簡化程序的編寫,而且在代碼的維護性及可讀性方面也提供了便利。
2、不同地方需要對處理後的數組內容多次進行顯示,並且很多情況下並非顯示數組裡面的全部內容,而僅僅是想觀察數組中的部分數據內容,若每次顯示時都用printf函數寫的話,可以寫一個自定義的通用函數,用來根據需要顯示數組中的內容。
E. c語言中怎麼把一個數組的值賦到另一個數組中
在回答之前想問你幾個問題。
#include<iostream.h>
voidmain()
{
doubleb1[5][2]={3,4,1,2,2,1,5,3,4,5};
doublerel[5][2]={0};
doublerel_1[5]={0.0667,0.1905,0.3143,0.4381,0.5619};
intl=0,j,i;
double*p_rel_1=rel_1;
for(i=0;i<5;i++)
{
for(j=0;i<2;j++)
{
l=(int)(n-b1[i][j]);//n是什麼?
rel[i][j]=*(p_rel_1+l);
rel[i][j]=1;
l=0;
}
}
deletep_rel_1;
for(i=0;i<5;i++)
{
for(j=0;i<2;j++)//中間那個i在這里有什麼用?
{
printf("rel[%d][%d]=%.4lf",i,j,rel[i][j]);
}
printf(" ");
}
}
F. c語言兩個數組拷貝問題
將第一個數組中的數傳遞到第二個中可不可以用
num2[]=num1[]; 這樣子是不行的,這個操作僅僅把num1[]的第一個數字賦值給了num2[]的第一個數
首地址的話,直接num1=num2;就可以了
首地址可以用num1[0]調用
G. c語言 復制數組
strcpy(t[i],a[j],n);該語句的意思是:將某已知二維數組a的第j行前n個字元復制到另一個二維數組t的第i行中。給分吧
H. c語言中如何把一個數組賦給另一個數組啊
strcpy(a,b);是把b字元串復制到a中.只能用於char型.
數組傳遞,可以用循環語句,一個元素一個元素賦值,也可用指針賦值.
還有方法是內存塊復制:
void *memcpy(void *s1, const void *s2, size_t n);
I. c語言如何實現多維整型數組的復制
memcpy(目的地址,源地址,位元組數)
由於數組元素為連續內存存放
可以使用此函數,將源地址的內存內容,復制到目的地址去,位元組數為sizeof(數組名)
J. C語言 復制一個數組到另外一個數組的問題 哪裡出錯了呢
#include <stdio.h>
#define SIZE 5
double _arr(double sou[],double tar1[],int n);
int main(void)
{
double source[SIZE]={1.1,2.2,3.3,4.4,5.5};
double tar1[SIZE];
_arr(source,tar1,SIZE);
return 0;
}
double _arr(double sou[],double tar1[],int n)
{
int i;
for(i=0;i<n;i++)
{
tar1[i]=sou[i];
printf("%lf ",tar1[i]);
}
}
注意子函數形參,要和你主函數代入的參數一致。
前兩參都是double型的數組,所以聲明聲明和定義時要加
double 參數名[]。
或者用樓上的所說加*號,指針形式,不過猜想你可能還沒學到指針。