Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Programmirovanie_i_osnovyi_algo

.pdf
Скачиваний:
10
Добавлен:
05.03.2016
Размер:
9.5 Mб
Скачать

Вариант 7. Подсчитать в одномерном массиве целого типа размером 100 элементов количество нулевых значений.

Вариант 8, Сформировать одномерный массив с элементами

z[ i ] ( О <= i < N ) , N==20

ИЗ двух заданных массивов целого типа х[ i ], у[ i ] по правилу:

z[ 1 ] := mini^ к[ 1 ], у[ i ] } , i = О, 1, . , . , N-1

Вариант 9. Вычислить сумму квадратов элементов двух од­ номерных массивов вещественного типа размером по 40 элементов и получить ее из функции как возвращаемое значение

39

Сумма ( х[±] * x[i] -h у[1] ^ у[1] ) 1=0

Вариант 10, Найти индекс максимального элемента в массиве целого типа из 30 элеметов. Результат получить из функции как воз­ вращаемое значение.

Вариант 11, Написать функцию с двумя параметрами логиче­ ского типа, возвращающую значение в соответствии со следующей таблицей истинности:

Параметры

 

Возвраща емый

Первый

Второй

результат

false

false

false

false

true

false

true

false

true

true

true

false

Параметры и результат

- целого типа: false

соответствует ну­

левому и true - ненулевому значениям.

Вариант 12. Получить одномерный массив z из двух заданнкх массивов вещественного типа х, у по правилу:

zfi]

:= ( x[i] -h y[i] ) / 2r ± = О, 1,

, . . , 29

Вариант

13. Найти величину и номер первого

отрицательного

и последнего положительного элементов в массиве вещественного типа заданного размера.

360

Вариант 14. Поменять местами первый и последний элемент, второй и предпоследний и т.д. в одномерном массиве вещественного типа заданного размера.

Вариант 15. Вычислть среднее арифметическое для положи­ тельных чисел в одномерном массиве целого типа заданного разме­ ра. Постарайтесть не потерять дробную часть результата и избежать возможного деления на нуль.

Вариант 16. Написать функцию нахождения минимального элемента среди отрицательных и максимального элемента среди по­ ложительных в одномерном массиве целого типа заданного размера.

Вариант 17. Написать функцию нахождения максимального положительного числа кратного пяти в одномерном массиве целого типа заданного размера.

Вариант 18. Найти количество нулевых элементов в одномер­ ном массиве целого типа заданного размера и сформировать новый массив из ненулевых элементов исходного массива.

Вариант 19. В одномерном массиве вещественного типа за­ данного размера найти сумму элементов, расположенных между максимальным и минимальным элементами. Указанный результат получить из функции как возвращаемое значение.

Вариант 20. Сжать одномерный массив вещественного типа заданного размера. С этой целью удалить из массива все элементы, абсолютное значение которых меньше единицы. Освободившиеся в конце массива элементы заполнить нулями.

П.1.1.8. Области действия определений. Варианты тестов

В ответах на приведенные ниже варианты тестов укажите, как будут выглядеть строки, выведенные на экран в результате выпол­ нения программы, приведенной в соответствующем варианте. В от­ вете укажите также местоположение пробелов.

Вариант 1. Что напечатает следующая программа?

^include <stdio,h>

±nt

i ==

Or j = 2;

int main ( void )

 

{

 

 

auto int

i

= 0/

361

printf(

"± = %d j^%d

\ л " ,

i ,

j

)

;

 

 

{

 

 

 

 

 

 

 

 

 

 

±nt

 

i =2,

j

^ 0;

\n",

 

1,

 

j )

;

pr±ntf(

"± = %d j = %d

 

 

{

Izit

j

= 10; i

+= 1;

j

+= 2;

 

}

printf(

"i = %d j=%d

\ л " ,

i ,

j ) ;

 

 

 

 

 

 

 

 

 

 

printf(

"i = %d j=%d

\ л " ,

 

i ,

j

)

;

}

 

 

 

 

 

 

 

 

 

 

printf(

"i = %d j = %d

\n",

i ,

j

) ;

 

 

z-etuzrn

0;

 

 

 

 

 

 

 

 

 

} // end function

"main"

 

 

 

 

 

 

Вариант 2, Что напечатает следующая программа?

^include

 

<stdio.h>

 

2;

 

 

 

 

 

 

 

 

 

