Практические / Отчеты студентов 2011-2012 / ВТ-12 ЛР / Соколов / laba6
.docМОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ЛЕСА
Факультет электроники и системотехники
Лабораторная работа № 6
по программированию на языке высшего уровня С
Тема: «Функции»
Выполнил студент: Соколов В.И.
Группа: ВТ-12
Проверил: Ларионов Н.В.
Москва 2012 г.
II. 1. Условия задачи: в одномерном массиве, состоящем из n-целочисленных элементов вычислить:
а) минимальный по модулю элемент массива.
б) сумму модулей элементов массива, стоящих после первого элемента, равного 0.
в) преобразовать массив так, чтобы в первой половине шли элементы, которые стоят на четных позициях, а потом — на нечетных.
Оформить в виде функции.
2. Данные:
а) Исходные: a[i]
б) Рабочие: k
в) Выходные:min, s, b[j]
3. Листинг программы:
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int minimum(int a[i])
{
int min,i;
min=fabs(a[0]);
for (i=0;i<10;i++)
if (fabs(a[i])<min) min=fabs(a[i]);
return(min);
}
int summ(int a[])
{
int k,i,sum;
for (i=0;i<10;i++)
if (a[i]=0)
{
k=i;
break;
}
sum=0;
for (i=k;i<10;i++)
sum+=fabs(a[i]);
return(sum);
}
void sortirovka(int a[],int b[])
{
int i, k;
k=0;
for (i=0;i<10;i=i+2)
{b[k]=a[i];
k++;
}
k=5;
for (i=1;i<10;i+=2)
{b[k]=a[i];
k++;
}
printf("Preobrazovanii massiv:\n");
for (k=0;k<10; k++)
printf("%i",b[j]);
}
main()
{
int a[10]={5,-3,0,1,9,-2,4,7,8,0};
int m= minimum(a);
int s=summ(a);
printf("Min=%i \n",m);
printf("Summa=%i \n",s);
sortirovka(a,b);
system("pause");
return 0;
}