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

Массивтер.Массивтерді инициалдау.

Массивтер деп бірдей типті мєліметтердіњ логикалыќ байланысќан элементтерден т±ратын мєліметтер ќ±рылымын айтамыз. Программаныњ орындалу барысында массивтіњ µлшемі т±раќты болады.

Массивтіњ баяндалуы. Массивтер бірдей типті жєне бір атты логикалыќ байланысќан жадыныњ ±яшыќтар тобы болып табылады. Массивтіњ элементіне ќатынас жасау ‰шін массивтегі осы элементтіњ массивтіњ атын жєне позициясыныњ нµмірін кµрсету ќажет. Кез келген массивтіњ бірінші элементі нµлдік реттік нµмерге ие болады. Массивті баяндаѓанда массивтіњ атын, єрбір элементініњ типін жєне элементтерініњ санын кµрсету керек. Мысалы:

int b[100], x[27];

Тµменде келтірілген программада 10 элементтен т±ратын n б‰тін типті массивтіњ элементтерін нµлмен инициалдау ‰шін for ќайталау ќ±рылымы ќолданылады.

Мысал

/* Массивті инициалдау */

#include <stdio.h>

main()

{ int n[10], i;

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

n[i]=0; /* Массивті инициалдау */

for (i=0; i<=9; i++) /* Массив элементтерін шыѓару */

printf(“%3d%10d\n”, i, n[i]);

return 0; }

Программаныњ нєтижесі:

0 0

1 0

2 0

3 0

4 0

5 0

6 0

7 0

8 0

9 0

Массивтіњ элементтері массивті баяндаудыњ соњына тењдік белгісін жєне ‰тірмен бµлінген инициалданатын мєндер (фигурлы жаќшаѓа алынѓан) тізімін ќою жолымен инициалдауѓа болады. Тµменде келтірілген программа б‰тін типті массивті оњ 10 мєндермен инициалдайды.

Мысал

/* Баяндауда массивті инициалдау */

#include <stdio.h>

main()

{ int i, n[10]={2, 27, 64, 18, 95, 14, 90, 70, 6, 3};

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

printf(“%3d”, n[i]);

return 0;

}

Программаныњ нєтижесі:

2 27 64 18 95 14 90 70 6 3

Егер массивтіњ элементтеріне ќараѓанда инициалданатын мєндердіњ саны аз болса, онда ќалѓан элементтер автоматты т‰рде нµлмен инициалданады. Мысалы, n массивтіњ элементтерін баяндау арќылы нµлдермен инициалдауѓа болады.

int n[10]={0};

м±нда бірінші элемент нµлмен инициалданады жєне ќалѓан тоѓыз элемент автоматты т‰рде нµлмен инициалданады.

Егер массивтіњ инициалданатын мєндердіњ тізімімен баяндауында массивтіњ µлшемі кµрсетілмесе, онда массивтіњ элементтерініњ саны инициалдау тізіміндегі элементтердіњ санына тењ болады.

Си тілінде массивтердіњ бірнеше индекстері болуы м‰мкін. Кµп µлшемді массивтер жиі жол жєне баѓандар бойынша реттелген мєндерден т±ратын кестелерді бейнелеу ‰шін ќолданылады. Кестеніњ наќты элементін идентификациялау ‰шін екі индекс кµрсетіледі: бірінші-элементтіњ жолын кµрсетеді, ал екіншісі баѓанын кµрсетеді. Осындай кестелер немесе массивтер екі µлшемді массивтер деп аталады.

Кµп µлшемді массив бір µлшемді массив сияќты оныњ баяндалуында инициалдануы м‰мкін. Мысалы,

int b[2][2]={{1, 2}, {3, 4}};

Келесі программа екі µлшемді массивтіњ баяндалу кезіндегі инициалдауын кµрсетеді. Программада екі жол жєне ‰ш баѓанды (єрќайсысы алты элементтен т±рады) ‰ш массив баяндалады. Єрбір массивтіњ элементтерін шыѓару ‰шін программада printarray функциясы шаќырылады.

Oz misalim

#include<stdio.h>

#include<math.h>

#include<conio.h>

Main() {

Int m,I,j; float a[n],s;

Clrscr();

Printf(“vvod\n”);

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

Scanf(“%f”,&a[i]);

S=0;

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

S+=pow(-1,i)*a[i];

Printf(“\n%f”,s);

Getch();

Return 0;}

Бірнеше функциялардан тұратын программаны құру.

Си тілінде барлыќ программалар функция ретінде ќарастырылады. Єдетте, б±л тілдегі программалар кµптеген кішкене функциялардан т±рады. Ќолданылатын єр функция ‰шін функцияныњ баяндалуы мен аныќтамасы келтіріледі. Функцияны баяндау оныњ типі жєне параметрлердіњ жазылу реті туралы аќпаратты береді. Функцияны аныќтау кезінде орындалатын наќты операторлар кµрсетіледі. Функциялар типі нєтиже ретінде ќайтаратын мєндердіњ типімен бірдей болуы ќажет. Егер типі берілмесе, онда функция типі ‰ндеместен іnt болады. Егер функция типі басќа тип болса, онда ол шаќырушы программада жєне функцияныњ µзініњ аныќтамасында кµрсетілуі керек.

Функция аныќталуы атымен, формалды параметрлерімен жєне функция денесімен ерекшеленеді. Ол таѓы да ќайтаратын мєнініњ типі жєне функцияныњ жады класы бойынша ерекшеленеді. Функцияны аныќтау синтаксисі келесідей:

[<ЖКт‰рі>][<тип т‰рі>]<сипаттаушы>([<параметрлер тізбегі>])[<параметрлерді баяндау>]<функция денесі>

Жады класыныњ т‰рі <ЖК т‰рі> функцияныњ жады класын береді. <Тип т‰рі> сипаттаушымен бірге ќайтаратын мєнніњ типін жєне функция атын аныќтайды. <Параметрлер тізбегі> µз кезегінде функцияны шаќыру кезінде мєні берілетін формалды параметрлер атынан т±ратын тзбек (бос болуы м‰мкін).<Параметрлерді баяндау>формалды

параметрлердіњ типтерін жєне идентификаторларды береді. <Функция денесі> - жергілікті айнымалыларды баяндаудан жєне операторлардан т±ратын ќ±рамды оператор.

Ќазіргі ќ±рылымы:

[<ЖК т‰рі>][<тип т‰рі>]<сипаттаушы>([<параметрлерді баяндау тізімі>])<функция денесі>

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]