±nt

main

(

i

)

= 10, j =

 

 

 

 

 

 

 

 

 

±nt

void

 

 

 

 

 

 

 

 

 

 

 

 

 

{

a u to

±nt

i

==

8;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

±nt

j

= 0; printfi

 

"i = %d j = %d

 

\ л " ,

i ,

j

) .

 

 

 

 

 

 

{

int

 

j

= 10;

i

+= 1;

j

+= 2;

 

 

 

 

 

 

 

 

 

 

 

 

 

printf(

"i=%d j=%d

\n",

1, j

)

;

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j + + ; printfi

"i = %d j=^%d

\n",

i ,

j

) ;

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

printfi

"i = %d j = %d \ л " ,

i ,

j

)

;

 

 

 

 

 

 

 

return.

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вариант 3.

Что напечатает следующая программа?

^include

 

<stdio.h>

 

 

 

 

 

 

 

 

 

 

 

 

Int

 

 

i , j = 1;

 

 

 

 

 

 

 

 

 

 

 

±nt

maini

 

void

)

 

 

 

 

 

 

 

 

 

 

 

 

 

{

±nt

 

i

= 5;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

±nt

 

j

= 2; j

 

+= 3;

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

j

+= 5;

printfi

"i+l=%d

j=%d

\n",

 

i+1,

j

)

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

printfi

 

"i = %d j = %d \n",

 

i ,

j

)

;

 

 

 

 

 

 

 

return

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

Вариант 4. Что напечатает следующая программа?

362

^include

 

<std±o.h>

1,

j

=

10;

 

 

 

 

 

 

 

 

±пЬ

main

(

void.

1

=^

 

 

 

 

 

 

 

 

Inb

)

 

 

 

 

 

 

 

 

 

 

 

 

(

±nt

 

 

i

=

3;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

printf(

 

"i + l=%d

j=%d

\ л " ,

i+1,

j

)

;

 

 

 

 

 

 

 

{

±nt

 

j

= 1; j

+= 3;

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

j

-f- 5;

printf(

 

"l=%d j^%d

 

\ л " ,

i ,

j

) ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

printfi

"i = %d j-i-l=%d

\ л " ,

i ,

j-hl ) ;

 

 

 

 

}

iretuxn 0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вариант

5. Что напечатает следующая программа?

^include

 

<stdio.h>

 

j = 10;

 

 

 

 

 

 

 

 

int

main

(

void.

i

= 1;

 

 

 

 

 

 

 

 

±nb

)

 

 

 

 

 

 

 

 

 

 

 

 

{

int

 

 

i

=

3;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

I

printf(

 

"i+l^%d

j = %d

\n"r

i+1,

j

)

;

 

 

 

 

 

 

 

(

int

 

j

= 1; j

+=^ 3;

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

+= 5;

printf(

 

"i=%d j=%d

\n",

i ,

j

) ;

 

}

j

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

printf(

"i = %d j + l==%d \n'\

i ,

j+1 )

;

 

 

 

 

геЬ\12ПЛ

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Вариант

6. Что напечатает следующая программа?

^include

 

<stdio.h>

 

 

 

 

 

 

 

 

 

 

 

 

int

 

 

 

i ,

j ;

 

 

 

 

 

 

 

 

 

 

 

 

int

main

(

void

)

 

 

 

 

 

 

 

 

 

 

 

 

{

auto

int

i

=

3;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

printf(

 

"i + l=%d

j=%d

\ л " ,

i + 1,

j

)

;

 

 

 

 

 

 

 

{

auto

int

j

= 1;

j

+= 3;

 

 

 

 

 

 

 

 

 

 

 

 

 

}

printf(

"i = %d j = %d

\n",

i/j

 

)

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

j

+= 5;

printf(

 

"i = %d j = %d

\n",

 

i ,

j

) ;

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

printf(

"i = %d j + l = %d \n",

i ,

j+1 )

;

 

 

 

 

return

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

363

Вариант 7. Что напечатает следующая программа?

^include

<stdlo.h>

 

 

 

 

 

±nt

1 = 10^ j /

 

 

 

 

int main (

void,

)

 

 

 

 

 

 

{

 

 

 

 

 

 

 

 

static

int

i

= 3/

 

 

 

 

{

 

 

 

 

 

 

 

 

printf(

 

'4 = %d j = %d \n",

i ,

j )

;

 

{

a u to

int

j = 10; i

+= 1;

j

+= 2;

 

}

prlntf(

'4 = %d j = %d

\n",

1,

j

) ;

 

 

 

 

 

 

 

 

j

+= 5;

prlntf(

"l = %d j = %d

\n",

 

1, j ) ;

}

prlntfi "l = %d j = %d \n", i , j+1 ) ; return 0;

}

Вариант 8. Что напечатает следующая программа?

^Include

 

<stdlo,h>

 

j

=2;

 

 

 

 

 

 

int

 

1=10,

 

 

 

 

 

 

 

int main

( void )

 

 

 

 

 

 

 

 

 

{

int

1=8;

 

 

 

 

 

 

 

 

auto

 

 

 

 

 

 

 

 

{

int

j =

0;

prlntf(

"l=%d j=%d

\n'\

i, j )

 

 

{

int

j

= 10; 1

+= 1;

j += 2;

 

 

 

 

 

 

 

 

prlntf(

"l = %d j = %d \n",

1, j

)

;

 

 

}

 

 

 

 

 

\л", i, j

 

 

}

j++;

prlntfi

 

"l = %d j = %d

)

;

 

'4 = %d j = %d

\л", i, j

)

