Слайд 4Ответ: 7
#include
int func(int *p, int *q) {
int s=0;
while (p s+=*(++p);
return s;
}
int main(void)
{
int sum, m[6]={1,2,3,4,5,6};
sum=func(m+1,m+3);
printf("%d", sum);
}
Слайд 5Ответ: 109 155 6d
#include
int main(void) {
char ch = 'm';
printf("%d %o %x
", ch, ch, ch);}
Слайд 6Ответ: 5
#include
int main(void) {
char ch = '\053'- '\x26';
printf(" %u ", ch);}
Слайд 9Ответ: paler
#include
int main(void) {
char s[9] = "compiler";
char *ps;
ps = s+3;
*(ps +1)
= 'a';
printf("%s", ps);
}
Слайд 12Ответ: 9
#include
int main(void) {
char *p = "gghhgggghh";
while (*p != p[2])
putchar(*p++);
puts(&p[2]);
}
Слайд 13Ответ: 5
#include
int main(void) {
char *p = "qrst";
while (*p != 's')
putchar(*p++);
puts(p);
}
Слайд 15Ответ: только B
При неудачном выделении памяти pa=NULL автоматически выполняется.
Освобождать память функцией free(pa)
нет необходимости, т.к. она не выделилась.
Слайд 16Ответ: A, Б или В
А)В неопределенном состоянии, если произошло успешное увеличение блока.
В)Будет
ссылаться на начало блока дин. Массива, если изначально на него выделилась память.
Б)Неопределенный указатель, если память вообще не выделилась.
Слайд 17Ответ: А, Б или В
Равен NULL, если неудачное увеличение блока.
Ссылается на
начало блока при любом успешном исходе.
Неопределённый указатель, если для p не выделилась память.