Recap C Course, Programmingclub, Fall 2008 2 C is a high-level language. Writing a C code. {editors like gedit, vi} Compiling a C code. {gcc –c test.c –o test} Executing the object code. {./test}
3.
Some more basics CCourse, Programming club, Fall 2008 3 Keywords char, static, if , while, return ..................... Total= about 32 Data Types int , char, float ...………..….. Some more later Arithmetic Operators + (Plus), - (Minus), * (Multiplication), /(Division) ……….………. Some more later
4.
My first Cprogram! C Course, Programming club, Fall 2008 4 #include <stdio.h> // program prints hello world int main() { printf ("Hello world!"); return 0; } Output: Hello world!
5.
Example 1 C Course,Programming club, Fall 2008 5 #include <stdio.h> // program prints a number of type int int main() { int number = 4; printf (“Number is %d”, number); return 0; } Output: Number is 4
6.
Example 2 C Course,Programming club, Fall 2008 6 #include <stdio.h> // program reads and prints the same thing int main() { int number ; printf (“ Enter a Number: ”); scanf (“%d”, &number); printf (“Number is %dn”, number); return 0; } Output : Enter a number: 4 Number is 4
7.
more and more CCourse, Programming club, Fall 2008 7 #include <stdio.h> int main() { /* this program adds two numbers */ int a = 4; //first number int b = 5; //second number int answer = 0; //result answer = a + b; }
8.
Note C Course, Programmingclub, Fall 2008 8 Errors Compilation Compiler generally gives the line number at which the error is present. Run time C programs are sequential making the debugging easier.
9.
Some more DataTypes C Course, Programming club, Fall 2008 9 Primary : int, float, char int (signed/unsigned)(2,4Bytes): used to store integers. char (signed/unsigned)(1Byte): used to store characters float, double(4,8Bytes): used to store a decimal number. User Defined: typedef: used to rename a data type typedef int integer; can use integer to declare an int. enum, struct, union
10.
Some more ArithmeticOperators C Course, Programming club, Fall 2008 10 Prefix Increment : ++a example: int a=5; b=++a; // value of b=6; a=6; Postfix Increment: a++ example int a=5; b=a++; //value of b=5; a=6;
11.
Contd… C Course, Programmingclub, Fall 2008 11 Modulus (remainder): % example: 12%5 = 2; Assignment by addition: += example: int a=4; a+=1; //(means a=a+1) value of a becomes 5 Can use -, /, *, % also
12.
Contd… C Course, Programmingclub, Fall 2008 12 Comparision Operators: <, > , <=, >= , !=, ==, !, &&, || . example: int a=4, b=5; a<b returns a true(non zero number) value. Bitwise Operators: <<, >>, ~, &, | ,^ . example int a=8; a= a>>1; // value of a becomes 4
13.
Operator Precedence C Course,Programming club, Fall 2008 13 Meaning of a + b * c ? is it a+(b*c) or (a+b)*c ? All operators have precedence over each other *, / have more precedence over +, - . If both *, / are used, associativity comes into picture. (more on this later) example : 5+4*3 = 5+12= 17.
14.
Precedence Table C Course,Programming club, Fall 2008 14 Highest on top ++ -- (Postfix) ++ -- (Prefix) * / % + - << >> < > & | && ||
15.
Input / Output CCourse, Programming club, Fall 2008 15 printf (); //used to print to console(screen) scanf (); //used to take an input from console(user). example: printf(“%c”, ’a’); scanf(“%d”, &a); More format specifiers %c The character format specifier. %d The integer format specifier. %i The integer format specifier (same as %d). %f The floating-point format specifier. %o The unsigned octal format specifier. %s The string format specifier. %u The unsigned integer format specifier. %x The unsigned hexadecimal format specifier. %% Outputs a percent sign.
16.
Some more geekstuff C Course, Programming club, Fall 2008 16 & in scanf. It is used to access the address of the variable used. example: scanf(%d,&a); we are reading into the address of a. Data Hierarchy. example: int value can be assigned to float not vice-versa. Type casting.
17.
Home Work C Course,Programming club, Fall 2008 17 Meaning of Syntax Semantics of a programming language Find the Output: value=value++ + value++; Value=++value + ++value; value=value++ + ++value;
18.
End of Today’sLecture C Course, Programming club, Fall 2008 18 Doubts && Queries?