# C Programming & Data Strcutures

Views:

Category: Education

## Presentation Description

Basic programming in c language is been defined in this presentation.

## Presentation Transcript

### PowerPoint Presentation:

C Programming & Data Structures 1

### PowerPoint Presentation:

Learning Objectives In this chapter you will learn about: § Features of C § Various constructs and their syntax § Data types and operators in C § Control and Loop Structures in C § Functions in C § Writing programs in C 2

### PowerPoint Presentation:

Features § Reliable, simple, and easy to use § Has virtues of high-level programming language with efficiency of assembly language § Supports user-defined data types § Supports modular and structured programming concepts § Supports a rich library of functions § Supports pointers with pointer operations § Supports low-level memory and device access § Small and concise language § Standardized by several international standards body 3

### PowerPoint Presentation:

C Character Set Category Valid Characters Total Uppercase alphabets A, B, C, …, Z 26 Lowercase alphabets a, b, c, …, z 26 Digits 0, 1, 2, …, 9 10 Special characters ~`!@# %^&*()_ - 31  |\{}[]:;"'  ,.?/ 93 4

### PowerPoint Presentation:

Constants § Constant is a value that never changes § Three primitive types of constants supported in C are: § Integer § Real § Character 5

### PowerPoint Presentation:

Rules for Constructing Integer Constants § Must have at least one digit § + or - sign is optional § No special characters (other than + and - sign) are allowed § Allowable range is: § -32768 to 32767 for integer and short integer constants (16 bits storage) § -2147483648 to 2147483647 for long integer constants (32 bits storage) § Examples are: 8, +17, -6 6

### PowerPoint Presentation:

Rules for Constructing Real Constants in Exponential Form § Has two parts - mantissa and exponent - separated by ‘e’ or ‘E’ § Mantissa part is constructed by the rules for constructing real constants in fractional form § Exponent part is constructed by the rules for constructing integer constants § Allowable range is -3.4e38 to 3.4e38 § Examples are: 8.6e5, +4.3E-8, -0.1e+4 7

### PowerPoint Presentation:

Rules for Constructing Character Constants § Single character from C character set § Enclosed within single inverted comma (also called single quote) punctuation mark § Examples are: ’A’ ’a’ ’8’ ’%’ 8

### PowerPoint Presentation:

Variables § Entity whose value may vary during program execution § Has a name and type associated with it § Variable name specifies programmer given name to the memory area allocated to a variable § Variable type specifies the type of values a variable can contain § Example: In i = i + 5 , i is a variable 9

### PowerPoint Presentation:

Rules for Constructing Variables Names § Can have 1 to 31 characters § Only alphabets, digits, and underscore (as in last_name ) characters are allowed § Names are case sensitive ( nNum and nNUM are different) § First character must be an alphabet § Underscore is the only special character allowed § Keywords cannot be used as variable names § Examples are: I saving_2007 ArrSum 10

### PowerPoint Presentation:

Data Types Used for Variable Type Declaration Data Minimum Storage Type Allocated Used for Variables that can contain int 2 bytes (16 bits) integer constants in the range -32768 to 32767 short 2 bytes (16 bits) integer constants in the range -32768 to 32767 long 4 bytes (32 bits) integer constants in the range -2147483648 to 2147483647 float 4 bytes (32 bits) real constants with minimum 6 decimal digits precision double 8 bytes (64 bits) real constants with minimum 10 decimal digits precision char 1 byte (8 bits) character constants enum 2 bytes (16 bits) Values in the range -32768 to 32767 void No storage allocated No value assigned 11

### PowerPoint Presentation:

Variable Type Declaration Examples int count; short index; long principle; float area; double radius; char c; 12

### PowerPoint Presentation:

Standard Qualifiers in C Category Modifier Description Lifetime auto Temporary variable register Attempt to store in processor register, fast static access extern Permanent, initialized Permanent, initialized but declaration elsewhere Modifiability const Cannot be modified once created volatile May be modified by factors outside program Sign signed + or - unsigned + only Size short 16 bits long 32 bits 13

### PowerPoint Presentation:

Lifetime and Visibility Scopes of Variables § Lifetime of all variables (except those declared as static ) is same as that of function or statement block it is declared in § Lifetime of variables declared in global scope and static is same as that of the program § Variable is visible and accessible in the function or statement block it is declared in § Global variables are accessible from anywhere in program § Variable name must be unique in its visibility scope § Local variable has access precedence over global variable of same name 14

### PowerPoint Presentation:

Keywords § Keywords (or reserved words) are predefined words whose meanings are known to C compiler § C has 32 keywords § Keywords cannot be used as variable names auto double int struct break else long switch case enum register typedef char extern return union const float short unsigned continue for signed void default goto sizeof volatile do if static while 15

### PowerPoint Presentation:

Comments § Comments are enclosed within \ * and * / § Comments are ignored by the compiler § Comment can also split over multiple lines § Example: / * This is a comment statement * / 16

### PowerPoint Presentation:

Operators § Operators in C are categorized into data access, arithmetic, logical, bitwise, and miscellaneous § Associativity defines the order of evaluation when operators of same precedence appear in an expression § a = b = c = 15, ‘=’ has R Æ L associativity § First c = 15, then b = c, then a = b is evaluated § Precedence defines the order in which calculations involving two or more operators is performed § x + y * z , ‘ * ’ is performed before ‘+’ 17

### PowerPoint Presentation:

Arithmetic Operators Operator Meaning with Example Associativity Precedence Arithmetic Operators + Addition; x + y L Æ R 4 - Subtraction; x - y L Æ R 4 * Multiplication; x * y L Æ R 3 / Division; x / y L Æ R 3 % Remainder (or Modulus); x % y L Æ R 3 ++ Increment; x++ means post-increment (increment L Æ R 1 the value of x by 1 after using its value); ++x means pre-increment (increment the R Æ L 2 value of x by 1 before using its value) 18

### PowerPoint Presentation:

Arithmetic Operators Operator Meaning with Example Associativit y Precedence Arithmetic Operators -- Decrement; x-- means post-decrement (decrement L Æ R 1 the value of x by 1 after using its value); --x means pre-decrement (decrement R Æ L 2 the value of x by 1 before using its value) = x = y means assign the value of y to x R Æ L 14 += x += 5 means x = x + 5 R Æ L 14 -= x -= 5 means x = x - 5 R Æ L 14 * = x * = 5 means x = x * 5 R Æ L 14 /= x /= 5 means x = x / 5 R Æ L 14 %= x %= 5 means x = x % 5 R Æ L 14 19

### PowerPoint Presentation:

Logical Operators Operator Meaning with Example Associativity Precedence Logical Operators ! Reverse the logical value of a single variable; R Æ L 2 !x means if the value of x is non-zero, make it zero; and if it is zero, make it one > Greater than; x > y L Æ R 6 < Less than; x < y L Æ R 6 >= Greater than or equal to; x >= y L Æ R 6 <= Less than or equal to; x <= y L Æ R 6 == Equal to; x == y L Æ R 7 != Not equal to; x != y L Æ R 7 && AND; x && y means both x and y should be L Æ R 11 true (non-zero) for result to be true || OR; x || y means either x or y should be true L Æ R 12 (non-zero) for result to be true z?x:y If z is true (non-zero), then the value returned R Æ L 13 is x, otherwise the value returned is y 20

### PowerPoint Presentation:

Bitwise Operators Operator Meaning with Example Associativity Precedence Bitwise Operators ~ Complement; ~x means R Æ L 2 All 1s are changed to 0s and 0s to 1s & AND; x & y means x AND y L Æ R 8 | OR; x | y means x OR y L Æ R 10 ^ << Exclusive OR; x ^ y means x y Å Left shift; x << 4 means shift all bits in x four places to the left L Æ R L Æ R 9 5 >> Right shift; x >> 3 means shift all bits L Æ R 5 in x three places to the right &= x &= y means x = x & y R Æ L 14 |= x |= y means x = x | y R Æ L 14 ^= x ^= y means x = x ^ y R Æ L 14 <<= x <<= 4 means shift all bits in x four places R Æ L 14 to the left and assign the result to x >>= x >>= 3 means shift all bits in x three R Æ L 14 places to the right and assign the result to x 21

### PowerPoint Presentation:

Data Access Operators Operator Meaning with Example Associativity Precedence Data Access Operators x[y] Access y th element of array x; y starts L Æ R 1 from zero and increases monotically up to one less than declared size of array x.y Access the member variable y of L Æ R 1 structure x x -›y Access the member variable y of L Æ R 1 structure x &x Access the address of variable x R Æ L 2 *x Access the value stored in the storage R Æ L 2 location (address) pointed to by pointer variable x 22

### PowerPoint Presentation:

Miscellaneous Operators Operator Meaning with Example Miscellaneous Operators Associativit Precedenc y e x(y) Evaluates function x with argument y L Æ R 1 sizeof (x) Evaluate the size of variable x in R Æ L 2 bytes sizeof (type) Evaluate the size of data type “type” R Æ L 2 in bytes (type) x Return the value of x after converting R Æ L 2 it from declared data type of variable x to the new data type “type” x,y Sequential operator (x then y) L Æ R 15 23

### PowerPoint Presentation:

Statements § C program is a combination of statements written between { and } braces § Each statement performs a set of operations § Null statement, represented by “;” or empty {} braces, does not perform any operation § A simple statement is terminated by a semicolon “;” § Compound statements, called statement block , perform complex operations combining null, simple, and other block statements 24

### PowerPoint Presentation:

Examples of Statements § a = (x + y) * 10; / * simple statement * / § if (sell > cost) / * compound statement follows * / { profit = sell - cost; printf (“profit is %d”, profit); } else * / null statement follows * / { } 25

### PowerPoint Presentation:

Simple I/O Operations § C has no keywords for I/O operations § Provides standard library functions for performing all I/O operations 26

### PowerPoint Presentation:

Basic Library Functions for I/O Operations I/O Library Functions Meanings getch() Inputs a single character (most recently typed) from standard input (usually console). getche() Inputs a single character from console and echoes (displays) it. getchar() Inputs a single character from console and echoes it, but requires Enter key to be typed after the character. putchar() or Outputs a single character on console (screen). putch() scanf() Enables input of formatted data from console (keyboard). Formatted input data means we can specify the data type expected as input. Format specifiers for different data types are given in Figure 21.6. printf() Enables obtaining an output in a form specified by programmer (formatted output). Format specifiers are given in Figure 21.6. Newline character “\n” is used in printf() to get the output split over separate lines. gets() Enables input of a string from keyboard. Spaces are accepted as part of the input string, and the input string is terminated when Enter key is hit. Note that although scanf() enables input of a string of characters, it does not accept multi-word strings (spaces in-between). puts() Enables output of a multi-word string 27

### PowerPoint Presentation:

Basic Format Specifiers for scanf () and printf () Format Specifiers Data Types %d integer (short signed) %u integer (short unsigned) %ld integer (long signed) %lu integer (long unsigned) %f real (float) %lf real (double) %c character %s string 28

### PowerPoint Presentation:

Formatted I/O Example / * A portion of C program to illustrate formatted input and output * / int maths, science, english, total; float percent; clrscr(); / * A C library function to make the screen clear * / printf ( “Maths marks = ” ); / * Displays “Maths marks = ” * / scanf ( “%d”, &maths); / * Accepts entered value and stores in variable “maths” * / printf ( “\n Science marks = ” ); / * Displays “Science marks = ” on next line because of \n * / scanf ( “%d”, &science); / * Accepts entered value and stores in variable “science” * / printf ( “\n English marks = ” ); / * Displays “English marks = ” on next line because of \n * / scanf ( “%d”, &english); / * Accepts entered value and stores in variable “english” * / total = maths + science + english; percent = total/3; / * Calculates percentage and stores in variable “percent” * / printf ( “\n Percentage marks obtained = %f”, percent); / * Displays “Percentage marks obtained = 85.66” on next line because of \n * / (Continued on next slide) 29

### PowerPoint Presentation:

Formatted I/O Example (Continued from previous slide..) Output: Maths marks = 92 Science marks = 87 English marks = 78 Percentage marks obtained = 85.66 30

### PowerPoint Presentation:

Preprocessor Directives § Preprocessor is a program that prepares a program for the C compiler § Three common preprocessor directives in C are: § #include - Used to look for a file and place its contents at the location where this preprocessor directives is used § #define - Used for macro expansion § #ifdef..#endif - Used for conditional compilation of segments of a program 31

### PowerPoint Presentation:

Examples of Preprocessor Directives #include <stdio.h> #define PI 3.1415 #define AND && #define ADMIT printf (“The candidate can be admitted”); #ifdef WINDOWS Code specific to windows operating system #else Code specific to Linux operating system #endif Code common to both operating systems 32

### PowerPoint Presentation:

Standard Preprocessor Directives in C Preprocessor Directive Meaning Category # Null directive #error message #line linenum filename Prints message when processed Used to update code line number and filename Simple #pragma name Compiler specific settings #include filename Includes content of another file File #define macro/string Define a macro or string substitution #undef macro Removes a macro definition Macro #if expr Includes following lines if expr is true # elif expr Includes following lines if expr is true #else #endif Handles otherwise conditions of #if Closes #if or #elif block Conditional #ifdef macro Includes following lines if macro is defined #ifndef imacro Includes following lines if macro is not defined # String forming operator ## Token pasting operator Operators defined same as #ifdef 33

### PowerPoint Presentation:

Pointers § C pointers allow programmers to directly access memory addresses where variables are stored § Pointer variable is declared by adding a ‘ * ’ symbol before the variable name while declaring it. § If p is a pointer to a variable (e.g. int i, *p = i;) § Using p means address of the storage location of the pointed variable § Using * p means value stored in the storage location of the pointed variable § Operator ‘&’ is used with a variable to mean variable’s address, e.g. &i gives address of variable i 34

### PowerPoint Presentation:

Illustrating Pointers Concept 1000 62 i Location address Location Location contents name Address of i = 1000 Value of i = 62 int i = 62; int * p; int j; p = &i; / * p becomes 1000 * / j = * p; / * j becomes 62 * / j = 0; / * j becomes zero * / j = * (&i) / * j becomes 62 * / 35

### PowerPoint Presentation:

Array § Collection of fixed number of elements in which all elements are of the same data type § Homogeneous, linear, and contiguous memory structure § Elements can be referred to by using their subscript or index position that is monotonic in nature § First element is always denoted by subscript value of 0 (zero), increasing monotonically up to one less than declared size of array § Before using an array, its type and dimension must be declared § Can also be declared as multi-dimensional such as Matrix2D[10][10] 36

### PowerPoint Presentation:

Illustrating Arrays Concept 1010 92 1008 63 1006 82 1012 10.25 1004 66 1008 250.00 1002 84 1004 155.50 1000 45 1000 82.75 int marks[6]; float price[4]; 1005 1004 1003 1002 1001 1000 char Y A B M O B city[6]; Each element Each element being an int being a float occupies 2 bytes occupies 4 bytes marks[0] = 45 price[0] = 82.75 marks[1] = 84 price[1] = 155.50 marks[5] = 92 price[3] = 10.25 (a) An array of (b) An array of integers having real numbers 6 elements having 4 elements Each element being a char occupies 1 byte city[0] = ‘B’ city[1] = ‘O’ city[5] = ‘Y’ (c) An array of characters having 6 elements 37

### PowerPoint Presentation:

String § One-dimensional array of characters terminated by a null character (‘\0)’ § Initialized at declaration as § char name[] = “PRADEEP”; § Individual elements can be accessed in the same way as we access array elements such as name[3] = ‘D’ § Strings are used for text processing § C provides a rich set of string handling library functions 38

### PowerPoint Presentation:

Library Functions for String Handling Library Function Used To strlen Obtain the length of a string strlwr Convert all characters of a string to lowercase strupr Convert all characters of a string to uppercase strcat Concatenate (append) one string at the end of another strncat Concatenate only first n characters of a string at the end of another strcpy Copy a string into another strncpy Copy only the first n characters of a string into another strcmp Compare two strings strncmp Compare only first n characters of two strings stricmp Compare two strings without regard to case strnicmp Compare only first n characters of two strings without regard to case strdup Duplicate a string strchr Find first occurrence of a given character in a string strrchr Find last occurrence of a given character in a string strstr Find first occurrence of a given string in another string strset Set all characters of a string to a given character strnset Set first n characters of a string to a given character strrev Reverse a string 39

### PowerPoint Presentation:

User Defined Data Types ( UDTs ) § UDT is composite data type whose composition is not include in language specification § Programmer declares them in a program where they are used § Two types of UDTs are: § Structure § Union 40

### PowerPoint Presentation:

Structure § UDT containing a number of data types grouped together § Constituents data types may or may not be of different types § Has continuous memory allocation and its minimum size is the sum of sizes of its constituent data types § All elements (member variable) of a structure are publicly accessible § Each member variable can be accessed using “.” (dot) operator or pointer ( EmpRecord.EmpID or EmpRecord Æ EmpID ) § Can have a pointer member variable of its own type, which is useful in crating linked list and similar data structures 41

### PowerPoint Presentation:

Structure (Examples) struct Employee struct Employee { { int EmpID; int EmpID; char EmpName[20]; char EmpName[20]; }; } EmpRecord; Struct Employee EmpRecord; Struct Employee * pempRecord = &EmpRecord 42

### PowerPoint Presentation:

Union § UDT referring to same memory location using several data types § Mathematical union of all constituent data types § Each data member begins at the same memory location § Minimum size of a union variable is the size of its largest constituent data types § Each member variable can be accessed using “,” (dot) operator § Section of memory can be treated as a variable of one type on one occasion, and of another type on another occasion 43

### PowerPoint Presentation:

Union Example Union Num { int intNum; unsigned unsNum ; }; union Num Number; 44

### PowerPoint Presentation:

Difference Between Structure and Union § Both group a number of data types together § Structure allocates different memory space contiguously to different data types in the group § Union allocates the same memory space to different data types in the group 45

### PowerPoint Presentation:

Control Structures § Control structures (branch statements) are decision points that control the flow of program execution based on: § Some condition test (conditional branch) § Without condition test (unconditional branch) § Ensure execution of other statement/block or cause skipping of some statement/block 46

### PowerPoint Presentation:

Conditional Branch Statements § if is used to implement simple one-way test. It can be in one of the following forms: § if..stmt § if..stmt1..else..stmt2 § if..stmt1..else..if..stmtn § switch facilitates multi-way condition test and is very similar to the third if construct when primary test object remains same across all condition tests 47

### PowerPoint Presentation:

Examples of “if” Construct § if (i <= 0) § if (i <= 0) i++; i++; else if (i >= 0) § if (i <= 0) j++; i++; else else k++; j++; 48

### PowerPoint Presentation:

Example of “switch” Construct switch(ch) { case ‘A’: case ‘B’: case ‘C’: printf(“Capital”); break; case ‘a’: case ‘b’: case ‘c’: printf(“Small”); break; default: Same thing can be written also using if construct as: if (ch == ‘A’ || ch == ‘B’ || ch == ‘C’) printf(“Capital”); else if (ch == ‘a’ || ch == ‘b’ || ch == ‘c’) printf(“Small”); else printf(“Not cap or small”); printf(“Not cap or small”); } 49

### PowerPoint Presentation:

Unconditional Branch Statements § Break: Causes unconditional exit from for , while , do , or switch constructs. Control is transferred to the statement immediately outside the block in which break appears. § Continue: Causes unconditional transfer to next iteration in a for , while , or do construct. Control is transferred to the statement beginning the block in which continue appears. § Goto label: Causes unconditional transfer to statement marked with the label within the function. 50

### PowerPoint Presentation:

Unconditional Branch Statements (Continued from previous slide) § Return [value/variable]: Causes immediate termination of function in which it appears and transfers control to the statement that called the function. Optionally, it provides a value compatible to the function’s return data type. 51

### PowerPoint Presentation:

Loop Structures § Loop statements are used to repeat the execution of statement or blocks § Two types of loop structures are: § Pretest : Condition is tested before each iteration to check if loop should occur § Posttest : Condition is tested after each iteration to check if loop should continue (at least, a single iteration occurs) 52

### PowerPoint Presentation:

Pretest Loop Structures § for : It has three parts: § Initializer is executed at start of loop § Loop condition is tested before iteration to decide whether to continue or terminate the loop § Incrementor is executed at the end of each iteration § While : It has a loop condition only that is tested before each iteration to decide whether to continue to terminate the loop 53

### PowerPoint Presentation:

Examples of “for” and “while” Constructs § for (i=0; i < 10; i++) printf(“i = %d”, i); § while (i < 10) { printf(“i = %d”, i); i++; } 54

### PowerPoint Presentation:

Posttest Loop Construct “do…while” § It has a loop condition only that is tested after each iteration to decide whether to continue with next iteration or terminate the loop § Example of do…while is: do { printf(“i = %d”, i); i++; }while (i < 10) ; 55

### PowerPoint Presentation:

Functions § Functions (or subprograms) are building blocks of a program § All functions must be declared and defined before use § Function declaration requires f unctionname , argument list , and return type § Function definition requires coding the body or logic of function § Every C program must have a main function. It is the entry point of the program 56

### PowerPoint Presentation:

Example of a Function int myfunc ( int Val, int ModVal ) { unsigned temp; temp = Val % ModVal; return temp; } This function can be called from any other place using simple statement: int n = myfunc(4, 2); 57

### PowerPoint Presentation:

Sample C Program (Program-1) / * Program to accept an integer from console and to display whether the number is even or odd * / # include <stdio.h> void main() { int number, remainder; clrscr(); / * clears the console screen * / printf (“Enter an integer:”); scanf (“%d”, &number); remainder = number % 2; if (remainder == 0) printf (“\n The given number is even”); else printf (“\n The given number is odd”); getch(); } 58

### PowerPoint Presentation:

Sample C Program (Program-2) / * Program to accept an integer in the range 1 to 7 (both inclusive) from console and to display the corresponding day (Monday for 1, Tuesday for 2, Wednesday for 3, and so on). If the entered number is out of range, the program displays a message saying that * / # include <stdio.h> # include <conio.h> #define MON printf (“\n Entered number is 1 hence day is MONDAY”); #define TUE printf (“\n Entered number is 2 hence day is TUESDAY”); #define WED printf (“\n Entered number is 3 hence day is WEDNESDAY”); #define THU printf (“\n Entered number is 4 hence day is THURSDAY”); #define FRI printf (“\n Entered number is 5 hence day is FRIDAY”); #define SAT printf (“\n Entered number is 6 hence day is SATURDAY”); #define SUN printf (“\n Entered number is 7 hence day is SUNDAY”); #define OTH printf (“\n Entered number is out of range”); void main() { int day; clrscr(); printf (“Enter an integer in the range 1 to 7”); scanf (“%d”, &day); switch(day) 59

### PowerPoint Presentation:

Sample C Program (Program-2) (Continued from previous slide..) { Case 1: MON; break; Case 2: TUE; break; Case 3: WED; break; Case 4: THU; break; Case 5: FRI; break; Case 6: SAT; break; Case 7: SUN; break; default: OTH; } getch(); } 60

### PowerPoint Presentation:

Sample C Program (Program-3) / * Program to accept the radius of a circle from console and to calculate and display its area and circumference * / # include <stdio.h> # include <conio.h> # define PI3.1415 void main() { float radius, area, circum; clrscr(); printf (“Enter the radius of the circle: ”); scanf (“%f”, &radius); area = PI * radius * radius; circum = 2 * PI * radius; printf (“\n Area and circumference of the circle are %f and %f respectively”, area, circum); getch(); } (Continued on next slide) 61

### PowerPoint Presentation:

Sample C Program (Program-4) / * Program to accept a string from console and to display the number of vowels in the string * / # include <stdio.h> # include <conio.h> # include <string.h> void main() { char input_string[50]; / * maximum 50 characters * / int len; int i = 0, cnt = 0; clrscr(); printf (“Enter a string of less than 50 characters: \n”); gets (input_string); len = strlen (input_string); for (i = 0; i < len; i++) { switch (input_string[i]) 62

### PowerPoint Presentation:

Sample C Program (Program-4) { case ‘a’: case ‘e’: case ‘i’: case ‘o’: case ‘u’: case ‘A’: case ‘E’: case ‘I’: case ‘O’: case ‘U’: cnt++ } } printf (“\n Number of vowels in the string are: %d”, cnt); getch(); } 63

### PowerPoint Presentation:

Sample C Program (Program-5) / * Program to illustrate use of a user defined function. The program initializes an array of n elements from 0 to n-1 and then calculates and prints the sum of the array elements. In this example n = 10 * / #include <stdio.h> #define SIZE 10 int ArrSum(int *p, int n); { int s, tot = 0; for(s = 0; s < n; s++) { tot += *p; p++; } return tot; } int main() { int i = 0, sum = 0; int nArr[SIZE] = {0}; while(i < SIZE) { nArr[i] = i; i++ } sum = ArrSum(nArr, SIZE); printf("Sum of 0 to 9 = %d\n", sum); return 0; } 64

### PowerPoint Presentation:

Key Words/Phrases § Arithmetic operators § Macro expansion § Arrays § Main function § Assignment operators § Member element § Bit-level manipulation § Null statement § Bitwise operators § Operator associativity § Branch statement § Operator precedence § Character set § Pointer § Comment statement § Posttest loop § Compound statement § Preprocessor directives § Conditional branch § Pretest loop § Conditional § Primitive data types compilation § Reserved words § Constants § Simple statement § Control structures § Statement block § Format specifiers § Strings § Formatted I/O § Structure data type § Function § Unconditional branch § Keywords § Union data type § Library functions § User-defined data types § Logical operators § Variable name § Loop structures § Variable type declaration § Variables 65