- C++ Programming Examples
- C++ Programming Examples
- C++: Hello World
- C++: Get Input
- C++: Print Integer
- C++: Add two numbers
- C++: Add, Sub, Multiply, Div
- C++: Add Digits
- C++: Find Average and Percentage
- C++: Find Arithmetic Mean
- C++: Sum of n Natural Numbers
- C++: Sum of n Numbers
- C++: Square's Area and Perimeter
- C++: Rectangle's Area and Perimeter
- C++: Triangle's Area and Perimeter
- C++: Area and Circumference
- C++: Find Simple Interest
- C++: Fahrenheit to Celsius
- C++: Celsius to Fahrenheit
- C++: Print Prime Numbers
- C++: Reverse a Number
- C++: Swap Two Numbers
- C++: Print Multiplication Table
- C++: Find Factorial of a Number
- C++: Find Factors of a Number
- C++: Find HCF and LCM
- C++: Create a Calculator
- C++: Count Digits in a Number
- C++: First and Last Digit Sum
- C++: Product of Number Digits
- C++: Sum of Squares of Digits
- C++: Interchange Digits of Number
- C++ if-else Programs
- C++: Check Even or Odd
- C++: Check Prime or Not
- C++: Check Alphabet or Not
- C++: Check Vowel or Not
- C++: Check Leap Year or Not
- C++: Check Reverse equals Original
- C++: Check Perfect Number
- C++: Check Palindrome or Not
- C++: Check Armstrong or Not
- C++: Divisibility Test
- C++: Find Labor Wage
- C++: Find Discounted Price
- C++: Find Shipping Charge
- C++: Find Telephone Bills
- C++: Calculate Student Grade
- C++: Largest of Two Numbers
- C++: Largest of Three Numbers
- C++ Number Conversion
- C++: Decimal to Binary
- C++: Decimal to Octal
- C++: Decimal to Hexadecimal
- C++: Binary to Decimal
- C++: Binary to Octal
- C++: Binary to Hexadecimal
- C++: Octal to Decimal
- C++: Octal to Binary
- C++: Octal to Hexadecimal
- C++: Hexadecimal to Decimal
- C++: Hexadecimal to Binary
- C++: Hexadecimal to Octal
- C++ Pattern Programs
- C++: Pattern Programs
- C++: Print Diamond Pattern
- C++: Print Floyd's Triangle
- C++: Print Pascal's Triangle
- C++ Array Programs
- C++: 1D Array Program
- C++: Linear Search
- C++: Binary Search
- C++: Largest Element in an Array
- C++: Smallest Element in an Array
- C++: Find Second Largest Element
- C++: Find Second Smallest Element
- C++: Sum of All Elements
- C++: Multiply All Elements
- C++: Element in Even Position
- C++: Element in Odd Position
- C++: Print Even Numbers in Array
- C++: Print Odd Numbers in Array
- C++: Count Even or Odd Numbers
- C++: Sum of Even or Odd Numbers
- C++: Count Positive, Negative, Zero
- C++: Reverse an Array
- C++: Insert an Element
- C++: Delete an Element
- C++: Merge two Arrays
- C++: Bubble Sort
- C++: Selection Sort
- C++: Insertion Sort
- C++: Common Elements
- C++: 2D Array Programs
- C++: Add Two Matrices
- C++: Subtract Two Matrices
- C++: Transpose Matrix
- C++: Multiply Two Matrices
- C++: 3D Array Programs
- C++ String Programs
- C++: Print String
- C++: Find String Length
- C++: Compare Two Strings
- C++: Copy String
- C++: String Concatenation
- C++: Reverse a String
- C++: Delete Vowels from a String
- C++: Delete a Word from a String
- C++: Count Characters in a String
- C++: Count Words in a String
- C++: Frequency of Words
- C++: Remove Spaces from Strings
- C++: Sort a String
- C++: Uppercase to Lowercase
- C++: Lowercase to Uppercase
- C++: Swap Two Strings
- C++: Check the Anagram or Not
- C++: Capitalize All Words in a String
- C++: Get Numbers from a String
- C++ File Programs
- C++: Read a File
- C++: Write Content to a File
- C++: Append Data to a File
- C++: Read and Display File
- C++: Copy a File
- C++: Merge Two Files
- Count Characters in a File
- C++: Capitalize Every Word
- C++: List Files in Directory
- C++: Delete a File
- C++: Encrypt and Decrypt a File
- C++ Misc Programs
- C++: Print ASCII Value
- C++: Add Binary Numbers
- C++: Generate Random Numbers
- C++: Print a Smiling Face
- C++: Days into Years and Months
- C++: Add Two Numbers using Pointer
- C++: Print Fibonacci Series
- C++: Generate Armstrong Numbers
- C++: Find nCr and nPr
- C++: Get IP Address
- C++: Print Date and Time
- C++: Shutdown and Restart Computer
- C++ Programming Tutorial
- C++ Tutorial
C++ Program to Capitalize the First Letter of Every Word in a File
This article provides a program in C++ that helps in capitalizing all the words (or every word) in a file. The file's name must be entered by the user at run-time. Capitalizing every word means converting the first letter of every word to uppercase.
What Should You Do Before the Program?
The program is based on the file. That is, the program given below capitalizes each and every word in a file. Therefore, we need a file (with some content) that must be available inside the current directory. Therefore, I'm going to create a file called "fresherearth.txt" first.
I've created the file; here's a snapshot of the current directory (the folder where the C++ source code is saved) that contains my newly created "fresherearth.txt" file:
Now put some content inside this file. Since the program given below capitalizes each word in a file, I'm recommending that you write all the words in small letters so that our program can be tested well. Here is a snapshot of the opened file after writing some words inside it:
Now let's move on and create a program in C++ that capitalizes all the words available in this file.
Capitalizing all words in a file
The question is: write a program in C++ that receives the name of a file from the user at run-time and capitalizes each and every word available in that file. Here is its answer:
#include<iostream> #include<fstream> #include<sstream> using namespace std; int main() { ifstream inf; ofstream ouf; stringstream str_stream; string str; char filename[30]; int i=0, temp=0; cout<<"Enter File's Name: "; cin>>filename; inf.open(filename); str_stream<<inf.rdbuf(); inf.close(); str = str_stream.str(); while(str[i]) { if(temp==0) { str[i] = toupper(str[i]); temp = 1; } else if(isspace(str[i])) temp = 0; i++; } ouf.open(filename); ouf<<str; cout<<"\nAll words capitalized Successfully!"; cout<<endl; return 0; }
Here is the initial output produced by the above C++ program on capitalizing each word in a file given by the user:
Now, enter the name of the file that was created earlier in this article, "fresherearth.txt", and press the ENTER key to capitalize all of the words in this file, as shown in the screenshot below:
Here is the new snapshot of the same file after executing the above program:
As you can see from the above snapshot of the file fresherearth.txt, all its words get capitalized after executing the C++ program.
Note: The stringstream class (defined in the sstream header file) allows a string object to be treated as a stream.
Note: The rdbuf() function is used to return a pointer to the stream buffer object that is currently associated with the stream.
To implement capitalization code manually (or to capitalize every word without using toupper()), you can get the code from capitalize every word in a string and utilize it in the above program. Do it yourself for your own practice.
If you are having trouble implementing the manual version of the code that capitalizes every word, then just replace the following block of code (from the above program):
while(str[i]) { if(temp==0) { str[i] = toupper(str[i]); temp = 1; } else if(isspace(str[i])) temp = 0; i++; }
with the block of code given below:
while(str[i]) { if(temp==0) { asc_val = str[i]; if(asc_val>=97 && asc_val<=122) { asc_val = asc_val-32; str[i] = asc_val; } temp = 1; } if(isspace(str[i])) temp = 0; i++; }
You will get the same output as the previous program.
« Previous Program Next Program »