| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > Задачки |
| Автор: NV 27.12.2005, 13:02 |
| Не знаете как делать следующие задачки: . Записать сложную функцию на естественном языке. void * ( * j ) ( int * [3], char ( * ) [4]); 2. #include <stdio.h> int a[] = {8, 7, 6, 5, 4 }; int *p[] = {a, a+1, a+2, a+3, a+4}; int **pp = p; int main(int argc, char* argv[]) { printf("*a=%d **p=%d **pp=%d/n", *a, **p, **pp); pp++; printf("*a=%d **p=%d **pp=%d/n", pp-p, **pp - a, **pp); ++*pp; printf("*a=%d **p=%d **pp=%d/n", pp-p, *pp - a, **pp); pp=p; ++**pp; printf("*a=%d **p=%d **pp=%d/n", pp-p, *pp - a, **pp); return 0; } что будет выведено на печать? 3. реализовать функцию, в которую передается двумерный квадратный массив int и его размерность. функция должна заполнить массив числами, начиная от 1 "улиткой". 4. переписать без использования реккурсии,описать, что выполняет функция: void xyz(char *р) { xyz1(p, strlen(p)); } void xyz1(char*p, int n) { if (n > 1) { char c; c = *p; p[0] = p[n-1]; *(p+n-1) = c; xyz1(++p, n-2); } } 5. переписать с использованием оператора for и без оператора goto: int i = 10; p1: while(i < 30) { char c; if ((c = getchar()) == 'a') goto p1; if (c == 'b') goto p2; printf ("%d\n", i); p2: i++; } 6. реализовать функцию int atoi(const char *str), которая переводит число, записанное в строке, в целое (как отрицательное, так и положительное). В случае ошибки при переводе функция должна возвращать число 0. (Функциями стандартной библиотеки пользовать нельзя.) 7. Разработать программу подсчета количества строк\слов\символов. Прграмма получает на поток стандарто\ного ввода поток символов, по нему она должна подсчитать количество строк\слов\символов, результаты подсчета должна выдать на поток стандартного вывода. (Конец строки - '\n', разделительслов - ' ' или '\n'; последняя строка и слово могут быть ничем не завершены). |
| Автор: Exekutor 27.12.2005, 13:05 | ||
Когда оформляем код -- используем ТОЛЬКО [code=cpp][/code] чтобы было удобнее читать. Это правило а не рекомендация![quote] |
| Автор: NV 27.12.2005, 13:24 | ||||||
Записать сложную функцию на естественном языке.
что будет выведено на печать? 3. реализовать функцию, в которую передается двумерный квадратный массив int и его размерность. функция должна заполнить массив числами, начиная от 1 "улиткой". 4. переписать без использования реккурсии,описать, что выполняет функция:
5. переписать с использованием оператора for и без оператора goto:
6. реализовать функцию int atoi(const char *str), которая переводит число, записанное в строке, в целое (как отрицательное, так и положительное). В случае ошибки при переводе функция должна возвращать число 0. (Функциями стандартной библиотеки пользовать нельзя.) 7. Разработать программу подсчета количества строк\слов\символов. Прграмма получает на поток стандарто\ного ввода поток символов, по нему она должна подсчитать количество строк\слов\символов, результаты подсчета должна выдать на поток стандартного вывода. (Конец строки - '\n', разделительслов - ' ' или '\n'; последняя строка и слово могут быть ничем не завершены). |
| Автор: MAKCim 27.12.2005, 13:48 | ||||||
| 1. Указатель на функцию, которая получает в качестве параметров массив из 3-х указателей на int (будет проинтерпретировано int**), указатель на массив из 4-х char и возвращает void* 3.
4. Симметричый обмен, например char* p="stroustroup" -> "puortsuort" без рекурсии
6.
пока все ps. задачи-то простые |
| Автор: NV 27.12.2005, 13:57 |
| Спасибо буду разбираться |
| Автор: Romikgy 27.12.2005, 14:49 | ||||||
Имхо лучше так
|
| Автор: MAKCim 27.12.2005, 21:53 | ||||
согласен |