;

 

 

 

prlntf(

 

 

 

 

return

0;

 

 

 

 

 

 

 

 

 

Вариант 9. Что напечатает следующая программа?

^Include <stdlo.h>

//Прототипы функций

int

next

(

int

)

;

int

reset

( void

) ;

 

 

int

last

(

int

)

; int

naw ( int

) ;

 

 

 

int

 

 

void

 

1=1;

 

 

 

 

 

 

 

int

main

(

 

)

 

 

 

 

 

 

 

 

{

auto int

 

1,

j ;

1

= reset(

)

;

 

 

 

 

 

 

 

fori

j

=

1;

3

<=

2;

j++ )

 

 

 

 

 

{

prlntf(

 

"\nl

=

%d j

=

%d\n",

1,

j ) ;

 

 

 

 

 

prlntf(

 

"next(

 

1 )

=

%d\n",

next(

1 ) ) ;

364

 

printf(

(

"last(

i

)

-

%d\n",

 

last

(

i

)

)

;

 

prlntf

"naw(

1+j

) =

%d\n",

naw (

1-hj

)

) ;

 

}

 

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

retuxrn

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

±nt

reset

(

void.

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

return

 

1/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

±nt

next

(

xnt

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

return

 

( j

=

i + + )

;

 

 

 

 

 

 

 

 

 

 

 

int

last

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

static

 

int

1

=^

10;

return

(

j

=

l-~

)

;

 

 

 

int

naw (

int

i ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

auto

int

j

=

10;

return(

i

=

j

+= 1

)

;

 

 

 

Вариант

10, Что напечатает следующая программа?

^include <stdio.h>

//Прототипы функций

int

next

(

int

)

;

int

 

reset

(

void

;

) ;

 

 

 

 

 

 

int

last

(

int

)

;

int

 

naw(

int

)

 

 

 

 

 

 

 

int

 

 

 

 

 

 

1=1;

 

 

 

 

 

 

 

 

 

 

 

 

 

int

main

(

void

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

auto

 

int

 

 

Ir

j

;

1

=

reset

(

)

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

fori

 

j

= 1;

j

<= 2;

j++

)

 

 

 

 

 

 

 

 

 

 

{

prlntf(

 

"\nl

 

=

%d j

=

%d\n",

1,

j

)

;

 

 

 

 

(

 

)

;

 

 

prlntf

"next

Г i

;

=

%d\n",

next

(

1

)

 

 

prlntf

(

"last(

 

1

)

=

%d\n'\

last(

 

1

)

)

;

 

 

prlntf

(

"naw(

1+j

)

-

%d\n",

naw(

1+j

)

) ;

 

}

 

 

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

retujzn

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

reset

 

(

void

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

return

 

1;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

next

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

return

(

j

=

1--

)

;

 

 

 

 

 

 

 

 

 

 

 

 

int

last

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

static

 

 

int

1

= 10;

return(

j

=

1++ ) ,

 

 

 

 

365

±nt naw ( ±пЬ i )

{

auto ±nb j - 10; return( 1 - j ~= i ) ;

}

Вариант 11. Что напечатает следующая программа?

^include <stdio.h>

//Прототипы функций

±nt

next

(

±zit

) ;

int

reset

(

-void

) ;

 

 

 

 

 

±nt

last

(

±nt

)

/

i^t naw(

±nt

)

;

 

 

 

 

 

 

 

Int

main

(

void

i

= 1;

 

 

 

 

 

 

 

 

 

 

 

 

 

±nt

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

auto ±nt

i, j ;

i = reset(

 

)

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

fori

 

J, = I;

J

<= 2;

j+-h )

 

 

 

 

 

 

 

 

 

 

{

 

 

 

"\ni

=

%d j

=

%d\n",

i ,

j

) ;

 

 

 

prlntf(

f(

) )

;

 

print

"next(

 

i ; = %d\n"^

 

next

(

1

 

printf(

 

"last(

 

1

)

=

%d\n",

 

last

( 1 ) ) ;

 

printf(

 

"naw(

i+j

)

--= %d\n",

naw (

i+j

)

) ;

 

)

 

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

