Переписать код с использованием функций - C (СИ)
Формулировка задачи:
#include <stdio.h> #include<math.h> #define n 5 #define m 8 int a[n],b[m], *p,i; void main () { clrscr(); p=a; p=b; for(i=0;i<n;i++) scanf("%d",p++); p=a; p=b; for(i=0;i<n;i++) if(*(p+i)<3) { for(i=0;i<n;i++) *(p+i)=*(p+i)**(p+i); } p=a; p=b; for(i=0;i<n;i++) *(p+i)=*(p+i)*0.5; p=a; p=b; for(i=0;i<n;i++) printf("%d ",*(p+i)); getch(); }
Решение задачи: «Переписать код с использованием функций»
textual
Листинг программы
#include <stdio.h> #include <math.h> #include <conio.h> #define n 5 #define m 8 int a[n],b[m], *p, i; void input(int *begin, int *end) { for(p=begin;p!=end;++p) scanf("%d",p); } void output(int *begin, int *end) { for(p=begin;p!=end;++p) printf("%d\t",*p); } void exec(int *begin, int *end) { int val=*begin; int *p2=begin; for(p=begin;p!=end;++p) if(*p>val) { val=*p; p2=p; } for(++p2;p2!=end;++p2) *p2=0.5; } void main () { clrscr(); input(a, a+n); exec(a, a+n); output(a, a+n); input(b, b+m); exec(b, b+m); output(b, b+m); getch(); }
Объяснение кода листинга программы
- Объединение функций
input
,exec
иoutput
в одной программе. - Создание массивов
a
иb
размеромn
иm
соответственно. - Заполнение массива
a
значениями с помощью функцииinput
. - Выполнение функции
exec
для сортировки массиваa
по возрастанию. - Вывод отсортированного массива
a
с помощью функцииoutput
. - Заполнение массива
b
значениями с помощью функцииinput
. - Выполнение функции
exec
для сортировки массиваb
по возрастанию. - Вывод отсортированного массива
b
с помощью функцииoutput
. - Ввод и вывод производятся с помощью функций
scanf
иprintf
соответственно. - Размер массива
n
равен 5, а размер массиваm
равен 8. - В функции
main
используется функцияclrscr
для очистки экрана. - В функции
main
используется функцияgetch
для ожидания нажатия клавиши. - В функции
main
используется циклfor
для обхода массиваa
иb
. - В функции
main
используется оператор++
для инкрементации указателя. - В функции
main
используется операторif-else
для сравнения значений элементов массива. - В функции
main
используется оператор присваивания=
. - В функции
main
используется функцияprintf
для вывода значения переменнойval
. - В функции
main
используется функцияscanf
для ввода значения переменнойval
. - В функции
main
используется функцияprintf
для вывода значения переменнойp2
. - В функции
main
используется функцияscanf
для ввода значения переменнойp2
.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д