
Написать программу на си. Даны массивы 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;
}



Конечно! Вот пример программы на языке C, которая выполняет указанное действие:
c#include <stdio.h>
void mergeArrays(int A[], int B[], int C[], int M, int N) {
int i, j;
// Копируем элементы из массива A в массив C
for (i = 0; i < M; i++) {
C[i] = A[i];
}
// Копируем элементы из массива B в массив C
for (j = 0; j < N; j++) {
C[M + j] = B[j];
}
}
int main() {
int A[] = {1, 2, 3, 4};
int B[] = {5, 6, 7};
int M = sizeof(A) / sizeof(A[0]);
int N = sizeof(B) / sizeof(B[0]);
int C[M + N];
mergeArrays(A, B, C, M, N);
int i;
printf("Массив C: ");
for (i = 0; i < M + N; i++) {
printf("%d ", C[i]);
}
printf("\n");
return 0;
}
В этом примере массивы A
и B
заданы заранее в main
, но вы можете изменить их значения по вашему усмотрению. Функция mergeArrays
принимает массивы A
и B
, а также их размеры M
и N
, соответственно. Она копирует элементы массива A
в начало массива C
, а затем копирует элементы массива B
в оставшуюся часть массива C
. Результат выводится на экран.
В этом примере предполагается, что массивы A
и B
имеют одинаковый тип данных (в данном случае int
). Если типы данных отличаются, вам нужно будет изменить типы в объявлении и копировании элементов массивов.


Похожие вопросы
Топ вопросов за вчера в категории Информатика







Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili