Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Пример 22.

Читайте также:
  1. I Пример слияния в MS WORD 2003. Изучите материал и выполните пример на компьютере.
  2. I. Примерный перечень вопросов рубежного контроля.
  3. II. Примерный перечень вопросов к зачету (экзамену) по всему курсу.
  4. III Дайте формульную запись нижеследующих типов объектных словосочетаний и проиллюстрируйте их примерами.
  5. III Пример теста контроля знаний
  6. III. Схематическое изображение накопления - второй пример
  7. III. Схематическое изображение накопления - первый пример

/* Функция вычисления суммы положительных элементов массива */

float SumP(float m[], int n) /* или float Sum (float *m, int n) */

/* Вх. параметры: m – указатель на массив чисел,

n – число элементов массива

Значение: s – сумма положительных элементов массива */

{ int i; /* индекс очередного эл-та массива */

float s=0; /* сумма эл-тов массива */

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

if (m[i]>0) s+=m[i];

return s;

}

/*---------------------------------*/

/* Пример вызова функции */

float x[10], y;

y= SumP (x, 10);

 

Пример 22б.

/* Функция вычисления суммы и количества положительных

элементов массива */

void SumP2 (float m[], int n, float *s, int *k)

 

/* Вх. параметры:

m – указатель на заданный массив,

n – число элементов массива.

Вых. параметры:

*s – сумма положительных элементов массива,

*k – количество положительных элементов */

{ int i;

for (i=0, *s=0, *k=0; i<n; i++)

if (m[i]>0) (*s)+=m[i], (*k)++;

}

 

/* Пример вызова функции */

float a[20], s;

int k;

SumP2 (a, 20, &s, &k);

 

Пример 22в.

/* Фун-я обнуления отрицательных элементов массива */

void P (float m[ ], int n)

/* Вх. параметры:

m – указатель на заданный массив,

n – число элементов массива.

Вых. параметр::

m – заданный массив */

{ int i;

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

if (m[i]<0) m[i]=0;

}

 

/* Пример вызова функции */

float a[20];

int i;

P (a, 20);

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

printf (“%4.1f ”, a[i]);

 

/* Фун-я обнуления отрицательных элементов массива

с подсчетом количества измененных элементов */

int P (float m[ ], int n)

/* Вх. параметры:

m – указатель на заданный массив,

n – число элементов массива.

Вых. параметр:

m – заданный массив

Значение: количество замен */

{ int i,k=0;

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

if (m[i]<0) { m[i]=0; k++;}

return k;

}

/* Пример вызова функции */

float a[20];

int k,i;

k= P (a, 20);

printf (“\n Количество измененных элементов = %d”,k);

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

printf (“%4.1f ”, a[i]);

 

 

Пример 23.

/* Определить, все ли элементы последовательности положительные */

/* Вх. параметры:

p – указатель на заданный массив (последовательность),

n – число элементов.

Значение:

f =1 – все элементы положительные,

f=0 – иначе */

int prov_pol (float p[ ], int n)

{ int i, f;

f=1;

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

if (p[i]<0) f=0;

return f;

}

Пример 24.

/* Функция замены строчных латинских букв на заданный символ */

char * ZamenaBukv (char *str, char sim)

/* Функция возвращает адрес строки str */

{

int i; /* индекс текущего символа строки */

for (i = 0; str[i]; i++)

if (str[i] >= ‘a’ && str[i] <= ‘z’) str[i] = sim;

return str;

}

 

/* Второй вариант функции замены букв */

char * ZamenaBukv (char *str, char sim)

/* Функция возвращает адрес строки str */

{

char *s; /* указатель на текущий символ строки */

for (s = str; *s!= ‘\0’; s++)

if (*s >= ‘a’ && *s <= ‘z’) *s = sim;

return str;

}

Пример вызова этой функции:

char c, s[81];

gets (s); c=‘*’;

puts (ZamenaBukv (s,c));

 

Пример 25. Составить подпрограмму ввода целого числа, перед которым возможны пробелы, символы "новой строки" и знак (подобным об­разом вводится число по формату %d функции scanf).

 

Тест:

Вход:

-5 +234<Ctrl-z><Enter> <Ctrl-z> - конец файла


Дата добавления: 2015-07-26; просмотров: 55 | Нарушение авторских прав


Читайте в этой же книге: ПОДПРОГРАММЫ | Параметры подпрограмм | Область действия переменных |
<== предыдущая страница | следующая страница ==>
Пример 20.| Классификация параметров подпрограмм

mybiblioteka.su - 2015-2024 год. (0.007 сек.)