Упростить решение - C (СИ)
Формулировка задачи:
На фотографии условие, вот мое решение(работает корректно):
#include <stdio.h> void copy_arr(double [], double [], int); void copy_prt(double *, double *, int); void copy_prts(double *, double *, double *); void print_arr(double [], int); int main(void) { double source[5] = {1.1, 2.2, 3.3, 4.4, 5.5}; double target1[5]; double target2[5]; double target3[5]; //Функции отвечающие за копирование copy_arr(target1, source, 5); copy_prt(target2, source, 5); copy_prts(target3, source, source + 5); //Распечатка print_arr(target1, 5); print_arr(target2, 5); print_arr(target3, 5); return 0; } void copy_arr(double target[], double source[], int n) { int i; for (i = 0; i < n; i++) target[i] = source[i]; return; } void copy_prt(double * target, double * source, int n) { int i; for(i = 0; i < n; i++) { *target = *source; target++; source++; // Вот тут мне, кажется, можно упростить? Просто у меня память на приоритеты такая себе. } return; } void copy_prts(double * target, double * source, double * end) { while (source < end) { *target = *source; target++; source++; } return; } void print_arr(double arr [], int n) { int i; for (i = 0; i < n; i++) printf("%.1f ", arr[i]); putchar('\n'); return; }
Решение задачи: «Упростить решение»
textual
Листинг программы
void copy_prt(double * target, double * source, int n)
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д