игра брюс 2048
Главная / Программирование / Основы разработки программного обеспечения на примере языка С / Тест 3

Основы разработки программного обеспечения на примере языка С - тест 3

Упражнение 1:
Номер 1
Какие типы данных являются стандартными в языке Си?

Ответ:

 (1) int 

 (2) real 

 (3) long 

 (4) bool 

 (5) динамические массивы  


Номер 2
Какие типы данных являются целочисленными?

Ответ:

 (1) float 

 (2) char 

 (3) long 

 (4) double 


Номер 3
Какие типы данных являются вещественными?

Ответ:

 (1) float 

 (2) char 

 (3) long 

 (4) double 


Упражнение 2:
Номер 1
Какой диапазон значений может принимать тип signed char?

Ответ:

 (1) -128 ... 127 

 (2) 0 ... 255 

 (3) 0 ... 65535 


Номер 2
Какой диапазон значений может принимать тип unsigned char?

Ответ:

 (1) -128 ... 127 

 (2) 0 ... 255 

 (3) -32768 … 32767 


Номер 3
Какие описания типов являются эквивалентными?

Ответ:

 (1) char и signed char 

 (2) char и unsigned char 

 (3) signed char и unsigned char 


Упражнение 3:
Номер 1
Какая строка задает перечислимый тип данных?

Ответ:

 (1) unsigned int UINT; 

 (2) typedef char Msg[100]; 

 (3) enum Err {ERR_READ, ERR_WRITE, ERR_CONVERT}; 


Номер 2
В программе определено перечисление: enum Err {ERR_READ, ERR_WRITE, ERR_CONVERT}. Чему равно значение константы ERR_WRITE?

Ответ:

 (1)

 (2)

 (3)

 (4) значение не определено 


Номер 3
В программе определено перечисление: enum Err {ERR_READ=1, ERR_WRITE, ERR_CONVERT}. Чему равно значение константы ERR_WRITE?

Ответ:

 (1)

 (2)

 (3)

 (4) значение не определено 


Упражнение 4:
Номер 1
Какие элементы может содержать структура (struct)?

Ответ:

 (1) только однотипные  

 (2) элементы разных типов 

 (3) только символьные данные 


Номер 2
В программе задан массив int Arr[5]={3,2,1}. Значение какого элемента этого массива равно 2?

Ответ:

 (1) Arr[0] 

 (2) Arr[1] 

 (3) Arr[2] 

 (4) Arr[3] 


Номер 3
В программе задан массив int Arr[5]={3,2,1}. Чему равно значение элемента Arr[4]?

Ответ:

 (1)

 (2)

 (3)

 (4)

 (5) значение не определено 


Упражнение 5:
Номер 1
В программе определена структура

typedef struct 
  {
    char * name; 
    long price; 
    int volume;
  } GOODS;



Какое объявление переменной этого типа является верным? 

Ответ:

 (1) GOODS food;  

 (2) struct goods food; 

 (3) struct GOODS food; 


Номер 2
В программе определена структура

struct goods 
  {
    char * name; 
    long price; 
    int volume;
  };


Какое объявление переменной этого типа является верным? 

Ответ:

 (1) GOODS food;  

 (2) struct goods food; 

 (3) struct GOODS food; 


Номер 3
В программе объявлена переменная struct goods food. Каким образом должна быть определена структура goods?

Ответ:

 (1) typedef struct { char * name; long price; int volume; } GOODS;  

 (2) typedef struct { char * name; long price; int volume; } goods;  

 (3) struct goods { char * name; long price; int volume; };  

 (4) struct GOODS { char * name; long price; int volume; };  


Упражнение 6:
Номер 1
Что будет выведено на экран в результате выполнения следующего фрагмента программы?

int i;
for(i=9;i>0;--i)
	printf("*");


Ответ:

 (1) ********** 

 (2) ********* 

 (3) ******** 

 (4) ******* 


Номер 2
Сколько ; нужно добавить в приведенный фрагмент, чтобы в результате его выполнения на экран было выведено 10 звездочек?

int i
for(i=0;i<10;i++)
printf("*")


Ответ:

 (1)

 (2)

 (3)


Номер 3
Что будет выведено на экран после выполнения программы (язык Си)?

void msum(int a, int b) {
	a = a + 2*b;
}
void main() {
	int a = 1;
	int b = 1;
	msum(a,b);
	printf("%d",a);
}



Ответ:

 (1)

 (2)

 (3)

 (4)


Упражнение 7:
Номер 1
Как правильно задать трехмерный массив в Си?

Ответ:

 (1) int A[10,20,30]; 

 (2) int A[10;20;30]; 

 (3) int A[10][20][30]; 

 (4) int A[3][10,20,30]; 


Номер 2
Как правильно обратиться к элементу el2 структуры smth?

