Parts of A C++ Program
Parts of A C++ Program
// sample C++ program #include <iostream> which namespace using namespace std; to use beginning of int main() function named main beginning of { block for main output cout << "Hello, there!"; statement return 0; string } literal end of block
for main send 0 to operating system comment preprocessor directive
2-1
Special Characters
Character
// # < > ( ) { } " " ;
Name
Double slash Pound sign
Meaning
Beginning of a comment
Beginning of preprocessor directive Open/close brackets Enclose filename in #include Open/close parentheses Open/close brace Open/close quotation marks Semicolon Used when naming a function Encloses a group of statements Encloses string of characters End of a programming statement
2-2
2.2
The cout Object
You use the stream insertion operator << to send output to cout:
cout << "Programming is fun!";
2-4
2-5
2-6
You can use the endl manipulator to start a new line of output. This will produce two lines of output:
cout << "Programming is" << endl; cout << "fun!";
2-7
Programming is fun!
2-8
You do NOT put quotation marks around endl The last character in endl is a lowercase L, not the number 1. endl
This is a lowercase L
2-9
You can also use the \n escape sequence to start a new line of output. This will produce two lines of output:
cout << "Programming is\n"; cout << "fun!"; Notice that the \n is INSIDE the string.
2-10
2-11
2.3
The #include Directive
2-13
2.4
Variables and Literals
Variables
2-15
Variable Definition
2-16
2-17
Literals
2-18
20 is an integer literal
2-19
2-20
2-21
2.5
Identifiers
Identifiers
An identifier is a programmer-defined name for some part of a program: variables, functions, etc.
int main() { int x; int y; y = 13; x = 25-y; cout << x; return 0; }
2-23
2-24
Variable Names
A variable name should represent the purpose of the variable. For example: itemsOrdered
2-25
Identifier Rules
After the first character you may use alphabetic characters, numbers, or underscore characters.
Upper- and lowercase characters are distinct
2-26
totalSale$
No
Cannot contain $
2-27
2.6
Integer Data Types
2-29
Defining Variables
Variables of the same type can be defined
- On separate lines: int length; int width; unsigned int area; - On the same line: int length, width; unsigned int area;
2-30
2-31
Integer Literals
An integer literal is an integer value that is typed into a programs code. For example: itemsOrdered = 15; In this code, 15 is an integer literal.
2-32
Integer Literals
2-33
2.7
The char Data Type
Character Literals
Character literals must be enclosed in single quote marks. Example: 'A'
2-36
2-37
Stored with the null terminator, \0, at the end: Comprised of the characters between the " "
H e l l o \0
2-38
String datatype
concatenation
#include <string>
Int main() { string word = oh the stress ; string word2 = of it all; string word3 = word + word2; //concatenate cout << word3<<endl; //OR cout << word << word2 << endl; //concatenate return 0; }
2-39
1-
Lab
Write a program that does the following: 1. Declare 3 ints, 2 chars and 3 strings. Give them meaningful names. 2. Assign a value to each. 3. Multiply first 2 ints and assign the result to the third int. 4. Print the 3rd int to the screen with a statement saying what it is: int 1 x int 2 = followed by endl 5. Print out the two chars in the same cout statement: here are my chars: 6. Concatenate first 2 strings and assign result to string 3. 7. Print out string 3 with statement here are my concatenated strings:
2-41
2.8
Floating-Point Data Types
2-43 1-
//C++ program to bake a cake NOT #include <iostream> using namespace std; int main() { Big_bowl bowl1, bowl2; BakingPan my_pan; Oven my_oven; bowl1 = 1_pound_butter + 1_cup_sugar; beat bowl1; bowl2 = eggs; beat bowl2; bowl2 = bowl2 + cocoa + baking_soda; bowl1 = bowl1 + bowl2; my_pan = bowl1; my_oven = my_pan return 0; }
2-44 1-
The floating-point data types are: float double long double They can hold real numbers such as:
12.45 -3.8
Stored in a form similar to scientific notation All floating-point numbers are signed
2-45
2-46
Floating-point Literals
Can be represented in
Fixed point (decimal) notation: 31.4159 0.0000625 E notation: 3.14159E1 6.25e-5
Are double by default Can be forced to be float (3.14159f) or long double (0.0000625L)
2-47
2-48
2.9
The bool Data Type
2-50
2-51
2.10
Determining the Size of a Data Type
2-53
2.11
Variable Assignments and Initialization
2-55
Assignment
The variable receiving the value must appear on the left side of the = operator. This will NOT work: // ERROR! 12 = item;
2-56
Variable Initialization
2-57
2-58
2.12
Scope
Scope
The scope of a variable: the part of the program in which the variable can be accessed A variable cannot be used before it is defined
2-60
2-61
2.13
Arithmetic Operators
Arithmetic Operators
2-63
SYMBOL
OPERATION
EXAMPLE
VALUE OF
ans
10 4
+ -
addition subtraction
ans = 7 + 3; ans = 7 - 3;
*
/ %
multiplication
division modulus
ans = 7 * 3;
ans = 7 / 3; ans = 7 % 3;
21
2 1
2-64
2-65
2-67
2.14
Comments
Comments
Used to document parts of the program Intended for persons reading the source code of the program:
Indicate the purpose of the program Describe the use of variables Explain complex sections of code
2-69
Single-Line Comments
2-70
Multi-Line Comments
Begin with /*, end with */
2-71
2.15
Programming Style
Programming Style
The visual organization of the source code Includes the use of spaces, tabs, and blank lines Does not affect the syntax of the program Affects the readability of the source code
2-73
Programming Style
Common elements to improve readability: Braces { } aligned vertically Indentation of statements within a set of braces Blank lines between declaration and other statements Long statements wrapped over multiple lines with aligned operators
2-74
#include <iostream> #include <string> using namespace std; int main() { int x = 10; int y = 15; cout<< yo, whats up with you? << endl; if (y < x) { cout << y is definitely smaller<<endl; } else { cout<< y is not smaller<<endl; } cout<< thats how I like to indent; return 0;
}
2-75
Lab 2 Program 1 Calculate area of a room. Declare 3 float variables, assign values to width and length of room. Assign area of room to third float. Print that number to the screen with a statement the area of the room is put an endl at the end. Program 2 Concatenate 2 strings and determine the size of all three. Declare 3 strings. Give values to the first two and assign their concatenated value to the third string. Print the concatenated string to the screen followed by endl, then print the size of that 3rd string in memory. Try getting the size by using the word string rather than the variable name. Program 3 Declare 3 chars and 3 bool type variables. Give them values. Print the values to the screen. Try assigning values to bool of 1 or 0, true or false, t and f. See what happens. Program 4 Declare 5 floats, give them values, calculate the average. Print the average to the screen.
2-76