Exam 01 of the 42 Piscine is your first major practical test, typically held on the Friday of your first week. It is designed to evaluate your baseline understanding of C programming (moving past the initial Shell days) and your ability to work under pressure without peer help. 1. Exam Mechanics
Environment: You log into a restricted Linux environment using a specific examshell command. You cannot access the internet, your previous work, or your peers.
The "Level" System: The exam is linear. You receive one exercise at a time. You must pass the current exercise (submit and wait for the "Grade: 100") before the system unlocks the next one.
Failures: If you fail an exercise, you can try again, but there is often a time penalty that increases with each failure.
Grading: The exam is graded automatically. Unlike your daily projects, Norminette (the 42 coding standard) usually does not count toward your exam score, but your code must compile and be functionally perfect. 2. Core Topics to Master
To succeed in Exam 01, you should be comfortable with everything from C00 and C01. Key concepts often include:
Basic Output: Using the write function to display characters or strings (e.g., creating a program that just prints 'z').
Variable Types: Understanding char, int, and basic arithmetic. exam 01 piscine 42 exclusive
Loops: Mastering while loops is critical for traversing strings or repeating actions.
Pointers: Basic pointer manipulation (e.g., ft_swap or ft_strlen).
Conditional Logic: Using if/else statements for logic gates. 3. Common First-Exam Exercises
While tasks are randomly assigned, common early-level questions include: only_z: Simply write a program that displays 'z'.
ft_print_alphabet: Write a function that displays the alphabet in lowercase.
ft_strlen: Write a function that counts and returns the length of a string. ft_putstr: Write a function that displays a string. ft_countdown: Display digits from '9' to '0'. 4. Strategy for Success
The Exam 01 in the 42 Piscine is the second major milestone of the selection process, typically held on the second Friday of the intensive four-week coding bootcamp. Unlike the first exam (Exam 00), which often focuses on basic terminal commands and shell scripting, Exam 01 is widely considered the true "intro to C" test. Key Logistics & Rules Exam 01 of the 42 Piscine is your
The exam environment is highly restricted to ensure that candidates rely only on their own knowledge:
The Examshell: You must log into a dedicated Examshell environment that locks your computer to a specific terminal-based session.
No Internet or Peer Help: All external communication is prohibited. You cannot use search engines or ask peers for help during the session.
The grademe Command: To submit a solution, you must use the grademe command. An automated grader (the "Moulinette") immediately tests your code.
Sequential Progression: You must pass Level 0 to unlock Level 1. If you fail a question, you may be given a different question of the same level, but you cannot proceed until you pass the current one.
No Norminette: Interestingly, the standard "42 Norm" (strict formatting rules) usually does not apply during exams—the code only needs to work and compile. Core Topics to Master
To succeed in Exam 01, you should be comfortable with the concepts covered in the C00 through C04 modules: Shell (25% of grade)
aff_a – Print first character of a stringaff_first_param – Print first argumentaff_last_param – Print last argumentaff_z – Print 'z' and newlinemaff_alpha – Alternate case alphabetmaff_revalpha – Reverse alphabet alternating caseonly_z – Same as aff_zhello – Print "Hello World"ft_print_numbers – Print digits 0-9The solution is trivial when using ^. However, the exam may explicitly forbid using the ^ operator to test understanding of bitwise logic. In that case, we implement XOR via basic bitwise operations:
XOR = (a | b) & ~(a & b)
or equivalently:
XOR = (a & ~b) | (~a & b)
We choose the second form for clarity.
Before dissecting the exam itself, a quick primer. The Piscine (French for "pool") is a four-week coding boot camp. You are thrown into a Unix environment with zero traditional lectures. You learn by doing, peer-grading, and failing fast. Every week culminates in an exam. Exam 01 is typically the second major exam of the session (following Exam 00), and it represents a significant leap in difficulty.
aff_a (Display 'a')Task: A program that takes a string as an argument and displays 'a' if found, followed by a newline. If no 'a', just a newline.
argc, argv, string traversal.argc. If argc == 1, print newline and return.argv[1] until \0.argv[1][i] == 'a', set a flag or print immediately.Your grade = The level of the last exercise you solved perfectly.
Exam 01 is the first real gatekeeper. Unlike Exam 00 (which was pure ls, pwd, and cat), Exam 01 introduces C programming and Shell scripting. It happens at the end of the first week (usually after days 3-4 of C).
Key rule: You cannot leave the exam room. No bathroom breaks. No phone. No Slack. Just you, the terminal, and examshell.
42 exams are not just technical; they are psychological warfare. Here is the exclusive psychological profile of a student who passes Exam 01:
ft_putstr takes 5 minutes to write. The remaining 3h55m is for debugging and relaxing. Do not rush.grademe sparingly. Each grademe runs the Moulinette, which can take 30 seconds. If you spam it, you waste time. Instead, compile manually:
gcc -Wall -Wextra -Werror ft_putstr.c
Then run ./a.out with your own main. Only use grademe when you are 90% sure.