Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to Computers and Programming - Class 2 1 Introduction to Computers and Programming Class 2 Introduction to C Professor Avi Rosenfeld.

Similar presentations


Presentation on theme: "Introduction to Computers and Programming - Class 2 1 Introduction to Computers and Programming Class 2 Introduction to C Professor Avi Rosenfeld."— Presentation transcript:

1 Introduction to Computers and Programming - Class 2 1 Introduction to Computers and Programming Class 2 Introduction to C Professor Avi Rosenfeld

2 Introduction to Computers and Programming - Class 22 For Those Who Missed it…  Course home page is at www.cs.nyu.edu/courses/fall01/V22.0002-001/index.htm  Syllabus is accessible from the home page  There will be seven homeworks, two midterms and a final  There will be OPTIONAL homeworks given more frequently  Office hours are on Wednesday, 8:30-9:30 A.M., room 419 CIWW, and by appointment

3 Introduction to Computers and Programming - Class 23 Style vs. Syntax  Syntax – elements that are needed Grammar  Style – elements that improve human comprehension Comments, indenting, and other elements

4 Introduction to Computers and Programming - Class 24 A Sample Program /* our first program in C */ #include /* start of the main program */ int main() { printf( “ Hello World!\n ” ); return 0; } /* end program */

5 Introduction to Computers and Programming - Class 25 Escape Characters  The backslash (\) is called an escape character  Indicates that printf is supposed to do something unusual  When encountering a backslash, printf looks to the next character and combines it with the backslash to form an escape sequence

6 Introduction to Computers and Programming - Class 26 Other escape sequences \t horizontal tab \a alert- will make the computer beep \\ prints a backslash character in a printf statement \” p rints a double quote character in a printf statement

7 Introduction to Computers and Programming - Class 27 Printing Several Lines  One printf statement can print several lines by using newline characters. e.g. printf( “ Welcome\nto\nC!\n ” );  But that’s a stylistic horror! A better way: printf( “ Welcome \n ” “ to \n ” “ C!\n ” );

8 Introduction to Computers and Programming - Class 28 Printing Long Lines  Can use two or more printf statements (note the first has no newline) printf( “ The quick brown fox jumped ” ); printf( “ over the lazy dog.\n ” );  This will print one line like so: The quick brown fox jumped over the lazy dog.

9 Introduction to Computers and Programming - Class 29 Why does this work like this?  Because C ignores most white space characters in your editor (spaces, tabs, carriage-returns (“enters”), etc.)  C is looking for the \n character to tell it when to go to the next line

10 Introduction to Computers and Programming - Class 210 Declaration  Creating an identifier and associating it with a type and (behind the scenes) a location in memory. A couple of examples: int integer1; int integer1, integer2, sum;  integer1, integer2 and sum are all variables

11 Introduction to Computers and Programming - Class 211 Variables  Variables hold data values which can change  They must be declared with a data type and a name, immediately after a left brace, before they can be used  A variable name in C is any valid identifier

12 Introduction to Computers and Programming - Class 212 Data Types  C (as well as many other programming languages) are very sensitive to data type.  The int family short, long  The float family Double  Characters (strings)

13 Introduction to Computers and Programming - Class 213 Identifier  An identifier is a series of characters consisting of letters, digits and underscores “_” that does not begin with a digit or include several special characters such as math signs, $, and others  Can be any length but only the first 31 characters are required to be recognized by ANSI C compilers  Keep identifiers 31 characters or less for portability and fewer problems

14 Introduction to Computers and Programming - Class 214 C Is Case Sensitive  Upper case and lower case letters are different in C  E.g., lower case a1 and capital A1 are different identifiers

15 Introduction to Computers and Programming - Class 215 Good Programming Practices  Choose meaningful variable names to help make a program self-documenting (fewer comments will be needed).  First letter of an identifier used as a variable name should be a lower case letter.  Multiple-word variable names can help make a program more readable.  Use mixed-cases to help make the word stand out. E.G. totalCommissions.

16 Introduction to Computers and Programming - Class 216 Printf Example #3 #include int main() { int num1 = 3, num2 = 2; printf("%d plus %d equals %d\n", num1, num2, num1+num2); return 0; }

17 Introduction to Computers and Programming - Class 217 Conversion Specifiers  %d – integer  %f – float  %c – character  %s - string

18 Introduction to Computers and Programming - Class 218 Arithmetic in C  The C arithmetic operators are + for addition - for subtraction * for multiplication / for division, and % for modulus

19 Introduction to Computers and Programming - Class 219 Binary Operators  Operators that take two operands e.g. “+” is a binary operator and “a + b” has two operands (a and b)  Note integer division will yield an integer result e.g. 5 / 2 = 2 (not 2 1/2 ) and 17 / 5 = 3  modulus is the remainder after an integer division e.g. 5 % 2 is 1 and 17 % 5 is 2

20 Introduction to Computers and Programming - Class 220 Big (Very Common) Error  Divide by Zero e.g. x = y / 0 Normally undefined by computer systems and generally results in a fatal error Usually shows up at run time

21 Introduction to Computers and Programming - Class 221 Rules of Operator Precedence  C evaluates arithmetic expressions in a precise sequence determined by the rules of operative precedence  Expressions within parentheses are evaluated first (highest level of precedence) For nested or embedded parentheses, the expression in the innermost pair is evaluated first

22 Introduction to Computers and Programming - Class 222 Rules of Operator Precedence cont’d  Multiplication, division and modulus operations are evaluated next If more than one evaluated from left to right  Addition and subtraction operations are evaluated last If more than one evaluated from left to right

23 Introduction to Computers and Programming - Class 223 Parentheses  Are your friends  Are your really good friends  Because with them you can ensure expressions are evaluated as you expect  Can avoid mistakes with operator precedence (one less thing to think about) e.g. y = m * x + b ; y = (m * x) + b; e.g. y = a * b * b + c * b – d; y = ((((a * b) * b) + (c * b)) – d);


Download ppt "Introduction to Computers and Programming - Class 2 1 Introduction to Computers and Programming Class 2 Introduction to C Professor Avi Rosenfeld."

Similar presentations


Ads by Google