typedef struct {
	double el1;
	int el2;
} smth;
smth A;


Ответ:

 (1) A.el2 

 (2) A->el2 

 (3) A[el2] 


Номер 3
В программе задана структура

struct Worker {
		char fio[30];
		int date, code;
		double salary;
	};
	Worker worker, stuff[100], *ps;


В каких случаях доступ к полям структуры выполняется неверно? 

Ответ:

 (1) worker.fio=”Иванов”; 

 (2) stuff[2]->code=100; 

 (3) ps->salary=0.12; 


Упражнение 8:
Номер 1
Что будет выведено на экран в результате выполнения приведенного фрагмента?

float f;
f = 10/3;
printf("%f",f);


Ответ:

 (1) 1.000000 

 (2) 3.000000 

 (3)

 (4) 3.333333 

 (5)


Номер 2
Что будет выведено на экран в результате выполнения приведенного фрагмента?

int  f;
f = 10%3;
printf("%d",f);


Ответ:

 (1)

 (2)

 (3)

 (4)


Номер 3
Что будет выведено на экран в результате выполнения приведенного фрагмента?

float f;
f = 10/3;
printf("%f",f);


Ответ:

 (1) 1.000000 

 (2) 3.000000 

 (3)

 (4) 3.333333 

 (5)


Упражнение 9:
Номер 1
Что хранит указатель на переменную?

Ответ:

 (1) значение переменной 

 (2) имя переменной 

 (3) адрес переменной в области памяти 


Номер 2
Сколько указателей и переменных задано в описании int *a, b, c ?

Ответ:

 (1) 3 указателя 

 (2) 3 переменнх 

 (3) 1 указатель, 2 переменных 


Номер 3
В программе задана переменная int a=5. Как в указатель записать адрес этой переменной?

Ответ:

 (1) int * p=a; 

 (2) int * p=&a; 

 (3) int * p (&a); 


Упражнение 10:
Номер 1
В программе задана строка char str[10]= "Vasya". Какие утверждения являются верными?

Ответ:

 (1) под строку выделяется 5 байт 

 (2) 5 байт занято символами строки 

 (3) 6-ой байт занят нуль-символом 


Номер 2
Какое описание строки является верным?

Ответ:

 (1) char str[10]= "Vasya"; 

 (2) char str[]="Vasya"; 

 (3) char str[]; 


Номер 3
Какое описание строки является верным для языка Си?

Ответ:

 (1) char *st; 

 (2) char st[100]; 

 (3) string st; 


Упражнение 11:
Номер 1
Чему будет равно значение перемнной x после выполнения приведенного кода?

int x = 1;
x += x++ + ++x;



Ответ:

 (1)

 (2)

 (3)


Номер 2
Чему будет равно значение перемнной x после выполнения приведенного кода?

int x = 1;
x += x++;



Ответ:

 (1)

 (2)

 (3)

 (4)


Номер 3
Чему будет равно значение перемнной x после выполнения приведенного кода?
int x = 1;
x += ++x;

Ответ:

 (1)

 (2)

 (3)

 (4)


Упражнение 12:
Номер 1
В результате выполнения каких инструкций вывод на экране будет такой же, как при выполнении приведенного цикла?

for(int i=0; i<10; i++) printf("%d\n", i);


Ответ:

 (1) int i=10; while (i<=10 && i>=0) { printf("%d\n", i); i--; }  

 (2) int i=1; while (i<=10 && i>=0) { printf("%d\n", i); i++; }  

 (3) int i=0; while (i<=10 && i>=0) { printf("%d\n", i); i++; }  

 (4) int i=0; while (i<10 && i>=0) { printf("%d\n", i); i++; }  


Номер 2
В результате выполнения каких инструкций вывод на экране будет такой же, как при выполнении приведенного цикла?

int i=0;
	while (i<10 && i>=0) {
		printf("%d\n", i);
		i++;
	}

Ответ:

 (1) for(int i=0; i<=10; i++) printf("%d\n", i);  

 (2) for(int i=1; i<=10; ++i) printf("%d\n", i);  

 (3) for(int i=0; i<10; i++) printf("%d\n", i);  


Номер 3
В результате выполнения каких инструкций на экране будет выведено такое же количество строк, как при выполнении приведенного цикла?

int i=0;
	while (i<10 && i>=0) {
		printf("%d\n", i);
		i++;
	}

Ответ:

 (1) int i=0; do { i++; printf("%d\n", i); } while (i<=10);  

 (2) int i=1; do { printf("%d\n", i); i++; } while (i<=10);  

 (3) int i=0; while (i>=0 && i<=100) { printf("%d\n", i); i+=10; }  

 (4) for(int i=1; i<=10; ++i) printf("%d\n", i); 




Главная / Программирование / Основы разработки программного обеспечения на примере языка С / Тест 3