140 likes | 260 Vues
This guide introduces C and C++ programming, covering key topics such as the differences between C and Java, basic syntax, data types, flow control (if, for, while), functions, arrays, and debugging techniques. You'll learn how to write your first program in both languages, understand their structure, and engage in practical exercises for better comprehension. The course aims to build a solid foundation for programming in C and C++, catering to beginners and those transitioning from other languages.
E N D
CP Introduction to C And c++?
What will we do? • C vs JAVA • Dev-C++ tutorial and your first program • C++ structure • Reading input/output • Flow Control (if, for, while) • array • function (method) • debugging
Hello World (Day 1 Morning) C JAVA import java.io.*; class HelloWorldApp { public static void main(String[] args) { System.out.println("Hello World!"); } } #include <stdio.h> int main(intargc, char* argv[]) { printf("Hello, CP!\n"); return 0; }
C vs JAVA • C code DOES NOT need to be in a class • No filename restriction • C and JAVA have very similar syntax • if, for, while is the same • Data type is almost the same (int, char, bool, float, double, etc) • Function and method is the same • For c++, function does not need to be in a class • We don’t really use any class in algorithm :D
Output (printf) printf(format_string, value…);
input(scanf) Use the same format string scanf(format_string, &variable…); #include <stdio.h> int main() { int age, w; printf("Please enter your age and weight”); scanf("%d %d", &age, &w); printf(“your age = %d \n your weight is %d\n”,age,w); }
Condition Statement • If statement • The same as java #include <stdio.h> int main() { int age; printf( "Please enter your age" ); scanf( "%d", &age ); if ( age < 100 ) { printf ("You are NOT old!\n" ); } else { printf ("You are old!\n" ); } return 0; }
While loop • While loop • The same as java #include <stdio.h> int main() { int x = 0; while ( x < 10 ) { printf("x = %d\n",x); x++; } return 0; }
For loop • For loop • The same as java #include <stdio.h> int main() { for (inti = 0;i < 10;i++) { printf(“i = %d\n",i); } return 0; }
Practice • Lab 1 (http://www.nattee.net/files-dae/Algo-Lab1.pdf) • Prob 0,1 • Lab 2 (http://www.nattee.net/files-dae/Algo-Lab2.pdf) • Prob 0,1 • hw00e (BMI) • http://www.nattee.net/~dae/algo/prob/hw00b_fibo/problem.pdf • hw00c (drawbox) • http://www.nattee.net/~dae/algo/prob/hw00c_drawbox/problem.pdf • hw00d (time after) • http://www.nattee.net/~dae/algo/prob/hw00d_timeafter/problem.pdf
Array in C++ (Day 1 Afternoon) (almost) the same as java #include <iostream> int main() { intfibo[100]; fibo[0] = 1; fibo[1] = 1; for (inti = 2;i < 100;i++) { fibo[i] = fibo[i-1] + fibo[i-2]; } printf("%d\n",fibo[99]); return 0; }
2D Array Example #include <stio.h> int main() { int x; int y; int array[8][8]; for ( x = 0; x < 8; x++ ) { for ( y = 0; y < 8; y++ ) array[x][y] = x * y; } printf("Array Indices\n"); for ( x = 0; x < 8;x++ ) { for ( y = 0; y < 8; y++ ) printf("[%d][%d] = %d\n",x,y,array[x][y]); printf("\n"); } return 0; }
More practice • Lab 2 • Prob 2 • hw00f • http://www.nattee.net/~dae/algo/prob/hw00f_aminmax/problem.pdf
Debugging (Day 2 Morning) • Follow guide in Lab 3 • (http://www.nattee.net/files-dae/Algo-Lab3.pdf)