Написать программу на си. Даны массивы A[M] и B[N]. Получить массив C[M+N], расположив в его начале элементы массива A, а затем — элементы массива B.
Ответы
Відповідь:
С code:
#include <stdio.h>
#include <Windows.h>
#include <cstdlib>
#include <time.h>
void randarr(int *array,int size){
for(int i = 0; i < size; i++){
array[i] = rand() % 35 + 1;
}
}
void printarr(int *array,int size){
for(int i = 0;i < size; i++){
printf("%d ",array[i]);
}
}
int * sumarr(int *one_array,int *two_array,int M,int N){
int* C = new int[M + N];
int i, l = 0;
for(i = 0; i < M; i++) C[l++] = one_array[i];
for(i = 0; i < N; i++) C[l++] = two_array[i];
return C;
}
int main(){
srand(time(NULL));
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
int M,N;
printf("Введите размер массива A[M]: ");
scanf("%d",&M);
printf("Введите размер массива B[N]: ");
scanf("%d",&N);
int A[M],B[N];
printf("\nМассив A[M]: ");
randarr(A,M);
printarr(A,M);
printf("\nМассив B[N]: ");
randarr(B,N);
printarr(B,N);
printf("\nСложение двух массивов: ");
int size_C = M + N;
int *C = sumarr(A,B,M,N);
printarr(C,size_C);
delete[] C;
return 0;
}