Скопировать один массив в другой с помощью разных операоров циклов - C (СИ)
Формулировка задачи:
написать программу для массива
а копирует себя в b и остаток(заднюю часть массива) заполняет нулями, а также s1 копируется s2 с помощью
a)for
b)while
c)do-while
(if-else могут быть иcпольэованы дополнительно)
int a[10]={1,2,3,4,5,6,7,8,9,0},b{20}
char s1[20]="zdes text",s2[20];Решение задачи: «Скопировать один массив в другой с помощью разных операоров циклов»
textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a[10] = {1,2,3,4,5,6,7,8,9,0};
int b[20];
char s1[20] = "Everybreathyoutake..";
char s2[20];
int j = 0, i = 0;
for(i = 0; i < 20; ++i){
if(i > 10)
b[i] = 0;
else
b[i] = a[i];
printf("%d ", b[i]);
}
printf("\n");
for(j = 0; j < 20; ++j){
s2[j] = s1[j];
printf("%c", s2[j]);
}
printf("\n");
j = 0;
while(j < 20){
s2[j] = s1[j];
printf("%c", s2[j]);
++j;
}
printf("\n");
j = 0;
do
{
s2[j] = s1[j];
printf("%c", s2[j]);
++j;
}
while(j < 20);
return 0;
}
Объяснение кода листинга программы
- Объявлены массивы a[10], b[20], s1[20], s2[20].
- Заполнен массив a[10] значениями от 1 до 50.
- Инициализирован массив b[20] нулями.
- В цикле for перебираются элементы массива b[20], если индекс больше 10, то значение равно 0, в противном случае значение равно соответствующему элементу массива a[10].
- Выводится значение каждого элемента массива b[20] с помощью printf.
- В цикле for перебираются элементы массива s2[20], значение каждого элемента равно значению соответствующего элемента массива s1[20].
- Выводится значение каждого элемента массива s2[20] с помощью printf.
- В цикле while перебираются элементы массива s2[20], значение каждого элемента равно значению соответствующего элемента массива s1[20].
- Выводится значение каждого элемента массива s2[20] с помощью printf.
- В цикле do..while перебираются элементы массива s2[20], значение каждого элемента равно значению соответствующего элемента массива s1[20].
- Выводится значение каждого элемента массива s2[20] с помощью printf.
- Программа возвращает 0, завершая свою работу.