letsbegin
This commit is contained in:
73
README.md
Normal file
73
README.md
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
## letsbegin
|
||||||
|
|
||||||
|
Копия README.md на сайте `https://timp.pw/121/lab0_letsbegin`
|
||||||
|
|
||||||
|
```
|
||||||
|
Пользователи VM
|
||||||
|
user/user
|
||||||
|
root/root
|
||||||
|
```
|
||||||
|
|
||||||
|
Задачи:
|
||||||
|
|
||||||
|
* Развернуть ВМ `debian 11`.
|
||||||
|
* shell intro
|
||||||
|
* потыркать gcc, vim/gedit/code (visual studio code), man
|
||||||
|
* Вспомнить/почитать про указатели в C
|
||||||
|
|
||||||
|
* написать функции
|
||||||
|
* helloworld -- программа печатающая helloworld ^_^
|
||||||
|
* написать функцию mystrlen (функция, печатающая длину строки)
|
||||||
|
Интерфейс функции:
|
||||||
|
```
|
||||||
|
int mystrlen(const char *s);
|
||||||
|
```
|
||||||
|
* написать функцию mystr_idx,
|
||||||
|
которая находит индекс строки substr в строке str или -1, если такой подстроки нет
|
||||||
|
Интерфейс функции:
|
||||||
|
```
|
||||||
|
int mystr_idx(char *str, char *substr)
|
||||||
|
```
|
||||||
|
Примеры работы:
|
||||||
|
mystr_idx("helloworld", "world") == 5
|
||||||
|
mystr_idx("helloworld", "helloworld") == 0
|
||||||
|
mystr_idx("helloworld", "foo") == -1
|
||||||
|
|
||||||
|
* sum (функция должна суммировать int-массив)
|
||||||
|
* fibonachi
|
||||||
|
|
||||||
|
|
||||||
|
* Написать на C программу `wcl`, которая будет печатать количество строк в файлах на стандартный вывод.
|
||||||
|
|
||||||
|
В качестве аргументов программе `wcl` передаётся один или несколько путей к файлам.
|
||||||
|
На выход печатается количество строк и имя файла (разделённые символом \t).
|
||||||
|
|
||||||
|
Примеры работы:
|
||||||
|
|
||||||
|
```
|
||||||
|
$ ./wcl ./test/wiki_ci
|
||||||
|
3335 ./test/wiki_ci
|
||||||
|
|
||||||
|
$ ./wcl ./test/wiki_ci ./test/nullfile
|
||||||
|
3335 ./test/wiki_ci
|
||||||
|
0 ./test/nullfile
|
||||||
|
```
|
||||||
|
|
||||||
|
*ВАЖНО*: Уточнение для самых хитрых. Использовать system/execve для запуска внешних утилит нельзя!!!!1111адинадинадин
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Вам могут понадобится функции:
|
||||||
|
|
||||||
|
* fopen(3)
|
||||||
|
* fread(3)
|
||||||
|
* fclose(3)
|
||||||
|
* feof(3)
|
||||||
|
|
||||||
|
Могут пригодится утилиты:
|
||||||
|
* gcc(1) -- компилятор
|
||||||
|
* diff(1) -- утилита для поиска различий между двумя текстовыми файлми
|
||||||
|
может пригодится для тестов
|
||||||
|
* rm(1) -- утилита для удаления файлов
|
||||||
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user