Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.06.2010, 02:55   #1
FreeZeT
Новичок
Джуниор
 
Регистрация: 15.06.2010
Сообщений: 4
По умолчанию Обьясните

Вот код лабы...

#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<time.h>.
void zap (int, int*);
void pech(int, int[]);
void vuch(
int, int[]);
void main()
{
randomize();
int* mas, n=15;
clrscr();
mas=(int*)calloc(n,sizeof(int));
zap(n, mas);
pech(n, mas);
vuch(n, mas);
printf("\n");
getch();
}
void zap(int n, int* mas)
{
int i, a=2, b=38;
for(i=0; i<n; i++)
mas[i]=a+random(b-a+1);
}
void pech(int n, int mas[])
{
int i;
for(i=0; i<n; i++)
printf(" %d", mas[i]);
}
void vuch(int, int mas[])
{
int i, a=2, b=38, n=15, k;
for(i=0; i<n; i++)
{
if(mas[i]=a+random(b-a+1) && i%2!=0)
k=k+1;
}
printf("\n kol=%d", k);
}
Сразу скажу, делал не я. эти вот строки, нужно узнать что делают и означают:
void pech(int, int[]);
mas=(int*)calloc(n,sizeof(int));
void zap(int n, int* mas)

Зарание спасибо если кто обьяснит, что эти строки означяют и что они делают!
FreeZeT вне форума Ответить с цитированием
Старый 15.06.2010, 03:42   #2
megachuhancer
Форумчанин
 
Регистрация: 16.04.2009
Сообщений: 247
По умолчанию

Код:
void pech(int, int[]);
Это прототип функции. Он сообщает компилятору о том, что такая функция есть и какие она имеет параметры. Это позволяет осуществлять проверку правильности вызова функции ещё до её определения.
Код:
mas=(int*)calloc(n,sizeof(int));
Здесь выделяется память на n int'ов и забивается нулями. Указатель на этот кусок памяти присваивается переменной-указателю mas.
Код:
void zap(int n, int* mas)
Это заголовок функции. Определение функции начинается с её заголовка.

Если что, я смотрел какие места выделены в коде.

Последний раз редактировалось megachuhancer; 15.06.2010 в 03:47.
megachuhancer вне форума Ответить с цитированием
Старый 15.06.2010, 04:24   #3
FreeZeT
Новичок
Джуниор
 
Регистрация: 15.06.2010
Сообщений: 4
По умолчанию

Большое спасибо за помошь!
FreeZeT вне форума Ответить с цитированием
Старый 15.06.2010, 04:27   #4
megachuhancer
Форумчанин
 
Регистрация: 16.04.2009
Сообщений: 247
По умолчанию

Только обратите внимание, что здесь прототип, а что - заголовок:
Код:
#include<stdio.h>
#include<conio.h>
#include<stdlib.h>
#include<time.h>.
void zap (int, int*); //прототип
void pech(int, int[]); //прототип
void vuch(
int, int[]);
void main()
{
randomize();
int* mas, n=15;
clrscr();
mas=(int*)calloc(n,sizeof(int));
zap(n, mas);
pech(n, mas);
vuch(n, mas);
printf("\n");
getch();
}
void zap(int n, int* mas) //заголовок
{
int i, a=2, b=38;
for(i=0; i<n; i++)
mas[i]=a+random(b-a+1);
}
void pech(int n, int mas[]) //заголовок
{
int i;
for(i=0; i<n; i++)
printf(" %d", mas[i]);
}
void vuch(int, int mas[])
{
int i, a=2, b=38, n=15, k;
for(i=0; i<n; i++)
{
if(mas[i]=a+random(b-a+1) && i%2!=0)
k=k+1;
}
printf("\n kol=%d", k);
}
Вот, можно почитать:
http://www.intuit.ru/department/pl/ccpp/5/

Последний раз редактировалось megachuhancer; 15.06.2010 в 04:40.
megachuhancer вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
обьясните!!!! gnom63 Помощь студентам 1 12.03.2009 14:56
Обьясните, плиз! Ніжний Диявол Общие вопросы Delphi 3 14.05.2008 21:14
Обьясните... Droid Общие вопросы Delphi 4 12.05.2008 12:57