Bird
Raised Fist0
Cprogramming~5 mins

Multiple input and output in C - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the purpose of using multiple input and output in C programming?
It allows a program to read several values from the user and display multiple results, making the program more interactive and useful.
Click to reveal answer
beginner
Which C function is commonly used to take multiple inputs from the user?
The scanf() function is used to read multiple inputs by specifying multiple format specifiers.
Click to reveal answer
beginner
How do you print multiple outputs in C?
Use the printf() function with multiple format specifiers and corresponding variables to display multiple values.
Click to reveal answer
intermediate
What is the correct way to read two integers and one float from the user in C?
Use scanf("%d %d %f", &var1, &var2, &var3); where var1 and var2 are integers and var3 is a float.
Click to reveal answer
beginner
Why is it important to use the address operator (&) with variables in scanf()?
Because scanf() needs the memory address of variables to store the input values correctly.
Click to reveal answer
Which of the following is the correct way to read two integers in C?
Ascanf("%d %d", &a, &b);
Bscanf("%d %d", a, b);
Cprintf("%d %d", &a, &b);
Dprintf("%d %d", a, b);
How do you print three variables: int x, float y, and char z in one line?
Ascanf("%d %d %d", x, y, z);
Bprintf("%d %f %c", x, y, z);
Cprintf("%d %d %d", x, y, z);
Dscanf("%d %f %c", &x, &y, &z);
What happens if you forget the & operator in scanf for an integer variable?
AThe input will be stored correctly anyway.
BThe variable will be initialized to zero.
CThe program will print the input automatically.
DThe program may crash or input will not be stored correctly.
Which format specifier is used to read a float value in scanf?
A%c
B%d
C%f
D%s
How can you read multiple inputs in one scanf statement?
ABy listing multiple format specifiers and variables separated by commas.
BBy calling scanf multiple times.
CBy using multiple printf statements.
DBy using only one format specifier.
Explain how to take multiple inputs from the user in C and display them.
Think about how scanf and printf handle several values at once.
You got /4 concepts.
    Describe why the address operator (&) is necessary in scanf when reading inputs.
    Consider how scanf needs to know where to put the input value.
    You got /4 concepts.

      Practice

      (1/5)
      1. What does the following C code do?
      int a, b;
      scanf("%d %d", &a, &b);
      printf("%d %d", a, b);
      easy
      A. Prints two integers without reading input.
      B. Reads one integer and prints it twice.
      C. Reads two integers from input and prints them in the same order.
      D. Reads two integers but prints only the first one.

      Solution

      1. Step 1: Understand scanf with multiple inputs

        The scanf function reads two integers from the user input and stores them in variables a and b.
      2. Step 2: Understand printf with multiple outputs

        The printf function prints the values of a and b in the same order they were read.
      3. Final Answer:

        Reads two integers from input and prints them in the same order. -> Option C
      4. Quick Check:

        scanf and printf with two %d = same two integers [OK]
      Hint: Match each %d with a variable and & in scanf [OK]
      Common Mistakes:
      • Forgetting & before variables in scanf
      • Mixing order of variables in printf
      • Using wrong format specifiers
      2. Which of the following is the correct syntax to read three integers a, b, c in C?
      easy
      A. scanf("%d %d %d", &a, &b, &c);
      B. scanf("%d %d %d", a, b, c);
      C. scanf("%d, %d, %d", &a, &b, &c);
      D. scanf("%d %d %d", *a, *b, *c);

      Solution

      1. Step 1: Check scanf format string and arguments

        The format string should have three %d separated by spaces, and variables must be passed by address using &.
      2. Step 2: Identify correct option

        scanf("%d %d %d", &a, &b, &c); uses correct format string and & before variables, so it is correct.
      3. Final Answer:

        scanf("%d %d %d", &a, &b, &c); -> Option A
      4. Quick Check:

        Use & with variables in scanf [OK]
      Hint: Always use & before variables in scanf [OK]
      Common Mistakes:
      • Omitting & before variables
      • Using commas inside format string incorrectly
      • Using pointers incorrectly with *
      3. What is the output of this C program?
      int x, y;
      scanf("%d %d", &x, &y);
      printf("%d %d %d", x, y, x + y);

      Input:
      3 7
      medium
      A. 10 10 20
      B. 3 7 10
      C. 7 3 10
      D. 3 7 37

      Solution

      1. Step 1: Read input values

        scanf reads 3 into x and 7 into y.
      2. Step 2: Calculate and print output

        printf prints x (3), y (7), and x + y (3 + 7 = 10).
      3. Final Answer:

        3 7 10 -> Option B
      4. Quick Check:

        3 + 7 = 10 [OK]
      Hint: Add variables inside printf for combined output [OK]
      Common Mistakes:
      • Mixing order of variables in printf
      • Confusing concatenation with addition
      • Not using & in scanf
      4. Find the error in this code snippet:
      int a, b;
      scanf("%d %d", a, b);
      printf("%d %d", a, b);
      medium
      A. Missing semicolon after scanf.
      B. Wrong format specifier in scanf.
      C. printf format specifiers do not match variables.
      D. Missing & before variables in scanf.

      Solution

      1. Step 1: Check scanf arguments

        scanf requires addresses of variables, so &a and &b are needed.
      2. Step 2: Identify error

        Code passes variables a and b directly, causing undefined behavior or crash.
      3. Final Answer:

        Missing & before variables in scanf. -> Option D
      4. Quick Check:

        scanf needs & before variables [OK]
      Hint: Always use & before variables in scanf [OK]
      Common Mistakes:
      • Forgetting & in scanf
      • Assuming variables auto-pass by address
      • Confusing scanf and printf syntax
      5. Write a C program snippet that reads two integers and prints their sum and product separated by a space. Which code correctly does this?
      hard
      A. int a, b;
      scanf("%d %d", &a, &b);
      printf("%d %d", a + b, a * b);
      B. int a, b;
      scanf("%d %d", a, b);
      printf("%d %d", a + b, a * b);
      C. int a, b;
      scanf("%d %d", &a, &b);
      printf("%d %d", a - b, a / b);
      D. int a, b;
      scanf("%d %d", &a, &b);
      printf("%d %d", a * b, a + b);

      Solution

      1. Step 1: Check input reading correctness

        scanf must use &a and &b to read two integers correctly.
      2. Step 2: Check output matches sum and product

        printf should print sum (a + b) first, then product (a * b) separated by space.
      3. Final Answer:

        int a, b; scanf("%d %d", &a, &b); printf("%d %d", a + b, a * b); -> Option A
      4. Quick Check:

        scanf with & and printf sum then product [OK]
      Hint: Print sum first, product second with correct scanf [OK]
      Common Mistakes:
      • Forgetting & in scanf
      • Swapping sum and product order
      • Using wrong operators in printf
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard