{"id":18654220,"url":"https://github.com/ysoroko/c_mini_challenges","last_synced_at":"2025-11-05T16:30:35.281Z","repository":{"id":109408770,"uuid":"409113665","full_name":"Ysoroko/c_mini_challenges","owner":"Ysoroko","description":"Tests to teach C basics","archived":false,"fork":false,"pushed_at":"2024-01-07T22:03:58.000Z","size":374,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-12-27T14:12:35.638Z","etag":null,"topics":["c","challenge","everyday","intro","regular","tests"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Ysoroko.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2021-09-22T07:56:18.000Z","updated_at":"2024-01-02T07:46:02.000Z","dependencies_parsed_at":"2024-01-07T17:33:47.158Z","dependency_job_id":"56c439e9-2558-4f81-b726-228b4f018ad4","html_url":"https://github.com/Ysoroko/c_mini_challenges","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ysoroko%2Fc_mini_challenges","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ysoroko%2Fc_mini_challenges/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ysoroko%2Fc_mini_challenges/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ysoroko%2Fc_mini_challenges/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Ysoroko","download_url":"https://codeload.github.com/Ysoroko/c_mini_challenges/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239467409,"owners_count":19643604,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["c","challenge","everyday","intro","regular","tests"],"created_at":"2024-11-07T07:14:23.621Z","updated_at":"2025-11-05T16:30:35.235Z","avatar_url":"https://github.com/Ysoroko.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# c_mini_challenges\n\n## Tests to teach C basics\n\n### Prerequisites:\n[- Install Windows Subshell Linux if learning on Windows](https://learn.microsoft.com/en-us/windows/wsl/install)\n\n[- Install Visual Studio Code](https://code.visualstudio.com/)\n\n[- Install C/C++ extension for VS Code](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools)\n\n[- Install Makefile tools extension for VS Code](https://marketplace.visualstudio.com/items?itemName=ms-vscode.makefile-tools)\n\n[- Learn some Shell basics](https://github.com/Ysoroko/c_mini_challenges/blob/main/Shell-functions.pdf)\n\n[- Learn some Git basics]\n\n### How to work with C:\n1) Create a file ending by \".c\" (Example: example.c)\n2) Write your code inside\n3) When it's ready, compile it using the command ```gcc -Wall -Wextra -Werror example.c```\n4) This will create an executable. By default, it will be named \"a.out\". You can then run your code with the command ```./a.out``` if you are in the same directory\n5) Note: to test your code you will need a main function. If the exercice is asking for a *program*, include the main function in your code. If the exercice is asking for a *function*, do not include the main function in your code. (You can leave it commented)\n\n### First steps:\n1) Read the code in [intro.c file](https://github.com/Ysoroko/c_mini_challenges/blob/main/intro.c)\n2) Download it to your computer\n3) Compile it and run the executable\n4) Try to play with the code. Change the values, add lines of code, understand every line of code\n   \nSeptember| October | November | December | January |\n-------------|-------------|-------------|-------------|-------------|\n[1) ft_square](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/001_22_09_ft_square.MD) | [20) ft_descriptive_hundred](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/020_01_10_ft_descriptive_hundred.MD) | [38) ft_write_backwards](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/038_03_11_ft_write_backwards.MD) | [51) ft_files](https://github.com/Ysoroko/c_mini_challenges/blob/main/December/051_06_12_ft_files.MD) | [57) ft_strdup](https://github.com/Ysoroko/c_mini_challenges/blob/main/January/057_05_01_ft_strdup.MD) |\n[2) ft_mushka](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/002_22_09_ft_mushka.MD) |  [21) ft_descriptive_int](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/021_02_10_ft_descriptive_int.MD) | [39) ft_write_one_in_two_chars](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/039_06_11_ft_write_one_in_two_chars.MD) |  [52) ft_read_n_chars](https://github.com/Ysoroko/c_mini_challenges/blob/main/December/052_08_12_ft_read_n_chars.MD) | [58) ft_strjoin](https://github.com/Ysoroko/c_mini_challenges/blob/main/January/058_11_01_ft_strjoin.MD) |\n[3) ft_first_n_chars](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/003_23_09_ft_first_n_chars.MD) | [22) ft_descriptive_sum](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/022_02_10_ft_descriptive_sum.MD) | [40) ft_strcpy](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/040_08_11_ft_strcpy.MD) | [53) ft_heap_string](https://github.com/Ysoroko/c_mini_challenges/blob/main/December/053_10_12_ft_heap_string.MD) | [59) ft_digit_split](https://github.com/Ysoroko/c_mini_challenges/blob/main/January/059_12_01_ft_digit_split.MD) |\n[4) ft_to_print_or_not_to_print](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/004_24_09_ft_to_print_or_not_to_print.MD) | [23) ft_functions](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/023_07_10_ft_functions.MD) | [41) ft_write_last_word](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/041_08_11_ft_write_last_word.MD) | [54) ft_str_sep](https://github.com/Ysoroko/c_mini_challenges/blob/main/December/054_13_12_ft_str_sep.MD) | [60) ft_macros_header](https://github.com/Ysoroko/c_mini_challenges/blob/main/January/060_16_01_ft_macros_header.MD) |\n[5) ft_sign](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/005_24_09_ft_sign.MD) |  [24) ft_decrements](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/024_08_10_ft_decrements.MD) | [42) ft_mini_atoi](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/042_14_11_ft_mini_atoi.MD) | [55) ft_heap_int_array](https://github.com/Ysoroko/c_mini_challenges/blob/main/December/055_14_12_ft_heap_int_array.MD) | [61) ft_point_in_rectangle](https://github.com/Ysoroko/c_mini_challenges/blob/main/January/061_18_01_ft_point_in_rectangle.MD) |\n[6) ft_sign_char](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/006_24_09_ft_sign_char.MD) | [25) ft_call_the_president](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/025_10_10_ft_call_the_president.MD) | [43) ft_real_atoi](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/043_15_11_ft_real_atoi.MD) | [56) ft_binary_to_char](https://github.com/Ysoroko/c_mini_challenges/blob/main/December/056_17_12_ft_binary_to_char.MD) | [62) makefile](https://github.com/Ysoroko/c_mini_challenges/blob/main/January/062_23_01_makefile.MD) |\n[7) ft_sign_char_print](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/007_24_09_ft_sign_char_print.MD) | [26) ft_bank](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/026_11_10_ft_bank.MD) |  [44) ft_count_main_arguments](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/044_16_11_ft_count_main_arguments.MD) | |[63) ft_draw](https://github.com/Ysoroko/c_mini_challenges/blob/main/January/063_26_01_ft_draw.MD) |\n[8) ft_sign_string_print](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/008_24_09_ft_sign_string_print.MD) | [27) ft_calculator_fct](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/027_18_10_ft_calculator_fct.MD) | [45) ft_print_program_name](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/045_16_11_ft_print_program_name.MD) |\n[9) ft_n_chars_d](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/009_25_09_ft_n_chars_d.MD) | [28) ft_uppercase](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/028_19_10_ft_uppercase.MD) | [46) ft_print_args_backwards](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/046_17_11_ft_print_args_backwards.MD) |\n[10) ft_n_chars](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/010_26_09_ft_n_chars.MD) | [29) ft_strcmp](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/029_19_10_ft_strcmp.MD) | [47) ft_easy_putnbr](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/047_18_11_ft_easy_putnbr.MD) |\n[11) ft_ifs](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/011_26_09_ft_ifs.MD) | [30) ft_strchr](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/030_21_10_ft_strchr.MD) | [48) ft_putnbr](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/048_19_11_ft_putnbr.MD) |\n[12) ft_if_zeroes](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/012_26_09_ft_if_zeroes.MD) | [31) ft_ptr](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/031_22_10_ft_ptr.MD) | [49) ft_random_n](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/049_21_11_ft_random_n.MD) |\n[13) ft_if_threes](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/013_27_09_ft_if_threes.MD) | [32) ft_got_meme_generator](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/032_23_10_ft_got_meme_generator.MD) | [50) ft_atoi_base](https://github.com/Ysoroko/c_mini_challenges/blob/main/November/050_29_11_ft_atoi_base.MD) |\n[14) ft_if_str_has_D_char](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/014_27_09_ft_if_str_has_D_char.MD) | [33) ft_equals](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/033_24_10_ft_equals.MD) |\n[15) ft_whiles](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/015_28_09_ft_whiles.MD) | [34) ft_comp_ptr](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/034_25_10_ft_comp_ptr.MD) |\n[16) ft_descending](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/016_29_09_ft_descending.MD) | [35) ft_isspace](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/035_26_10_ft_isspace.MD) |\n[17) ft_until_zero](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/017_29_09_ft_until_zero.MD) | [36) ft_write_first_word](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/036_26_10_ft_write_first_word.MD) |\n[18) ft_odd_numbers](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/018_30_09_ft_odd_numbers.MD) | [37) ft_write_after_char](https://github.com/Ysoroko/c_mini_challenges/blob/main/October/037_28_10_ft_write_after_char.MD) |\n[19) ft_calculator](https://github.com/Ysoroko/c_mini_challenges/blob/main/September/019_30_09_ft_calculator.MD) | |\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fysoroko%2Fc_mini_challenges","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fysoroko%2Fc_mini_challenges","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fysoroko%2Fc_mini_challenges/lists"}