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

test_st(новый) / Test_4

.doc
Скачиваний:
16
Добавлен:
03.03.2016
Размер:
41.47 Кб
Скачать

Донецкий национальный технический университет

Тест №4 Вариант №1

Учебная дисциплина - системное программирование.

1.Записать результаты работы программ, которые выводятся операторами printf(3 балла).

double f_par(double (*pf)(double), double a, double b)

{double s=0; s+=pf(++a*b); return s; }

double f1(double x) { return x/2; }

double f2(double x) {double z=3; return 4*x*z; }

void main()

{double a=4.0,b=3.0,c;

clrscr(); c=f_par(f1,a,b);

printf("\nSol1: %f",c);

printf("\nSol2: %f", f_par(f2,a,b)); getch();

}

2. Записать последнюю строку вывода на экран, если были введены режимы 1,2,5 (2 балла).

int x;

int f1(void) {printf("\n режим 1:"); x+=4; return 1; }

int f2(void) {printf("\n режим 2:"); x=x++ *2; return 2; }

int f3(void) {printf("\n режим 2:"); x-=4; return 3; }

int (* menu(void))(void)

{ int choice; int (*menu_items[] )( ) ={f1,f2,f3};

printf("\nВедите номер режима 1 или 2 или 3:");scanf("%d",&choice);

if (choice<4 && choice>0) return menu_items[choice-1];

else return NULL;

}

void main()

{int (*r)(void);int t; clrscr();

while (1)

{r=menu();

if (r==NULL) { printf("\nОшибка выбора режима! x=%d", x); getch(); return; }

t=(*r)(); x+=t; printf("t=%d",t);

}

}

Донецкий национальный технический университет

Тест №4 Вариант №2

Учебная дисциплина - системное программирование.

1.Записать результаты работы программ, которые выводятся операторами printf(3 балла).

double f_par(double (*pf)(double), double a, double b)

{double s=0; s+=pf(a++/b); return s-1; }

double f1(double x) { return 2*x/2; }

double f2(double x) {double z=2; return 3*x/z; }

void main()

{double a=2.0,b=4.0,c;

clrscr(); c=f_par(f1,a,b);

printf("\nSol1: %f",c);

printf("\nSol2: %f", f_par(f2,a,b)); getch();

}

2. Записать последнюю строку вывода на экран, если были введены режимы 1,3,8 (2 балла).

int x;

int f1(void) {printf("\n режим 1:"); x+=4; return 1; }

int f2(void) {printf("\n режим 2:"); x=x++ *2; return 2; }

int f3(void) {printf("\n режим 2:"); x-=4; return 3; }

int (* menu(void))(void)

{ int choice; int (*menu_items[] )( ) ={f1,f2,f3};

printf("\nВедите номер режима 1 или 2 или 3:");scanf("%d",&choice);

if (choice<4 && choice>0) return menu_items[choice-1];

else return NULL;

}

void main()

{int (*r)(void);int t; clrscr();

while (1)

{r=menu();

if (r==NULL) { printf("\nОшибка выбора режима! x=%d", x); getch(); return; }

t=(*r)(); x+=t; printf("t=%d",t);

}

}

Донецкий национальный технический университет

Тест №4 Вариант №3

Учебная дисциплина - системное программирование.

1.Записать результаты работы программ, которые выводятся операторами printf(3 балла).

double f_par(double (*pf)(double), double a, double b)

{double s=0; s+=pf(--a*b); return s+3; }

double f1(double x) { return sin(x)/2; }

double f2(double x) {double z=cos(x); return sin(x)*z; }

void main()

{double a=1.0,b=3.0,c;

clrscr(); c=f_par(f1,a,b);

printf("\nSol1: %f",c);

printf("\nSol2: %f", f_par(f2,a,b)); getch();

}

2. Записать последнюю строку вывода на экран, если были введены режимы 2,2,6 (2 балла).

int x;

int f1(void) {printf("\n режим 1:"); x+=4; return 1; }

int f2(void) {printf("\n режим 2:"); x=x++ *2; return 2; }

int f3(void) {printf("\n режим 2:"); x-=4; return 3; }

int (* menu(void))(void)

{ int choice; int (*menu_items[] )( ) ={f1,f2,f3};

printf("\nВедите номер режима 1 или 2 или 3:");scanf("%d",&choice);

if (choice<4 && choice>0) return menu_items[choice-1];

else return NULL;

}

void main()

{int (*r)(void);int t; clrscr();

while (1)

{r=menu();

if (r==NULL) { printf("\nОшибка выбора режима! x=%d", x); getch(); return; }

t=(*r)(); x+=t; printf("t=%d",t);

}

}

Донецкий национальный технический университет

Тест №4 Вариант №4

Учебная дисциплина - системное программирование.

1.Записать результаты работы программ, которые выводятся операторами printf(3 балла).

double f_par(double (*pf)(double), double a, double b)

{double s=0; s+=pf(++a*--b); return s; }

double f1(double x) { return 2*x-2; }

double f2(double x) {double z=3; return x*x-z; }

void main()

{double a=4.0,b=3.0,c;

clrscr(); c=f_par(f1,a,b);

printf("\nSol1: %f",c);

printf("\nSol2: %f", f_par(f2,a,b)); getch();

}

2. Записать последнюю строку вывода на экран, если были введены режимы 3,2,4 (2 балла).

int x;

int f1(void) {printf("\n режим 1:"); x+=4; return 1; }

int f2(void) {printf("\n режим 2:"); x=x++ *2; return 2; }

int f3(void) {printf("\n режим 2:"); x-=4; return 3; }

int (* menu(void))(void)

{ int choice; int (*menu_items[] )( ) ={f1,f2,f3};

printf("\nВедите номер режима 1 или 2 или 3:");scanf("%d",&choice);

if (choice<4 && choice>0) return menu_items[choice-1];

else return NULL;

}

void main()

{int (*r)(void);int t; clrscr();

while (1)

{r=menu();

if (r==NULL) { printf("\nОшибка выбора режима! x=%d", x); getch(); return; }

t=(*r)(); x+=t; printf("t=%d",t);

}

}

Соседние файлы в папке test_st(новый)