Skip to main content

How do I scan a line in C (with spaces separating words)?

In C programming, the standard way to scan a line of text with spaces separating words is to use the fgets() function.

The fgets() function reads a line of input from a stream (such as stdin for keyboard input) and stores it in a character array. It takes three arguments: the character array to store the input, the maximum number of characters to read, and the input stream to read from.

Here's an example of using fgets() to scan a line of input with spaces:

c
#include <stdio.h> int main() { char input[100]; printf("Enter a line of text: "); fgets(input, 100, stdin); printf("You entered: %s", input); return 0; }

In this example, we declare a character array input with a size of 100 to store the line of text. We then prompt the user to enter a line of text using printf(). The fgets() function is then used to read the line of text and store it in the input array. The third argument, stdin, specifies that the input should be read from the standard input stream (i.e. the keyboard).

The %s format specifier is used in the printf() statement to print the contents of the input array, which contains the scanned line of text.

Note that fgets() reads and stores the newline character \n at the end of the input line. If you want to remove this newline character, you can use the strtok() function to tokenize the string and replace the \n character with a null terminator.

Here's an example of using fgets() and strtok() to remove the newline character:

c
#include <stdio.h> #include <string.h> int main() { char input[100]; printf("Enter a line of text: "); fgets(input, 100, stdin); // Remove the newline character strtok(input, "\n"); printf("You entered: %s", input); return 0; }

In this example, the strtok() function is used to tokenize the input string and replace the newline character \n with a null terminator. The "\n" argument specifies the delimiter to use for tokenization.

By using fgets() and optionally strtok(), you can easily scan a line of input with spaces separating words in C programming.

 
 

 

Comments

Popular posts from this blog

How do I write a C program to find the factorial of a number?

  Finding the factorial of a number is a common problem in computer programming. A factorial of a number is the product of all positive integers up to and including that number. For example, the factorial of 5 is 5 * 4 * 3 * 2 * 1 = 120. In C programming, we can write a program to find the factorial of a number using a loop. Here's an example program: c Copy code # include <stdio.h> int main () { int num; unsigned long long fact = 1 ; printf ( "Enter a positive integer: " ); scanf ( "%d" , &num); for ( int i= 1 ; i<=num; ++i) { fact *= i; } printf ( "Factorial of %d = %llu\n" , num, fact); return 0 ; } In this program, we first declare the variables num and fact . We then prompt the user to enter a positive integer using the printf() and scanf() functions. Note that we use the unsigned long long data type for the variable fact because the factorial of a large number can become very ...

How do I convert a C program to an executable (e.g. .exe) file?

In C programming, once you have written your code and compiled it, you will need to convert it to an executable file format that can be run on your computer. Here are the steps to convert a C program to an executable file: Step 1: Write your C program First, you need to write your C program. You can use any text editor or integrated development environment (IDE) to write your code. Once you have written your program, save it with a .c extension. Step 2: Compile the C program Next, you need to compile your C program using a compiler. A compiler is a program that translates your C code into machine language that the computer can understand. There are many C compilers available for different platforms, such as GCC for Linux, MinGW for Windows, and Xcode for macOS. For example, if you are using GCC on Linux or macOS, you can open a terminal window and navigate to the directory where your C program is saved. Then, you can compile the program using the following command: Copy ...