return

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

reset(

 

void

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

return

 

1;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

±nt

next

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

return(

j

=

--1 )

;

 

 

 

 

 

 

 

 

 

 

 

 

int

last

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

static

 

int

i

=10;

 

return

 

(

j

=

+4-1 )

;

 

 

 

int

naw(

int i

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

auto

int

j

=10;

return

(

i

=

j

-=

i + + )

;

 

Вариант 12. Что напечатает следующая программа?

^include <stdlo.h>

//Прототипы функций

int

next

(

int

)

;

int

reset

(

void

) ;

int

last

(

int

)

;

int

naw(

int

)

;

int

 

 

void

 

1=3;

 

 

 

 

 

int

main

(

 

)

 

 

 

 

 

 

{

auto

int

 

i, j ;

1

=

reset(

) ;

 

 

 

for(

j

= 4;

j

<= 5;

j++ )

 

366

 

{

print

f

(

"\nl

=

%d j

=

%d\n",

i ,

J

)

/

 

 

 

 

)

;

 

print

f(

"next

(

1

)

=

%d\n"^

next

(

1

)

 

prlntf(

f

(

"last(

 

i

)

=

%d\n"r

last

(

1

)

)

;

 

print

"naw(

1+j

)

=

%d\n"

r naw (

1+j

)

) /

 

}

 

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

jcetum

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

reset(

 

void

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

jretujrn

i /

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

i n t

next

(

±nt

 

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

jcGtuim

( j

 

=

- - i )

;

 

 

 

 

 

 

 

 

 

 

i n t

last

(

i n t

 

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

static

 

int

 

1;

jret-ami

j

=

i-f-/- )

;

 

 

 

 

 

i n t

naw (

int

1

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

auto

int

 

j

=

5;

retuim

(

1 = j

+= 1++

) /

 

 

 

Вариант

13, Что напечатает следующая

программа?

^Include <stdlo.h>

//Upототипы функций

int

next

(

int

)

;

int

 

reset

 

(

void

) ;

 

 

 

 

 

 

int

last

(

int

)

;

int

2;

naw(

 

int

 

)

;

 

 

 

 

 

 

int

 

 

void

 

1

=

 

 

 

 

 

 

 

 

 

 

 

 

 

int

main

(

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

auto

int

 

i, j

;

1

=

reset

(

) ;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

for(

j

=

0;

j

<=

1;

j-h-h

)

 

 

 

 

 

 

 

 

 

{

 

 

 

"\nl

 

=

%d j

=

%d\n"r

ir

j

)

;

 

 

 

prlntf(

f(

 

)

;

 

print

"next

(

1

)

=

 

%d\n"r

next

(

1

)

 

prlntf(

(

"last(

 

1

)

=

=

%d\n",

last(

 

1

)

)

;

 

prlntf

"naw(

1+j

 

)

%d\n",

naw (

1+j

)

) ;

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

return

 

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

reset(

 

void

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

return(

1

+

1

) ;

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

next

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

return

 

( j

= 1++ )

;

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

last

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

367

{

int

i

=

4;

return

(

j

=

i + + )

;

static

}

 

 

 

 

 

 

 

 

 

 

±Tit naw (

±nt

1 )

 

 

 

 

 

 

 

 

{

 

 

 

 

 

 

 

 

 

 

auto int

j

=

3;

return

(

1

=

j +=

i ) ;

}

 

 

 

 

 

 

 

 

 

 

Вариант

14. Что напечатает следующая программа?

^include <stdio.h>

//Прототипы функций

int

next

(

int

)

; void

reset(

 

void

) ;

 

 

 

 

 

 

int

last

(

int

)

; int

naw(

int

)

;

 

 

 

 

 

 

 

int

 

 

 

 

i;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

main

(

void

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

auto

int

 

j

;

reset(

)

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

for(

j

= 2;

j

<- 3;

j-h+ )

 

 

 

 

 

 

 

 

 

 

{

 

 

 

 

"\ni

=

%d j

=

%d\n",

i ,

j )

 

;

 

 

 

printfi

f(

i

)

;

 

print

 

"next(

 

i

)

=

%d\n",

 

next

(

)

 

printf(

 

"\ast(

 

i

)

=

%d\n",

 

last

(

i

)

)

;

 

printfi

 

"naw(

i-hj

)

- %d\n", naw(

i-hj

)

) ;

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

return

 

 

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

void

reset

 

(

void

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

i = 5/

 

 

return;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

next

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

return

 

(

j

= i

-h j

) ;

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

last

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

sta-tic

 

int

i

=

2;

return

(

j

+=

i + + )

;

 

 

 

 

}

 

 

 

 

 

naw(

int

i )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

auto

int

 

j

=

1;

return

(

i

= j+i-

) ;

 

 

 

 

 

 

 

 

 

 

 

 

}

