CS1313: Variables & Constants Lesson #1 Fall 2005 1 Variables & Constants Lesson 1 Outline 1. Variables & Constants Lesson 1 Outline 2. C Character Set 3. C is Case Sensitive 4. Character String Literal Constant 5. String Literal Cannot Use Multiple Lines 6. Multi-line String Literal Example 7. Newline 8. Newline Example 9. Statements 10. Statement Terminator 11. Standard Input & Standard Output 12. Data Types 13. What is a Variable? 14. What Does a Variable Have? 15. The Value of a Variable Can Vary 16. Compile Time and Runtime 17. Variable Declaration: Name & Data Type 18. Variable Declaration: Address 19. Variable Declaration: Initial Value #1 20. Variable Declaration: Initial Value #2 21. Variable Declaration: Initial Value #3 22. Declaration Section & Execution Section 23. Setting the Value of a Variable 24. Variable Assignment 25. Variable Assignment Example 26. Variable Assignment Example Program Part 1 27. Variable Assignment Example Program Part 2 28. The Same Source Code without Comments 29. Assignment is an Action, NOT an Equation #1 30. Assignment is an Action, NOT an Equation #2 31. Changing a Variable’s Contents 32. Changing a Variable’s Contents: Example Part 1 33. Changing a Variable’s Contents: Example Part 2 34. The Same Source Code without Comments 35. Variable Initialization 36. Variable Initialization Example Part 1 37. Variable Initialization Example Part 2 38. The Same Source Code without Comments 39. C Variable Names 40. Favorite Professor Rule for Variable Names
40
Embed
CS1313 Variables and Constants Lesson 1hneeman.oscer.ou.edu/CS1313/variables_and_constants_lesson1.pdf · CS1313: Variables & Constants Lesson #1 Fall 2005 1 Variables & Constants
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Variables & Constants Lesson 1 Outline1. Variables & Constants Lesson 1 Outline2. C Character Set3. C is Case Sensitive4. Character String Literal Constant5. String Literal Cannot Use Multiple Lines6. Multi-line String Literal Example7. Newline8. Newline Example9. Statements10. Statement Terminator11. Standard Input & Standard Output12. Data Types13. What is a Variable?14. What Does a Variable Have?15. The Value of a Variable Can Vary16. Compile Time and Runtime17. Variable Declaration: Name & Data Type18. Variable Declaration: Address19. Variable Declaration: Initial Value #120. Variable Declaration: Initial Value #221. Variable Declaration: Initial Value #3
22. Declaration Section & Execution Section23. Setting the Value of a Variable24. Variable Assignment25. Variable Assignment Example26. Variable Assignment Example Program Part 127. Variable Assignment Example Program Part 228. The Same Source Code without Comments29. Assignment is an Action, NOT an Equation #130. Assignment is an Action, NOT an Equation #231. Changing a Variable’s Contents32. Changing a Variable’s Contents: Example Part 133. Changing a Variable’s Contents: Example Part 234. The Same Source Code without Comments35. Variable Initialization36. Variable Initialization Example Part 137. Variable Initialization Example Part 238. The Same Source Code without Comments39. C Variable Names40. Favorite Professor Rule for Variable Names
In C, you can place a newline, also known as a carriage return, inside a string literal using:
\n
If a newline appears inside a string literal in the source code, then when the string literal is output, the newline causes the output to move to a new line.
printf("Howdy do!\n");printf("This string literal contains a newline in the\nmiddle ");printf("but this string literal contains a newline at the end.\n");printf("So there!\n");
} /* main */% gcc -o newline newline.c% newlineHowdy do!This string literal contains a newline in themiddle but this string literal contains a newline at the end.So there!
Note: in general, it’s better programming practice to put newlines only at the end of your string literals, not in the middle, because in the middle they can be difficult for programmers (e.g., graders) to see.
A statement in a program is like a sentence in a natural language: it’s the smallest possible collection of words and punctuation that can stand by itself and have meaning.
For example:printf("Hello, world.\n");
This statement tells the compiler to output to the terminal screen the string literal
Standard input is when a user types at the keyboard. It is sometimes shortened to stdin, pronounced “standard in.”Standard output is when the computer outputs to the terminal screen. It is sometimes shortened to stdout, pronounced “standard out.”
In C, a printf statement always outputs to standard output, and a scanf statement always inputs from standard input. More on this later.
a name (e.g., number_of_students), chosen by the programmer;an address (i.e., a location in memory, such as 123456), chosen by the compiler;a data type (e.g., int, float, char), chosen by the programmer;a value (which may be undefined, also known as garbage), sometimes chosen by the programmer, and sometimes determined while the program is running (at runtime). The value is also known as the contents of the variable — that is, the value is the contents of the variable’s memory location.
Events that occur while a program is being compiled are said to happen at compile time.Events that occur while a program is running are said to happen at runtime.
For example, the address of a variable is chosen at compile time, while its value typically is determined at runtime.
A declaration is a statement that tells the compiler that an item of data (e.g., a variable) exists, and what some of its properties are (specifically, its name and its data type).
For example, the declaration above tells the compiler to choose a location in memory, name it x, and think of it as an integer.
Note that the declaration above doesn’t specify a value for x.
When x is first declared, we don’t know what its value is, because we haven’t put anything into its memory location yet, so we say that its value is undefined, or, informally, garbage.
We’ll see in a moment how to put values into our variables.
Variable Declaration: Initial Value #2When x is first declared, we don’t know what its value
is, because we haven’t put anything into its memory location yet, so we say that its value is undefined, or, informally, garbage.
Note: some compilers for some languages automatically initialize newly declared variables to default values (e.g., all integers get initialized to zero), but not every compiler does automatic initialization.
You should NEVER NEVER NEVER assume that the compiler will initialize your variables for you.
You should ALWAYS ALWAYS ALWAYS explicitly assign values to your variables in the body of the program, as needed.
Variable Assignment Example Program Part 1% cat assign.c/************************************************* Program: assign ****** Author: Henry Neeman ([email protected]) ****** Course: CS 1313 010 Fall 2005 ****** Lab: Sec 011 Fridays 9:30am ****** Description: Declares, assigns and ****** outputs a variable. *************************************************/#include <stdio.h>
int main (){ /* main */
/********************************************* Declaration section **************************************************************** Local variables ********************** height_in_cm: my height in cm*/int height_in_cm;
Variable Assignment Example Program Part 2/*********************************************** Execution section *********************************************** Assign the integer value 160 to height_in_cm.*/height_in_cm = 160;/** Print height_in_cm to standard output.*/printf("My height is %d cm.\n", height_in_cm);
} /* main */% gcc -o assign assign.c% assignMy height is 160 cm.
Changing a Variable’s Contents: Example Part 1% cat change.c/*************************************************** Program: change ****** Author: Henry Neeman ([email protected]) ****** Course: CS 1313 010 Fall 2005 ****** Lab: Sec 011 Fridays 9:30am ****** Description: Declares, assigns, changes ****** and outputs a variable. ***************************************************/#include <stdio.h>int main (){ /* main */
/********************************************** Declaration section ****************************************************************** Local variables ********************** height_in_cm: my height in cm*/int height_in_cm;
Changing a Variable’s Contents: Example Part 2/*********************************************** Execution section *********************************************** Assign the integer value 160 to height_in_cm.*/height_in_cm = 160;/** Print height_in_cm to standard output.*/printf("My height is %d cm.\n", height_in_cm);/** Assign the integer value 200 to height_in_cm.*/height_in_cm = 200;/** Print height_in_cm to standard output.*/printf("My height is %d cm.\n", height_in_cm);
} /* main */% gcc -o change change.c% changeMy height is 160 cm.My height is 200 cm.
Variable Initialization Example Part 1% cat initialize.c/************************************************* Program: initialize ****** Author: Henry Neeman ([email protected]) ****** Course: CS 1313 010 Fall 2005 ****** Lab: Sec 011 Fridays 9:30am ****** Description: Declares/initializes and ****** outputs a variable. *************************************************/#include <stdio.h>
int main (){ /* main */
/******************************************** Declaration section **************************************************************** Local variables ********************** height_in_cm: my height in cm*/int height_in_cm = 160;
Variable Initialization Example Part 2/******************************************** Execution section ********************************************* Print height_in_cm to standard output.*/printf("My height is %d cm.\n", height_in_cm);
} /* main */% gcc -o initialize initialize.c% initializeMy height is 160 cm.
C Variable NamesC identifiers (including variable names) have the following
properties:Constructed using only these characters:
Letters (case sensitive: it matters whether it’s upper case or lower case)a b c d e f g h i j k l mn o p q r s t u v w x y zA B C D E F G H I J K L MN O P Q R S T U V W X Y Z
Digits0 1 2 3 4 5 6 7 8 9
Underscore (NOTE: NOT hyphen)_
The first character is a letter or an underscore:a123_456 is good, and so is a123_456 but not 1a23_456
A variable name should be so obvious that your favorite professor in your major, even if they know nothing about programming, could immediately tell what the variable name means.