+ All Categories
Home > Documents > Lecture 3 Basic Types Operators Ws2013 2

Lecture 3 Basic Types Operators Ws2013 2

Date post: 04-Jun-2018
Category:
Upload: samir-ahmed
View: 222 times
Download: 0 times
Share this document with a friend

of 18

Transcript
  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    1/18

    Introduction to Programming

    Lecture 3: Basic Data Types & Operators

    Mahmoud El-Gayyar

    [email protected]

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    2/18

    Mahmoud El-Gayyar / Advanced Programming 2

    Introduction to C Langauge

    Tool

    Dangerous

    Examples of C Programs

    Program Structure

    Review Chapter 2

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    3/18

    Mahmoud El-Gayyar / Advanced Programming 3

    Types

    Constants

    Declarations

    Variable Names

    Operators

    Arithmetic Operators

    Assignment Operators

    Function Calls

    Outline

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    4/18

    Mahmoud El-Gayyar / Advanced Programming 4

    Types

    Constants

    Declarations

    Variable Names

    Operators

    Arithmetic Operators

    Assignment Operators

    Function Calls

    Outline

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    5/18

    Mahmoud El-Gayyar / Advanced Programming 5

    Types

    Type No. Of bits Minimum Value Range

    char 8 0-256

    int 16/32 -32,767 to 32,767

    long int 32/64 -2,147,483,647 to +2,147,483,647

    float 32 a floating-point number

    double 64 Double a floating-point number with more

    precision

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    6/18

    Mahmoud El-Gayyar / Advanced Programming 6

    Types

    Constants

    Declarations

    Variable Names

    Operators

    Arithmetic Operators

    Assignment Operators

    Function Calls

    Outline

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    7/18Mahmoud El-Gayyar / Advanced Programming 7

    Integers

    10, 0, -10, 10L

    Floating Points (decimal point or symbol e)

    3.14, 10., .01, 123e4, 123.456e7

    (e) is the power of 10

    Double by default

    Characters and Strings

    a, $, 1, hello

    \hi\\t\\\man\

    Constants

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    8/18Mahmoud El-Gayyar / Advanced Programming 8

    Statements started by # are calledpreprocessor directive

    Top of the program (after include), single line for each

    Why this can be very important?!!

    User-defined Constants

    #define PI 3.14156#define MYNAME "JOHN DOE"#define LIMIT 10

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    9/18Mahmoud El-Gayyar / Advanced Programming 9

    Types

    Constants

    Declarations

    Variable Names

    Operators

    Arithmetic Operators

    Assignment Operators

    Function Calls

    Outline

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    10/18Mahmoud El-Gayyar / Advanced Programming 10

    A declaration tells the compiler the nameand type

    A declaration for a variable can also contain an initial

    value.

    You can also declare several variables of the same type in

    one declaration, separating them with commas

    Delcarations

    float f1=10, f2=20;

    int i=10;

    char c;

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    11/18Mahmoud El-Gayyar / Advanced Programming 11

    The first character must be a letter, either lowercase or uppercase

    Afterwards, you can use letters, digits or underscore

    C is case-sensitive; reserved words are not allowed (e.g. int)

    The variable must be unique in thefirst eight characters in order to

    be safe across compilers

    2ndGood Programming Style:

    Defined constants are traditionally made up of all uppercase characters

    Make variable names descriptive (e.g. name it salary not s)

    Separate between different words:

    theSum, the_sum

    Variable Names (identifiers)

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    12/18Mahmoud El-Gayyar / Advanced Programming 12

    Types

    Constants

    Declarations

    Variable Names

    Operators

    Arithmetic Operators

    Assignment Operators

    Function Calls

    Outline

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    13/18Mahmoud El-Gayyar / Advanced Programming 13

    Arithmetic Operators

    Arithmetic

    Operator

    Operands Function

    - Unary Sign (negate a

    number)

    % Binary Modulus (remainder)

    / Binary Division

    * Binary Multiplication

    - Binary Subtraction

    + Binary Addition

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    14/18Mahmoud El-Gayyar / Advanced Programming 14

    1 / 2 0

    5 / 2 2

    1 / 2.0 0.5

    1 % 10 1

    11 % 3 2

    1 + 2 * 3 1 + (2*3) 7

    (1 + 2) * 3 9

    1.5 + 2 / 3 + 2.0 1.5+(2 / 3)+2.0 3.5

    Examples: Arithmetic Operators

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    15/18Mahmoud El-Gayyar / Advanced Programming 15

    x=1 sets x to 1

    a=b assigns the current b value to a

    i=i+1 increment i by 1

    c=a=b c = ( a = b )

    Assignment Operators

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    16/18Mahmoud El-Gayyar / Advanced Programming 16

    Types

    Constants

    Declarations

    Variable Names

    Operators

    Arithmetic Operators

    Assignment Operators

    Function Calls

    Outline

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    17/18Mahmoud El-Gayyar / Advanced Programming 17

    Built-in Functions:piece of code written by someone else to perform some useful

    task.

    To use a built in function, you need to call it

    function_name ( parameters ) // parameters are separated by commas ( , )

    The function may return a result // you need to store it in ?!!

    Examples:

    printf("Hello, world!\n")

    printf("%d\n", i)

    sqrt(144)

    printf("sum = %d\n", a + b + c) // paramters can be expressions

    c = sqrt(a * a + b * b)

    Function Calls

  • 8/13/2019 Lecture 3 Basic Types Operators Ws2013 2

    18/18/

    How to declare variables of different types?

    Always use descriptive names for your variables

    Use the #define directive to define constants

    Division of two integers is always integer

    Use explicit () to change operators precedence

    How to call functions?

    Dont forget to store its return result.

    Summary


Recommended