Вариант 15. Что напечатает следующая программа?

^include <stdio.h>

//Upототипы функций

int

next

(

int

)

; int

reset

(

void

) ;

int

last

(

int

)

; int

naw(

int

)

;

int

 

 

void

i

= 6;

 

 

 

 

int

main

(

 

)

 

 

 

 

{

 

 

 

 

 

 

 

 

 

368

 

a u to

±nt

j

,

i;

i

=

reset

(

)

;

 

 

 

 

 

 

 

 

£or(

j

=

2;

j

<= 3;

j++

)

 

 

 

 

 

 

 

 

 

 

 

{

 

 

 

 

 

 

 

 

 

 

 

 

i ,

 

 

 

 

 

 

 

printfC

 

"\ni

=

%d j

=

%d\n",

j

 

)

;

 

 

 

print

f(

"next(

 

i

)

=

%d\n",

next

 

(

±

)

)

;

 

printf(

 

"last(

 

i

;

=

%d\n"r

last

 

(

i

)

)

;

 

printf(

 

"naw(

i+j

)

=

%d\n",

naw(

 

i+j

)

) ;

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x-etux-ii

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

±nt

reset(

 

void

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

I

 

 

 

 

 

 

зо&Ьихпл

i-h-h;

 

 

 

 

 

 

 

}

Int

 

 

1=2;

 

 

 

 

 

 

 

next

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

return

 

( j

=

~-i

)

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

last

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

static

 

int

i

=

2;

return

(

j

=-

i + + )

;

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

naw(

int

i )

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

auto

int

j

=

7;

return(

 

i

=

j

-=

i

) ;

 

 

 

 

 

 

 

 

}

Вариант

16, Что напечатает следующая программа?

 

^include <stdio,h>

//Прототипы функций

int

next

(

int

)

;

int

 

reset

( int

)

;

 

 

 

 

 

 

int

last

(

int

)

/

int

 

naw(

int

)

;

 

 

 

 

 

 

 

int

main

(

void

)

1=4;

 

 

 

 

 

 

 

 

 

 

 

 

 

int

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

auto int

jr

1

=

1;

1

= reset

(

1%4

)

;

 

 

 

 

 

 

 

 

£or(

j

=

1;

j

<

3

 

; j++

)

 

 

 

 

 

 

 

 

 

 

{

printfi

 

"\ni

 

=

%d j

=

%d\n",

i ,

j

)

;

 

 

 

 

 

 

 

 

 

 

print

f(

"next(

 

i

)

=

%d\n",

next

(

i

)

)

;

 

 

printfC

 

"last(

 

1

)

=

%d\n"r

last

(

i

)

)

;

 

 

printf(

 

"naw(

i-hj

)

=

%d\n",

naw(

i+j

)

) ;

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

return

0;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

reset

(

int

i

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

return

i;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

int

next

(

int

j

)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

{

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

return(

j

=

++i

)

;

 

 

 

 

 

 

 

 

 

 

 

 

369

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