Студопедия

Главная страница Случайная страница

Разделы сайта

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






Билет №25. нұсқаулары екі а және b мәндерінің ең үлкенінің бірін z-ке жібереді.






1. Шартты ө рнектер

if(a> b) z=a;

elsez=b;

нұ сқ аулары екі а жә не b мә ндерінің ең ү лкенінің бірін z-ке жібереді.

Си-де тернарлық оператор “?: ” бар, ол осы жә не оғ ан ұ қ сас конструкцияларғ а жазбаның басқ а тә сілін кө рсетеді.

z=(a> b)? a: b; // z=max(a, b)

Шартты ө рнек шынымен де ө рнек болып табылады жә не оны ө рнек жіберілетін кез-келген жерде қ олдануғ а болады.

Шартты ө рнек кө бінесе программаны қ ысқ артуғ а мү мкіндік береді. Мысал ретінде массивтің nэлементтері ә рбір жол бойынша 10-нан, бағ андар арасынан бір бос орыннан басып шығ аруды қ амтамасыз ететін циклді келтірейік: циклдің ә рбір жолы соң ғ ы жолды қ осқ анда жаң а жол литерімен аяқ талады.

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

printf (“%6d%c”, ar [i], (i%10= = 9¦¦i= = n-1)? ’\n’: ’ ‘);

Жаң а жол литері ә рбір оныншыдан кейін жә не n–ші элементтен кейін жіберіледі. Қ алғ ан басқ а элементтерден кейін бос орын келеді.

2. Қ ұ рылым – бұ л айнымалылармен жұ мыс істеу ың ғ айлы болу ү шін бір атауғ а топтастырылғ ан бір немесе бірнеше айнымалылыр (ә р тү рлі болуы мү мкін). Қ ұ рылымдар кү рделі мә ліметтерді (ә сіресе ү лкен программаларда) ұ йымдастыруғ а кө мектеседі жә не ө зара байланысқ ан айнымалылар тобын жиынның жеке элементіндей емес, бір тұ тас ретінде тү сіндіреді.

Қ ұ рлымның кең таралғ ан мысалы – тө лемдік ведомостардың жолдары. Ол ведомост қ ызметкерлердің толық аты, адресі, социалды сақ тандыру карточкаларының нө мері, ең бек ақ ысы жә не т.б. мә ліметтерден тұ рады. Осы мінездемелердің кейбіреуінің ө зі қ ұ рылым болуы мү мкін: мысалы, толық ат, сол сияқ ты адресі жә не ең бек ақ ының ө зі бірнеше компоненттерден тұ рады. Си ү шін басқ а ә деттегі, мысалы график аймағ ынан: нү кте координаттар жұ бы, тікбұ рыш нү ктелер жұ бы жә не т.б. болып табылады.

Қ ұ рылымдар кө шірілуі мү мкін, олармен меншіктеу операциялары орындалуы мү мкін, оларды функцияғ а аргументтер ретінде беруге болады жә не ол функцияны олардың нә тижелері ретінде қ айтаруғ а болады. Автоматты қ ұ рылым мен массивтер ү шін сол сияқ ты инициализация рұ қ сат етіледі.

«Нү кте» қ ұ рлымының декларациясы келесі тү рде болады:

structpoint

{ intx; \\ декларация тізімі фигуралы жақ шада

inty;

};

point – бұ л қ ұ рылым тегі (аты) (tag – ярлык, этикетка).

Тег берілген тү рдегі қ ұ рлымның атын береді жә не ә рі қ арай фигуралы жақ шамен аяқ талғ ан декларацияның қ ысқ аша белгіленуі ретінде қ ызмет атқ арады.

Қ ұ рылымда тізілген айнымалылар мү шелер деп аталады. Тегтер мен мү шелердің аттары программаның кә дімгі айнымалыларының аттармен сә йкес келуі мү мкін. Мү шелердің аттары ә ртү рлі қ ұ рлымдарда кездесуі мү мкін..

Қ ұ рлым декларациясы – бұ л тип.

struct {…}x, y, z;

жазбасы қ ұ рлымдық типтің ү ш айнымалыларының сипаттамасын білдіреді.

Айнымалылар тізімінен тұ рмайтын қ ұ рылым декларациясы жадыны резервке алмайды: ол тек шаблонды немесе қ ұ рылым ү лгісін сипаттайды. Егер қ ұ рылымның тегі болмаса, онда осы тегтерді объектілерді анық тауда қ олдануғ а болады. Мысалы, struct point pt; декларациясы struct point типті pt қ ұ рылымдық айнымалыны анық тайды.Автоматты қ ұ рылымдарды (auto жады класының қ ұ рлымы) сә йкес келетін типтегі қ ұ рылым тү рінде нә тижені қ айтаратын меншіктеумен немесе функцияғ а айналдырумен инициализациялауғ а болады.

Қ ұ рылымдарғ а орындалатын операциялар – бұ л оларды кө шіру, меншіктеу, & операторының кө мегімен аталатын адрес жә не олардың мү шелеріне қ атысудың жү зеге асырылуы. Қ ұ рылымды функцияғ а аргумент ретінде беру жә не оларды нә тиже тү рінде функциялардан қ айтару. Сондай-ақ кө шіру жә не меншіктеу операцияларына жатады. Қ ұ рылымдарды салыстыруғ а болмайды.

Қ ұ рылымдық объектілерді функцияғ а берудің ү ш тә сілі бар:

компоненттерді (мү шелерді) жеке беру;

барлық қ ұ рылымдарды тү гелдей беру;

кө рсеткішті қ ұ рылымғ а беру.

Егер функцияғ а, оны тү гелдей кө шіретін ү лкен қ ұ рылым берілсе, кө рсеткішті оғ ан беру тиімдірек.

 

3. Тікбұ рышты -ң катеті мен доғ ай бұ рышы белгілі болса, оның периметрі мен ауданын есепте.

 

 

#include < stdio.h>

#include < math.h>

main()

{

floata, b, c, p, s;

clrscr();

printf(" \n‚ ү шбұ рышқ абырғ аларыненгіз: \n");

scanf(" %f%f%f", & a, & b, & c);

p=(a+b+c)/2;

s=sqrt(p*(p-a)*(p-b)*(p-c));

printf(" s=%f\n", s);

}

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.