Дәріс №13. Функция ұғымы. Функцияны хабарлау және анықтау. Return операторы



бет5/6
Дата08.04.2022
өлшемі19,3 Kb.
#30335
түріПрограмма
1   2   3   4   5   6
Байланысты:
Дәріс13

2. Return операторы. Return операторының функцияда қолданылуының екі нұсқасы бар:

1) return операторы ағындағы функциядан сол бойда шығарады да программадағы функцияны шақырған нүктеге қайырады, мысалы:

a) max ( inta, int b)

{ int m; if (a>b) max=a;else max=b;

return;}

b) max ( inta, int b)

{ if (a>b) return a;else return b;}

c) max ( inta, int b)

if (a>b) return a; return b;}

return (a>b) ? a:b

d) max( int a,int b) { int m; if(a>b) return a;else return b;}

2) Функциядағы операторлар әрекеттері аяқталғаннан кейін оның мәнін( нәтижені) шақырған нүктеге қайырады:

max( int a,int b) { int m; if(a>b) m=a;else m=b; return m;}

немесе max( int a,int b) { return (a>b)? a:b; m;}

Функция денесінде return операторының бірнешеуі болуы, ал тіпті біреуде болмауы мүмкін. Егер программада return операторы болмаса негізгі ( шақырушы) программаға нәтиже функция денесіндегі соңғы оператор орындалғаннан кейін қайтарылады. Егер функция денесінде return опера торы немесе оператордан кейін ешқандай мән болмаса функцияның қайтаратын мәні белгісіз( анықталмаған). <функ. аты> функциясының есептеген мәнін main() функциясына return нұсқауының көмегімен қайтарылады. return сөзінен кейін кез-келген өрнек болуы мүмкін

return <өрнек>;



Функция негізгі программадағы кейбір мән қайтаруы міндетті емес. Егер return нұсқауы өрнексіз болса (ештеңе жазылмаған), ол басқаруды прог раммада шақырған нүктеге қайтарады, бірақ ешқандай нәтижелік мәні болмайды. Бұл, есептеу функция денесінің соңындағы жүйелі жақшаға жеткенше жүргізіледі. Мән қайыратын функцияларды өрнектердің құрамында пайдалануға болады, бірақ меншіктеу операторының сол жақ бөлігінде пайдалануға болмайды (функцияның қайтаратын мәні нұсқағыш болған жағдайда рұқсат етіледі).

/*_ C_50_ show() функциясының параметрі жоқ және негізгі программаға ешқандай мән қайырмайды __________*/

#include

void show()

{puts( " func show");}

main() {puts( " input func show " );

show(); puts(" return program" );}

/*_____________________________eo program__________*/

/* нәтиже : input func show func show return program */'

/* _C _51_ max функциясының формальді параметрлері бар , бірақ негізгі программаға мән қайырмайды. __________*/

#include

#include

void max(float x,float y); /* x, y формальді параметрлер */

void main(void) { clrscr();

float a,b; puts( " енгізіңіз a ,b");

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

max(a,b); /* a,b нақты параметрлер */

max(2 , 5); /* 2 ,5 нақты параметр-мәндер , x

max(3.1415,2.7382);} /* 3,14, 2,73 нақты параметр-мәндер x>y */

void max(float x,float y)

{ if(x>y) puts(" x > y");else puts( "x

/*_____________________________eo program__________*/

/* _C_52_ max функциясының формальді параметрлері бар және негізгі программаға float типті мән қайырады_*/

#include

#include

float max(float x,float y);

void main(void) { clrscr(); float a,b;

puts( " vvedite a ,b"); scanf("%f %f",&a,&b);

printf( " max(a,b)=%2.2f\n",max(a,b)); / * max(a,b)=6.00 */

printf( " max(2.71,3.14)=%2.2f",max(2.71,3.14)); }



Достарыңызбен бөлісу:
1   2   3   4   5   6




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет