當前位置:首頁 » 編程語言 » c語言的兩個數組
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言的兩個數組

發布時間: 2022-10-29 11:39:47

① 怎樣在c語言中實現兩個數組的合並

把兩個數組分別合到一個數組裡面啊.
那個數組的長度為 兩個數組的長度的和

② C語言合並兩個數組

兩個錯誤,三個地方

#include<stdio.h>
#include<string.h>
void main(){
int a, b,f, g;char c[50], d[50], e[100];
gets(c);
for(a=0;c[a]!=''a++)//原來的是c[a]=!''
{
e[a]=c[a];
}
gets(d);
g=strlen(d);
if(g>5)
{
for(b=0;b<4;b++)//原來的b是1~5
{e[a+b]=d[b];}
}
else{
for(b=0;b<g;b++)//原來的b是1~g
{e[a+b]=d[b];}
}
for(f=0;f<a+b;f++)
printf("%c", e[f]);
}

③ C語言題目 定義兩個數組a[n]和b[n](n<=10)

#include <stdio.h>

int isprime(int n)

{ int i;

for(i=2; i*i<=n; i++)

if(n%i==0)return 0;

return n>1;

}

int main()

{ int i,j,n,a[10],b[10];

scanf("%d",&n);

for(i=0;i<n;i++)scanf("%d",&a[i]);

for(i=0;i<n;i++)scanf("%d",&b[i]);

for(i=0;i<n;i++)

for(j=0;j<n;j++)

if(isprime(a[i]+b[j]))

printf("%d+%d=%d ",a[i],b[j],a[i]+b[j]);

return 0;

}

④ c語言,連接2個數組的方法

連接兩個數組有點問題,for(x=0;x<6;x++) 數組長度怎麼確定array.length 不能用6來表示
可以寫個方法,將兩數組合並成一個數組
也可以用API函數 memory

⑤ c語言中怎樣交換兩個數組

逐個元素交換即可。

前提是兩個數組必須有同樣的長度

否則無法交換。

函數如下:

voidswap_array(int*a,int*b,intl)
{
inti,t;
for(i=0;i<l;i++)
{
t=a[i];
a[i]=b[i];
b[i]=t;
}
}

構建好兩個等長數組,調用這個函數就可以

a和b是兩個數組名, l為數組元素個數,即長度。

⑥ 請問如何使用C語言把兩個數組合並在一個數組里

代碼文本:

#include "stdio.h"

int input(int *p,int n){

char i,ch;

for(i=0;i<n;i++){

if((ch=getchar())==' ')

break;

else if(ch>='0' && ch<='9')

ungetc(ch,stdin);

scanf("%d",p+i);

}

return i;

}

int main(int argc,char *argv[]){

int a[21],b[10],i,j,k;

printf("Input array a... ");

i=input(a,10);

printf("and input array b... ");

j=input(b,10);

for(k=0;k<j;a[i++]=b[k++]);

for(j=0;j<i;printf("%d ",a[j++]));

putchar(' ');

return 0;

}

⑦ c語言怎麼合並兩個數組

int main() {
char a[] = "123456";
char b[] = "abcde";
int buflen = strlen(a) + strlen(b);
char *p = (char*)malloc(buflen + 1);
memset(p, 0, buflen);
printf("%d\n", buflen);
strcpy(p, a);
strcat(p, b);
printf("%s\n", p);
free(p);
}
C的數組在創建後不可變得,因此數組合並的思想就是把數組塞到一個足夠大的空間里形成新數組。
上面的函數是比較簡單的合並方法

⑧ C語言中,如何讓兩個數組相等

如果是數組長度相等,在初始化數組是直接將兩個數組的長度設置為相同即可,如下:

inta[10];
intb[10];

如果是讓兩個數組的數據一樣,可按下面的方法:

#include<stdio.h>
#include<string.h>
intmain()
{
inti;
inta[10];
intb[10];
//初始化數組a
for(i=0;i<10;i++)
{
a[i]=i;
}
//將a數組的數據復制給b
//如果是字元數組,可以直接使用strcpy函數
//如果是其它類型,可使用如下方法
for(i=0;i<10;i++)
{
b[i]=a[i];
}

//輸出數組a
printf("a=");
for(i=0;i<10;i++)
{
printf("%d",a[i]);
}
printf(" ");

//輸出數組b
printf("b=");
for(i=0;i<10;i++)
{
printf("%d",b[i]);
}
printf(" ");

}
運行結果:
a=0123456789
b=0123456789

⑨ C語言合並兩個數組

不知道樓主是要普通的合並然後排序呢還是高級演算法里的歸並排序。後者的話建議看看網路http://ke..com/view/90797.htm
前者。
#include<stdio.h>
int
main()
{
int
a[100],b[100];
int
anum,bnum,i,j,k,temp;
printf("請輸入數組a的元素個數:");
scanf("%d",&anum);
for(i=0;i<anum;i++)//數組a輸入
scanf("%d",&a[i]);
printf("請輸入數組b的元素個數:");
scanf("%d",&bnum);
for(i=0;i<bnum;i++)//數組b輸入
scanf("%d",&b[i]);
k=anum+bnum;//計算數據總個數
for(i=0;i<bnum;i++)//b數組合入a數組
a[anum+i]=b[i];
for(i=0;i<k-1;i++)
//選擇排序
for(j=i+1;j<k;j++)
if(a[i]<a[j])
{temp=a[i];
a[i]=a[j];
a[j]=temp;
}
for(i=0;i<k;i++)//輸出最終數組
printf("%8d",a[i]);
return
0;
}