Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
19
Добавлен:
17.04.2015
Размер:
16.65 Кб
Скачать

МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ЛЕСА

Факультет электроники и системотехники.

Лабораторная работа № 12

по программированию на языке высшего уровня С

Тема: «Директивы препроцессора»

Выполнил студент: Галкин И.В. ВТ-11

Проверил: Ларионов Н.В.

Москва 2011

Написать программу с созданием библиотеки программ

и присоединением ее через команды препроцессора.

В одномерном массиве, состоящем из п вещественных элементов, вычислить:

1) произведение отрицательных элементов массива;

2) сумму положительных элементов массива, расположенных до максимального элемента.

3)Изменить порядок следования элементов в массиве на обратный.

#include<stdio.h>

#include<stdlib.h>

#include<math.h>

#include "biblioteka 12.h"

int main()

{

int i,s, N;

int *A;

printf ("Ввод размера массива. ");

scanf ("%d", &N);

A = new int [N];

for (i = 0; i < N; i ++ )

scanf ("%d", &A[i]);

for (i = 0; i < N; i ++ )

printf ("%d ", A[i]);

printf("\n");

s=sumotr(A,N);

printf("Sotr= %i \n",s);

s=summm(A,N);

printf("Smm= %i \n",s);

sort(A,N);

for (i = 0; i < N; i ++ )

printf ("%d ", A[i]);

delete A;

system("pause");

return 0;

}

Библиотека "biblioteka 12.h"

int sumotr(int *a,int n)

{int I,sum;

for(i=0;i<n;i++)

int sum=1;

for(i=0;i<n;i++)

if(a[i]<0) sum*=a[i];

return (sum);}

int summm(int *a,int n)

{int i,max,k;

for(i=0;i<n;i++)

max=abs(a[0]);

for(i=1;i<n;i++)

if(abs(a[i])>max)

{max=abs(a[i]);k=i;}

int sum;

sum=0;

for(i=0;i<k;i++)

sum+=a[i];

return (sum);}

void sort(int *a,int*b,int n)

{int i;

for(i=0;i<n;i++)

b[n-i-1]=a[i];

for(i=0;i<n;i++)

}