Difference between revisions of "C-and-C++/C2/First-C-Program/English-timed"
From Script | Spoken-Tutorial
PoojaMoolya (Talk | contribs) |
Sandhya.np14 (Talk | contribs) |
||
| Line 14: | Line 14: | ||
|- | |- | ||
| 00:08 | | 00:08 | ||
| − | | How to write a simple C program | + | | *How to write a simple C program |
|- | |- | ||
| 00:11 | | 00:11 | ||
| − | | How to compile it | + | | *How to compile it |
|- | |- | ||
| 00:13 | | 00:13 | ||
| − | | How to execute it | + | | *How to execute it |
|- | |- | ||
| Line 34: | Line 34: | ||
|- | |- | ||
| 00:21 | | 00:21 | ||
| − | |Ubuntu operating system version 11.10 and gcc Compiler version 4.6.1 on Ubuntu | + | |Ubuntu operating system version 11.10 and gcc Compiler version 4.6.1 on Ubuntu. |
|- | |- | ||
| Line 42: | Line 42: | ||
|- | |- | ||
| 00:33 | | 00:33 | ||
| − | |You should be familiar with Ubuntu Operating System and an Editor | + | |You should be familiar with Ubuntu Operating System and an Editor. |
|- | |- | ||
| 00:38 | | 00:38 | ||
| − | |Some editors are '''vim''' and '''gedit''' | + | |Some editors are '''vim''' and '''gedit'''. |
|- | |- | ||
| 00:42 | | 00:42 | ||
| − | |I will use gedit in this tutorial | + | |I will use gedit in this tutorial. |
|- | |- | ||
| 00:45 | | 00:45 | ||
| − | |For relevant tutorials please visit our website which is as shown | + | |For relevant tutorials please visit our website which is as shown. http://spoken-tutorial.org |
|- | |- | ||
|00:51 | |00:51 | ||
| − | | Let me tell you how to write a C program through an example | + | | Let me tell you how to write a C program through an example. |
|- | |- | ||
| Line 74: | Line 74: | ||
|- | |- | ||
| 01:20 | | 01:20 | ||
| − | |'''We use ampersand (&) to free up the prompt ''' | + | |'''We use ampersand (&) to free up the prompt. ''' |
|- | |- | ||
| 01:24 | | 01:24 | ||
| − | | Please note that all the '''C''' files will have extension | + | | Please note that all the '''C''' files will have extension '''“.c”'''(dot C). |
|- | |- | ||
|01:30 | |01:30 | ||
| − | | Now Press '''Enter''' | + | | Now Press '''Enter''', |
|- | |- | ||
| 01:32 | | 01:32 | ||
| − | | the text editor has opened | + | | the text editor has opened. |
|- | |- | ||
| 01:36 | | 01:36 | ||
| − | | Let us start to write a program | + | | Let us start to write a program. |
|- | |- | ||
| Line 102: | Line 102: | ||
|- | |- | ||
|01:48 | |01:48 | ||
| − | | Here, double slash is used to comment the line | + | | Here, double slash is used to comment the line. |
|- | |- | ||
| 01:52 | | 01:52 | ||
| − | |Comments are used to understand the flow of program | + | |Comments are used to understand the flow of program. |
|- | |- | ||
| 01:56 | | 01:56 | ||
| − | |It is useful for documentation | + | |It is useful for documentation. |
|- | |- | ||
| 01:58 | | 01:58 | ||
| − | |It gives us information about the program | + | |It gives us information about the program. |
|- | |- | ||
| Line 122: | Line 122: | ||
|- | |- | ||
| 02:07 | | 02:07 | ||
| − | | Now press '''Enter''' | + | | Now press '''Enter'''. |
|- | |- | ||
|02:09 | |02:09 | ||
| − | |Type hash '''“#include”''' space opening bracket , closing bracket | + | |Type (hash) '''“#include”''' space opening bracket , closing bracket. |
|- | |- | ||
| 02:17 | | 02:17 | ||
| − | | It is always a good practice to complete the brackets first, and then start writing inside it | + | | It is always a good practice to complete the brackets first, and then start writing inside it. |
|- | |- | ||
| 02:24 | | 02:24 | ||
| − | | Now Inside the bracket, type'''“stdio”''' “(dot).” “'''h” ''' | + | | Now Inside the bracket, type'''“stdio”''' “(dot).” “'''h” '''. |
|- | |- | ||
| 02:30 | | 02:30 | ||
| − | | '''stdio.h''' is a '''header file''' | + | | '''stdio.h''' is a '''header file'''. |
|- | |- | ||
| 02:33 | | 02:33 | ||
| − | |A '''program''' must contain this header file when it uses standard '''input/output functions''' | + | |A '''program''' must contain this header file when it uses standard '''input/output functions'''. |
|- | |- | ||
| Line 155: | Line 155: | ||
|- | |- | ||
| 02:50 | | 02:50 | ||
| − | | | | + | | | '''main''' is a special '''function'''. |
|- | |- | ||
| 02:52 | | 02:52 | ||
| − | |It denotes that the execution of the program begins from this line | + | |It denotes that the execution of the program begins from this line. |
|- | |- | ||
| 02:58 | | 02:58 | ||
| − | |The opening bracket and | + | |The opening bracket and closing bracket is called as parenthesis. |
|- | |- | ||
| 03:04 | | 03:04 | ||
| − | | Parenthesis followed by '''main''' is to tell the user that '''main''' is a '''function''' | + | | Parenthesis followed by '''main''' is to tell the user that '''main''' is a '''function'''. |
|- | |- | ||
Revision as of 22:28, 25 January 2015
| Time | Narration |
| 00:01 | Welcome to the spoken tutorial on First C program. |
| 00:05 | In this tutorial, we will learn |
| 00:08 | *How to write a simple C program |
| 00:11 | *How to compile it |
| 00:13 | *How to execute it |
| 00:14 | We will also explain some common errors and their solutions. |
| 00:18 | To record this tutorial, I am using |
| 00:21 | Ubuntu operating system version 11.10 and gcc Compiler version 4.6.1 on Ubuntu. |
| 00:31 | To practice this tutorial, |
| 00:33 | You should be familiar with Ubuntu Operating System and an Editor. |
| 00:38 | Some editors are vim and gedit. |
| 00:42 | I will use gedit in this tutorial. |
| 00:45 | For relevant tutorials please visit our website which is as shown. http://spoken-tutorial.org |
| 00:51 | Let me tell you how to write a C program through an example. |
| 00:55 | Open the terminal window by pressing Ctrl, Alt and T keys simultaneously on your keyboard. |
| 01:07 | Now let's open the text editor. So, at the prompt, type |
| 01:12 | “gedit” space “talk” dot “c” space “&” sign. |
| 01:20 | We use ampersand (&) to free up the prompt. |
| 01:24 | Please note that all the C files will have extension “.c”(dot C). |
| 01:30 | Now Press Enter, |
| 01:32 | the text editor has opened. |
| 01:36 | Let us start to write a program. |
| 01:39 | Type double slash “//” space |
| 01:42 | “My first C program”. |
| 01:48 | Here, double slash is used to comment the line. |
| 01:52 | Comments are used to understand the flow of program. |
| 01:56 | It is useful for documentation. |
| 01:58 | It gives us information about the program. |
| 02:01 | The double slash is called as single line comment. |
| 02:07 | Now press Enter. |
| 02:09 | Type (hash) “#include” space opening bracket , closing bracket. |
| 02:17 | It is always a good practice to complete the brackets first, and then start writing inside it. |
| 02:24 | Now Inside the bracket, type“stdio” “(dot).” “h” . |
| 02:30 | stdio.h is a header file. |
| 02:33 | A program must contain this header file when it uses standard input/output functions. |
| 02:41 | Now press Enter. |
| 02:43 | type “int” space “main” opening bracket,
closing bracket . |
| 02:50 | main is a special function. |
| 02:52 | It denotes that the execution of the program begins from this line. |
| 02:58 | The opening bracket and closing bracket is called as parenthesis. |
| 03:04 | Parenthesis followed by main is to tell the user that main is a function. |
| 03:11 | Here the int main function takes no arguments |
| 03:15 | It returns a value of type integer. |
| 03:18 | We will learn about data types in another tutorial. |
| 03:23 | Now Let us switch to the slides to know more about main function. Let us go to the next slide. |
| 03:29 | Every programshould have one main function |
| 03:33 | There should NOT be more than one main function |
| 03:36 | Otherwise the compiler cannot locate the beginning of the program |
| 03:41 | The empty pair of parentheses indicates that main has no arguments |
| 03:46 | The concept of arguments will be discussed in detail in the upcoming tutorials. |
| 03:52 | Now let us come back to our program. |
| 03:55 | Press Enter. |
| 03:58 | Type opening curly bracket “{” |
| 04:00 | The opening curly bracket marks the beginning of the function main. |
| 04:04 | Then Type closing curly bracket “}” |
| 04:08 | The closing curly bracket indicates the end of the function main. |
| 04:13 | Now Inside the bracket press Enter twice, |
| 04:16 | move the cursor one line up |
| 04:20 | Indentation makes the code easier to read |
| 04:23 | It also helps to locate errors faster |
| 04:25 | So let us give three space here |
| 04:29 | And Type “printf” opening bracket closing bracket “()” |
| 04:34 | printf is a standard C function to print the output on the terminal |
| 04:39 | Here inside the brackets, within the double quotes, |
| 04:43 | Anything within the double quotes in the printf statement will be printed on the terminal. |
| 04:50 | Type“Talk To a Teacher backslash n” |
| 04:59 | Backslash n “\n” signifies newline |
| 05:03 | As a result, after execution of the printf function, the cursor moves to the new line |
| 05:10 | Every C statement must end with a semicolon “;” |
| 05:15 | Hence, type it at the end of this line. |
| 05:19 | Semicolon acts as a statement terminator. |
| 05:24 | Now press Enter give three space here |
| 05:27 | And type “return” space “0” and a semicolon |
| 05:34 | This statement returns the integer zero |
| 05:38 | An integer has to be returned for this function because the function type is int |
| 05:45 | The return statement marks the end of executable statements |
| 05:51 | We will learn more about the returned values in another tutorial. |
| 05:55 | Now click on"Save" button to save the file |
| 06:00 | It is a good habit to save files frequently |
| 06:03 | This will protect you from sudden power failures |
| 06:05 | It will also be useful in case the applications were to crash. |
| 06:10 | Let us now compile the program, come back to a terminal. |
| 06:15 | Type “gcc” space “talk.c” space hyphen “-o” space “myoutput” |
| 06:24 | gcc is the compiler |
| 06:27 | talk.c is our filename . |
| 06:30 | -o myoutput says that the executable should go to the file myoutput |
| 06:37 | Now Press Enter. |
| 06:39 | We see that the program is compiled |
| 06:42 | By typing ls space (hypen) -lrt, we can see that myoutput is the last file to be created |
| 06:54 | To execute the program, type (dot slash)“./myoutput” press Enter. |
| 07:01 | Here the output is displayed as “Talk To a Teacher”. |
| 07:06 | As I said before, return is the last statement to be executed |
| 07:10 | Thus after the return statement nothing will be executed. Let us try it out. |
| 07:15 | come back to our program. |
| 07:17 | After the return statement, let us include one more printf statement |
| 07:22 | give space here type printf opening bracket, closing bracket. |
| 07:27 | Inside the bracket within the double quotes type Welcome backslash n , at the end type a semicolon. |
| 07:35 | Now click on save. |
| 07:37 | Let us compile and execute come back to our terminal. |
| 07:41 | you can recall the previously entered commands by using up arrowkey. |
| 07:46 | That is what I did now |
| 07:51 | We see that the second statements welcome is not executed |
| 07:58 | Now come back to our program |
| 08:00 | Let us write the 'Welcome' statement above the return statement |
| 08:06 | Click on Save. |
| 08:09 | Let us compile and execute |
| 08:15 | We see that the second printf statement welcome has also has been executed |
| 08:23 | Now let us see the common errors which we can come across. Come back to our program.
|
| 08:29 | Suppose here I will the miss the dot in “stdio.h” Click on Save.
|
| 08:36 | Let us compile and execute . |
| 08:41 | We see that |
| 08:42 | There is a fatal error at line no.2 in our talk.c file. |
| 08:48 | The compiler cannot find a header file with the name “stdioh”hence it is giving an error no such file or directory. |
| 08:59 | And the compilation is terminated. |
| 09:03 | Let us now fix the error come back to a program.Reinsert the dot “.”click on save
|
| 09:11 | Let us compile and execute. Yes It is working. |
| 09:19 | I will show you another common error |
| 09:22 | Let us switch back to the program.
|
| 09:25 | Now, suppose here i will miss the semicolon at the end of the line |
| 09:31 | Click on Save.Let us compile and execute |
| 09:41 | We see that there is an error at line no.6 in our talk.c file. That expected semicolon before printf. |
| 09:51 | Come back to our program. |
| 09:54 | As i said before semicolon acts as a statement terminator |
| 09:58 | So it will search for it at the end of the line.5 and at the beginning of the line.6. |
| 10:06 | This is line 6 |
| 10:09 | This is the last place where you can put the semicolon |
| 10:12 | Recall that the compiler also give the error message on line 6. |
| 10:18 | Let us try what happens if we put the semicolon here. |
| 10:23 | Click on Save . |
| 10:26 | Let us Compile and execute. |
| 10:30 | Yes it is working |
| 10:32 | Now come back to our program. Let us type the semicolon here at the end of this line.
|
| 10:40 | As it is a conventional practice to type the semicolon at the end of the line. |
| 10:46 | Now click on Save.
|
| 10:49 | Let us Compile and execute. .Yes it is working.
|
| 10:54 | Now let us go back to our slides. |
| 10:57 | As an Assignment |
| 10:59 | Write a program to print "Welcome to the World of C" |
| 11:02 | See what happens if “\n” is not included in the printf statement. |
| 11:08 | This brings us to the end of this tutorial |
| 11:12 | Watch the video available at the link shown below, |
| 11:15 | It summarises the Spoken Tutorial project |
| 11:18 | If you do not have good bandwidth, you can download and watch it. |
| 11:22 | The Spoken Tutorial Project Team |
| 11:24 | Conducts workshops using spoken tutorials |
| 11:28 | Gives certificates to those who pass an online test |
| 11:31 | For more details, please write to contact [at] spoken hyphen tutorial dot org |
| 11:38 | Spoken Tutorial Project is a part of the Talk to a Teacher project |
| 11:42 | It is supported by the National Mission on Education through ICT, MHRD, Government of India |
| 11:47 | More information on this Mission is available at the link shown below: |
| 11:51 | This is Ashwini Patil from IIT Bombay signing off. Thank you for watching. |
Contributors and Content Editors
Ashwini, Devraj, Krupali, PoojaMoolya, Pratik kamble, Sakinashaikh, Sandhya.np14, Sanmugam, Sneha