Difference between revisions of "C-and-C++/C2/First-C-Program/English"

From Script | Spoken-Tutorial
Jump to: navigation, search
 
(17 intermediate revisions by 2 users not shown)
Line 13: Line 13:
  
 
|-
 
|-
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 1
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0cm;"| Slide 1  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Welcome to the spoken tutorial on First C program.  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Welcome to the spoken tutorial on First C program.  
  
 
|-
 
|-
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 2  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0cm;"| Slide 2  
  
 
Learning Objectives  
 
Learning Objectives  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| In this tutorial we will learn,
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| In this tutorial we will learn,  
  
 
How to write a simple C program  
 
How to write a simple C program  
  
How to compile it
+
How to compile it  
  
How to execute it
+
How to execute it  
  
 
We will also explain some common errors and their solution.  
 
We will also explain some common errors and their solution.  
  
 
|-
 
|-
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 3
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0cm;"| Slide 3  
  
 
System Requirements  
 
System Requirements  
Line 37: Line 37:
  
  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| To record this tutorial, I am using
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| To record this tutorial, I am using  
  
Ubuntu operating system version 11.10
+
Ubuntu operating system version 11.10  
  
and GCC Compiler version 4.6.1 on Ubuntu.
+
and GCC Compiler version 4.6.1 on Ubuntu.  
  
 
|-
 
|-
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 4
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0cm;"| Slide 4  
  
 
Prerequisites  
 
Prerequisites  
Line 50: Line 50:
  
  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| To practice this tutorial,  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| To practice this tutorial,  
  
You should be familiar with Ubuntu Operating System.
+
You should be familiar with Ubuntu Operating System.  
  
And an editor.
+
And an editor.  
  
Some example editors are vim and gedit
+
Some editors are vim and gedit  
  
I will use gedit in this tutorial.
+
I will use gedit in this tutorial.  
  
For relevant tutorials please visit our website:
+
For relevant tutorials please visit our website which is as shown:  
  
 
[http://spoken-tutorial.org/ http://spoken-tutorial.org]  
 
[http://spoken-tutorial.org/ http://spoken-tutorial.org]  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| /*Switch to Terminal*/  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| /*Switch to Terminal*/  
 
+
  
 
Open the terminal using Ctrl + Alt + T or alternately,  
 
Open the terminal using Ctrl + Alt + T or alternately,  
  
 
Click on Applications-> Accessories -> Terminal  
 
Click on Applications-> Accessories -> Terminal  
 
  
 
At the command prompt type: gedit firstprog.c  
 
At the command prompt type: gedit firstprog.c  
  
 +
Type:
  
Type:
+
'''//My first C program'''  
 
+
'''//My first C program'''
+
  
  
  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Let me tell you how to write a C program through an example  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Let me tell you how to write a C program through an example  
  
Open the terminal by pressing '''Ctrl, Alt '''and''' T''' Simultaneously on your keyboard.
+
Open the terminal Window by pressing '''Ctrl, Alt '''and '''T''' keys Simultaneously on your keyboard.  
  
Now lets open the text editor, So at the prompt type:
+
Now lets open the text editor, So at the prompt type:  
  
'''"gedit"''' space '''"talk"''' dot '''"c"''' space '''&'''
+
'''"gedit"''' space '''"talk"''' dot '''"c"''' space '''&'''(ampersand sign)
  
 
We used the ampersand'''(&)''' to free up the prompt  
 
We used the ampersand'''(&)''' to free up the prompt  
  
Please note that all the '''C''' files will have the extension dot '''"c"'''
+
Please note that all the '''C''' files will have extension dot '''"c"'''  
  
 
Now Press '''Enter. '''
 
Now Press '''Enter. '''
  
The text editor has opened.
+
The text editor has opened.  
  
 
Let us start to write a program.  
 
Let us start to write a program.  
  
Type double slash '''//”''' space  
+
Type double slash '''//”''' space  
  
'''“My first C program”.'''
+
'''My first C program”.'''  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| '''//My first C program'''
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| '''//My first C program'''  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Here, double slash is used to comment the line.
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Here, double slash is used to comment the line.  
  
Comments are used to understand the flow of program.
+
Comments are used to understand the flow of program.  
  
It is useful for documentation.
+
It is useful for documentation.  
  
It gives us information about the program.
+
It gives us information about the program.  
  
The double slash''' '''is called as''' single line comment.'''
+
The double slash is called as '''single line comment.'''  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Highlight '''//'''
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Highlight '''//'''  
  
 
'''<nowiki>#include <stdio.h> </nowiki>'''
 
'''<nowiki>#include <stdio.h> </nowiki>'''
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now press '''Enter'''
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Now press '''Enter'''  
  
Type "hash '''(#)''' '''include''' (space) opening angle, closing angle bracket.  
+
Type "hash '''(#)''' '''include''' (space) opening bracket, closing bracket.  
  
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.  
  
Now, Inside the bracket, type:
+
Now, Inside the bracket, type:  
  
 
'''"stdio"''' dot '''"h" '''
 
'''"stdio"''' dot '''"h" '''
  
'''stdio.h''' is a '''header file'''
+
'''stdio.h''' is a '''header file'''  
  
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  
  
Now press''' Enter '''
+
Now press '''Enter '''
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| <nowiki>#include<stdio.h></nowiki>
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| <nowiki>#include<stdio.h> </nowiki>
  
int main()
+
int main()  
  
  
  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Then type: "'''int''' (space) '''main()'''" (opening bracket and closing bracket)  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Type: "'''int''' (space) '''main()'''" (opening bracket and closing bracket)  
  
'''main()''' is a special function.
+
'''main()''' is a special function.  
  
It denotes that the execution of the program begins from this line.
+
It denotes that the execution of the program begins from this line.  
  
The opening bracket and closing bracket is called as paranethesis.
+
The opening bracket and closing bracket is called as paranthesis.  
  
Parenthesis followed by '''main()''' is to tell the user that main is a function.
+
Paranthesis followed by '''main()''' is to tell the user that main is a function.  
  
Here the '''int main()''' function takes no arguments. It returns a value of type integer.
+
Here the '''int main()''' function takes no arguments. It returns a value of type integer.  
  
We will learn about data types in another tutorial.
+
We will learn about data types in another tutorial.  
  
Now let us switch to the slides to know more about the '''main()''' function.
+
Now let us switch to the slides to know more about the '''main()''' function.  
  
Let us go tot he next slide.
+
Let us go tot he next slide.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Slide 5
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Slide 5  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Every program will have only one '''main''' function.
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Every program should have one '''main''' function.  
  
There should NOT be more than one function also.  
+
There should NOT be more than one main function.  
  
If we use more than one main function,  
+
Otherwise, the compiler cannot locate the beginning of the program.  
 
+
the compiler cannot locate the beginning of the program.  
+
  
 
The empty pair of parentheses indicate that main has no arguments.  
 
The empty pair of parentheses indicate that main has no arguments.  
  
The concept of arguments will be discussed in detail in the upcoming tutorials.
+
The concept of arguments will be discussed in detail in the upcoming tutorials.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| <nowiki>#include<stdio.h></nowiki>
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| <nowiki>#include<stdio.h> </nowiki>
  
int main()
+
int main()  
  
 
{  
 
{  
Line 184: Line 179:
  
  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now let us come back to our program,  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Now let us come back to our program,  
  
Press''' Enter'''
+
Press '''Enter'''  
  
 
type: '''{''' (opening curly bracket)  
 
type: '''{''' (opening curly bracket)  
  
The opening curly brace marks the beginning of the function '''main. '''
+
The opening curly bracket marks the beginning of the function '''main. '''
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| <nowiki>#include<stdio.h></nowiki>
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| <nowiki>#include<stdio.h> </nowiki>
  
int main()
+
int main()  
  
 
{  
 
{  
  
}
+
}  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Type: '''}''' (Closing curly bracket)
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Then
  
The Closing bracket indicates the end of the function '''main.'''
+
Type: '''}''' (Closing curly bracket)
 +
 
 +
The Closing bracket indicates the end of the function '''main.'''  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now inside the bracket  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Now inside the bracket  
  
press enter twice, move the cursor one line up
+
press enter twice, move the cursor one line up  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Indentation makes the code easier to read
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Indentation makes the code easier to read  
  
It also helps to locate errors faster
+
It also helps to locate errors faster  
  
So let us give three space here.
+
So let us give three space here.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| <nowiki>#include<stdio.h></nowiki>
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| <nowiki>#include<stdio.h> </nowiki>
  
int main()
+
int main()  
  
 
{  
 
{  
Line 229: Line 226:
  
  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| And Type:
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| And Type:  
  
'''printf''' and opening bracket and closing bracket '''()'''
+
'''printf''' opening bracket closing bracket '''()'''  
  
'''printf()''' is a standard '''C''' function to print the standard output on the terminal.
+
'''printf()''' is a standard '''C''' function to print the output on the terminal.  
  
Here inside the brackets, within double quotes,
+
Here inside the brackets, within double quotes,  
  
Anything within the double quotes in the '''printf''' statement will be printed on the terminal.
+
Anything within the double quotes in the '''printf''' statement will be printed on the terminal.  
  
Type:
+
Type:  
  
'''Talk To a Teacher''' backward slash '''(\)''' and '''"n"'''
+
'''Talk To a Teacher''' backward slash '''(\)''' and '''"n"'''  
  
'''\n''' (Backward Slash n) signifies newline,  
+
'''\n''' (BackSlash n) signifies newline,  
  
As a result after the execution of the printf function the cursor moves to the new line.
+
As a result after the execution of the printf function the cursor moves to the new line.  
  
Every '''C''' statement must end with a semicolon'''(;)'''
+
Every '''C''' statement must end with a semicolon'''(;)'''  
  
 
Hence Type it at the end of this line.  
 
Hence Type it at the end of this line.  
Line 254: Line 251:
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| <nowiki>#include<stdio.h></nowiki>
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| <nowiki>#include<stdio.h> </nowiki>
  
int main()
+
int main()  
  
 
{  
 
{  
Line 262: Line 259:
 
printf("Talk To a Teacher \n");  
 
printf("Talk To a Teacher \n");  
  
return 0;
+
return 0;  
  
}
+
}  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now press '''Enter'''
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Now press '''Enter'''  
  
Give three space here.
+
Give three space here.  
  
And type ''''return''' (space)'''0'''' and a semicolon '''';''''
+
And type ''''return''' (space)'''0'''' and a semicolon ''''<nowiki>;'</nowiki>'''  
  
This statement returns the integer zero.
+
This statement returns the integer zero.  
  
An integer has to be returned for this function
+
An integer has to be returned for this function.
  
Because the function type is int.
+
Because the function type is int.  
  
The return statement marks the end of the executable statements.
+
The return statement marks the end of the executable statements.  
  
We will learn more about the returned values in another tutorial.
+
We will learn more about the returned values in another tutorial.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| <nowiki>#include<stdio.h></nowiki>
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| <nowiki>#include<stdio.h> </nowiki>
  
int main()
+
int main()  
  
 
{  
 
{  
Line 290: Line 287:
 
printf("Talk To a Teacher \n");  
 
printf("Talk To a Teacher \n");  
  
return 0;
+
return 0;  
  
}
+
}  
  
 +
'''Type:'''
  
'''Type:'''
+
'''gcc talk.c -o myoutput'''  
  
'''gcc talk.c -o myoutput'''
+
'''Highlight'''  
  
'''Highlight'''
+
'''gcc'''  
  
'''gcc'''
+
'''talk.c'''  
  
'''talk.c'''
+
'''-o myoutput'''
 +
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Now Click on the '''"Save"''' button to save the file.
  
'''-o myoutput'''
+
It is a good habit to save files frequently.  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now Click on the '''"Save"''' button to save the file.  
+
  
It is a good habit to save files frequently.
+
This will protect you from sudden power failures.  
  
This will protect you from sudden power failures.
+
It will also be useful in case the applications were to crash.  
  
It will also be useful in case the applications were to crash.
+
Let us now compile the program
  
Let us now compile the program
+
Come back to our terminal
  
Come back to our terminal
+
Type: '''"gcc"''' space “'''talk.c”''' space hyphen '''o''' space “'''myoutput"'''
  
Type: '''"gcc"''' space “'''talk.c”''' space hyphen '''o''' space '''“myoutput"'''
+
'''gcc''' is the compiler.  
  
'''gcc''' is the compiler
+
'''talk.c''' is the filename.
  
'''talk.c''' is the filename
+
'''-o''' '''myoutput''' says that the executable should go to the file myoutput.
  
on compilation '''gcc''' creates an executable
+
Now press '''Enter'''  
  
'''-o''' '''myoutput''' says that the executable should go to the file myoutput.
+
We see that the program is compiled.  
 
+
And press '''Enter'''
+
 
+
We see that the program is compiled.
+
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Type:
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Type:  
  
'''ls -lrt'''
+
'''ls -lrt'''  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| By typing '''ls -lrt''', we can see that '''output''' is the last file to be created.
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| By typing '''ls -lrt''', we can see that '''myoutput''' is the last file to be created.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| '''Type:'''
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| '''Type:'''  
  
'''./myoutput'''
+
'''./myoutput'''  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| To execute the program,  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| To execute the program,  
  
 
type '''./myoutput''' (dot slash "myoutput")  
 
type '''./myoutput''' (dot slash "myoutput")  
Line 348: Line 342:
 
press '''Enter '''
 
press '''Enter '''
  
Here the output is displayed: "Talk To a Teacher".
+
Here the output is displayed as: "Talk To a Teacher".  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| As I said before, return is the last statement to be executed.
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| As I said before, return is the last statement to be executed.  
  
Thus after the return statement nothing will be executed.
+
Thus after the return statement nothing will be executed.  
  
Let us try it out.
+
Let us try it out.  
  
Come back to our program.
+
Come back to our program.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| After the return statement let us include one more printf statment.
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| After the return statement let us include one more printf statment.  
  
Give space here.
+
Give space here.  
  
'''printf''' and opening bracket and closing bracket '''()'''
+
'''printf''' opening bracket closing bracket '''()'''  
  
inside the brackets, within double quotes,
+
inside the brackets, within double quotes,  
  
type: “'''Welcome”''' backslash '''n'''
+
type: “'''Welcome”''' backslash '''n'''  
  
At the end type a semicolon '''<nowiki>;</nowiki>'''
+
At the end type a semicolon '''<nowiki>;</nowiki>'''  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Click on '''Save'''
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Click on '''Save'''  
  
Let us compile and execute.
+
Let us compile and execute.  
  
Come back to our terminal.
+
Come back to our terminal.  
  
You can recall the previously entered command by using up arrow key.
+
You can recall the previously entered command by using up arrow key.  
  
That is what I did now.
+
That is what I did now.  
  
We see that the second statement W'''elcome''' is not executed.
+
We see that the second statement '''Welcome''' is not executed.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now come back to our program.
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Now come back to our program.  
  
Let us write the Welcome statement above the return statement.
+
Let us write the Welcome statement above the return statement.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Click on Save
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Click on Save  
  
Let us compile and execute
+
Let us compile and execute.
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| We see the the second printf statement Welcome has also been executed.
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| We see that the second printf statement Welcome has also been executed.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Errors
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Errors  
  
Type:
+
Type:  
  
 +
<nowiki><stdioh> </nowiki>
 +
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Now,let us see the common errors which we can come across
  
<nowiki><stdioh></nowiki>
+
Come back to our program.  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now,let us see the common errors which we can come across
+
  
Come back to our program.
+
Now suppose here I will miss the dot ''''.'''' in
  
Now suppose I will miss the dot ''''.'''' in
+
'''<nowiki><stdio.h></nowiki>'''  
 
+
'''<nowiki><stdio.h></nowiki>'''
+
  
 
Click on '''Save '''
 
Click on '''Save '''
  
Let us compile and execute.
+
Let us compile and execute.  
  
we see that there is an fatal error at line no.2 in our '''talk.c''' file.
+
we see that there is an fatal error at line no.2 in our '''talk.c''' file.  
  
The compiler cannot find a header file with the name '''“stdioh”'''
+
The compiler cannot find a header file with the name '''stdioh”'''  
  
Hence it is giving a fatal error and the compilation is terminated.
+
Hence it is giving an error "No such file or directory" and the compilation is terminated.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Let us now fix the error.
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Let us now fix the error.  
  
Come back to our program.
+
Come back to our program.  
  
Reinsert the “'''.”'''
+
Reinsert the “'''.”'''  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| '''Click on Save'''
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| '''Click on Save'''  
  
Let us compile and execute.
+
Let us compile and execute.  
  
Yes it is working.
+
Yes it is working.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Error 2
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Error 2  
  
 +
Type:
  
Type:
+
printf("Hello World \n")
  
  
printf("Hello World \n")
 
  
 +
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| I will show you another common error.
  
 +
Let us switch back to the program.
  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| I will show you another common error.
+
Now, suppose here I will miss the semicolon at the end of the line.  
  
Let us switch back to the program.
+
Click on '''Save'''
  
Now, suppose here I will miss the semicolon at the end of the line.
+
Let us compile and execute.  
  
Click on '''Save'''
+
we see that there is an error at line no.6 in our '''talk.c''' file.
  
Let us compile and execute.
+
That expected semicolon before '''printf.'''
  
we see an error at line no.6 in our '''talk.c''' file.
+
Come back to our program.  
  
That expected semicolon before '''printf.'''
+
As I said before, semicolon acts as a statement terminator.  
  
Come back to our program.
+
So it will search for it at the end of the line 5 and at the begning of the line 6.  
  
As I said before, semicolon acts as a statement terminator.
+
This is line 6.  
  
So it will search for it at the end of the line 5 and at the begning of the line 6.
+
This is the last place where you can put the semicolon.  
  
This is line 6.
+
Recall that compiler also gave the error message on line 6.  
 
+
This is the last place where you can put the semicolon.
+
 
+
Recall that compiler also gave the error message on line 6.
+
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Let us try what happens if you put the semicolon here.
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Let us try what happens if you put the semicolon here.  
  
Click on '''Save.'''
+
Click on '''Save.'''  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Let us compile and execute.
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Let us compile and execute.  
  
Yes it is working.
+
Yes it is working.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now come back to our program.
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Now come back to our program.  
  
Let us type the semicolon here at the end of this line.
+
Let us type the semicolon here at the end of this line.  
  
As it is the conventional practice to type the semicolon at the end of the line.
+
As it is the conventional practice to type the semicolon at the end of the line.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"|  
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Now click on '''Save.'''
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Now click on '''Save.'''  
  
Let us compile and execute.
+
Let us compile and execute.  
  
Yes it is working.
+
Yes it is working.  
  
Now let us move back to our slides.
+
Now let us move back to our slides.  
  
 
|-
 
|-
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Slide 7
+
| style="background-color:transparent;border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Slide 7  
  
 
Assignment  
 
Assignment  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| As an Assignment  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| As an Assignment  
  
Write a program to print "Welcome to the World of C"
+
Write a program to print '''"Welcome to the World of C" '''
  
See what happens if \n is not included in the printf statement.
+
See what happens if \n is not included in the '''printf''' statement.  
  
 
|-
 
|-
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"|  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0cm;"|  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| This brings us to the end of this tutorial
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| This brings us to the end of this tutorial  
  
 
|-
 
|-
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide 8
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0cm;"| Slide 8  
  
About the Spoken Tutorial Project
+
About the Spoken Tutorial Project  
  
  
  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Watch the video available at the link shown  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Watch the video available at the link shown below
  
http://spoken-tutorial.org /What\_is\_a\_Spoken\_Tutorial
+
[http://spoken-tutorial.org/ http://spoken-tutorial.org] /What\_is\_a\_Spoken\_Tutorial  
  
 
It summarises the Spoken Tutorial project  
 
It summarises the Spoken Tutorial project  
  
If you do not have good bandwidth, you can download and watch it.
+
If you do not have good bandwidth, you can download and watch it.  
  
 
|-
 
|-
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide Number 9
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0cm;"| Slide Number 9  
  
Spoken Tutorial Workshops
+
Spoken Tutorial Workshops  
  
  
  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| The Spoken Tutorial Project Team  
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| The Spoken Tutorial Project Team  
  
 
Conducts workshops using spoken tutorials  
 
Conducts workshops using spoken tutorials  
Line 554: Line 545:
 
Gives certificates to those who pass an online test  
 
Gives certificates to those who pass an online test  
  
For more details, contact spoken-tutorial.org
+
For more details,please write to contact@spoken-tutorial.org  
  
 
|-
 
|-
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide Number 10
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0cm;"| Slide Number 10  
 
+
  
Acknowledgement
+
Acknowledgement  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| Spoken Tutorial Project is a part of the Talk to a Teacher project
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| Spoken Tutorial Project is a part of the Talk to a Teacher project  
  
It is supported by the National Mission on Education through ICT, MHRD, Government of India
+
It is supported by the National Mission on Education through ICT, MHRD, Government of India  
  
More information on this Mission is available at: http://spoken-tutorial.org\NMEICT-Intro
+
More information on this Mission is available at the link shown below: http://spoken-tutorial.org\NMEICT-Intro  
  
 
|-
 
|-
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding:0.097cm;"| Slide Number 11
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:none;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0cm;"| Slide Number 11  
  
About the contributor
+
About the contributor  
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding:0.097cm;"| This is Ashwini Patil from IIT Bombay signing off
+
| style="border-top:none;border-bottom:1pt solid #000000;border-left:1pt solid #000000;border-right:1pt solid #000000;padding-top:0cm;padding-bottom:0.097cm;padding-left:0.097cm;padding-right:0.097cm;"| This is Ashwini Patil from IIT Bombay signing off  
  
 
Thank You for joining.  
 
Thank You for joining.  
  
 
|}
 
|}

Latest revision as of 16:39, 14 July 2014

Title of script: First C program

Author: Ashwini Patil

Keywords: C Program, printf(), int main(), Video Tutorial


Visual Cue
Narration


Slide 1 Welcome to the spoken tutorial on First C program.
Slide 2

Learning Objectives

In this tutorial we will learn,

How to write a simple C program

How to compile it

How to execute it

We will also explain some common errors and their solution.

Slide 3

System Requirements


To record this tutorial, I am using

Ubuntu operating system version 11.10

and GCC Compiler version 4.6.1 on Ubuntu.

Slide 4

Prerequisites


To practice this tutorial,

You should be familiar with Ubuntu Operating System.

And an editor.

Some editors are vim and gedit

I will use gedit in this tutorial.

For relevant tutorials please visit our website which is as shown:

http://spoken-tutorial.org

/*Switch to Terminal*/

Open the terminal using Ctrl + Alt + T or alternately,

Click on Applications-> Accessories -> Terminal

At the command prompt type: gedit firstprog.c

Type:

//My first C program


Let me tell you how to write a C program through an example

Open the terminal Window by pressing Ctrl, Alt and T keys Simultaneously on your keyboard.

Now lets open the text editor, So at the prompt type:

"gedit" space "talk" dot "c" space &(ampersand sign)

We used the ampersand(&) to free up the prompt

Please note that all the C files will have extension dot "c"

Now Press Enter.

The text editor has opened.

Let us start to write a program.

Type double slash “//” space

My first C program”.

//My first C program Here, double slash is used to comment the line.

Comments are used to understand the flow of program.

It is useful for documentation.

It gives us information about the program.

The double slash is called as single line comment.

Highlight //

#include <stdio.h>

Now press Enter

Type "hash (#) include (space) opening bracket, closing bracket.

It is always a good practice to complete the brackets first, and then start writing inside it.

Now, Inside the bracket, type:

"stdio" dot "h"

stdio.h is a header file

A program must contain this header file when it uses standard input/output functions

Now press Enter

#include<stdio.h>

int main()


Type: "int (space) main()" (opening bracket and closing bracket)

main() is a special function.

It denotes that the execution of the program begins from this line.

The opening bracket and closing bracket is called as paranthesis.

Paranthesis followed by main() is to tell the user that main is a function.

Here the int main() function takes no arguments. It returns a value of type integer.

We will learn about data types in another tutorial.

Now let us switch to the slides to know more about the main() function.

Let us go tot he next slide.

Slide 5 Every program should have one main function.

There should NOT be more than one main function.

Otherwise, the compiler cannot locate the beginning of the program.

The empty pair of parentheses indicate that main has no arguments.

The concept of arguments will be discussed in detail in the upcoming tutorials.

#include<stdio.h>

int main()

{


Now let us come back to our program,

Press Enter

type: { (opening curly bracket)

The opening curly bracket marks the beginning of the function main.

#include<stdio.h>

int main()

{

}

Then

Type: } (Closing curly bracket)

The Closing bracket indicates the end of the function main.

Now inside the bracket

press enter twice, move the cursor one line up

Indentation makes the code easier to read

It also helps to locate errors faster

So let us give three space here.

#include<stdio.h>

int main()

{

printf("Talk To a Teacher \n");


And Type:

printf opening bracket closing bracket ()

printf() is a standard C function to print the output on the terminal.

Here inside the brackets, within double quotes,

Anything within the double quotes in the printf statement will be printed on the terminal.

Type:

Talk To a Teacher backward slash (\) and "n"

\n (BackSlash n) signifies newline,

As a result after the execution of the printf function the cursor moves to the new line.

Every C statement must end with a semicolon(;)

Hence Type it at the end of this line.

Semicolon(;) acts as a statement terminator.

#include<stdio.h>

int main()

{

printf("Talk To a Teacher \n");

return 0;

}

Now press Enter

Give three space here.

And type 'return (space)0' and a semicolon ';'

This statement returns the integer zero.

An integer has to be returned for this function.

Because the function type is int.

The return statement marks the end of the executable statements.

We will learn more about the returned values in another tutorial.

#include<stdio.h>

int main()

{

printf("Talk To a Teacher \n");

return 0;

}

Type:

gcc talk.c -o myoutput

Highlight

gcc

talk.c

-o myoutput

Now Click on the "Save" button to save the file.

It is a good habit to save files frequently.

This will protect you from sudden power failures.

It will also be useful in case the applications were to crash.

Let us now compile the program

Come back to our terminal

Type: "gcc" space “talk.c” space hyphen o space “myoutput"

gcc is the compiler.

talk.c is the filename.

-o myoutput says that the executable should go to the file myoutput.

Now press Enter

We see that the program is compiled.

Type:

ls -lrt

By typing ls -lrt, we can see that myoutput is the last file to be created.
Type:

./myoutput

To execute the program,

type ./myoutput (dot slash "myoutput")

press Enter

Here the output is displayed as: "Talk To a Teacher".

As I said before, return is the last statement to be executed.

Thus after the return statement nothing will be executed.

Let us try it out.

Come back to our program.

After the return statement let us include one more printf statment.

Give space here.

printf opening bracket closing bracket ()

inside the brackets, within double quotes,

type: “Welcome” backslash n

At the end type a semicolon ;

Click on Save

Let us compile and execute.

Come back to our terminal.

You can recall the previously entered command by using up arrow key.

That is what I did now.

We see that the second statement Welcome is not executed.

Now come back to our program.

Let us write the Welcome statement above the return statement.

Click on Save

Let us compile and execute.

We see that the second printf statement Welcome has also been executed.
Errors

Type:

<stdioh>

Now,let us see the common errors which we can come across

Come back to our program.

Now suppose here I will miss the dot '.' in

<stdio.h>

Click on Save

Let us compile and execute.

we see that there is an fatal error at line no.2 in our talk.c file.

The compiler cannot find a header file with the name “stdioh”

Hence it is giving an error "No such file or directory" and the compilation is terminated.

Let us now fix the error.

Come back to our program.

Reinsert the “.”

Click on Save

Let us compile and execute.

Yes it is working.

Error 2

Type:

printf("Hello World \n")


I will show you another common error.

Let us switch back to the program.

Now, suppose here I will miss the semicolon at the end of the line.

Click on Save

Let us compile and execute.

we see that there is an error at line no.6 in our talk.c file.

That expected semicolon before printf.

Come back to our program.

As I said before, semicolon acts as a statement terminator.

So it will search for it at the end of the line 5 and at the begning of the line 6.

This is line 6.

This is the last place where you can put the semicolon.

Recall that compiler also gave the error message on line 6.

Let us try what happens if you put the semicolon here.

Click on Save.

Let us compile and execute.

Yes it is working.

Now come back to our program.

Let us type the semicolon here at the end of this line.

As it is the conventional practice to type the semicolon at the end of the line.

Now click on Save.

Let us compile and execute.

Yes it is working.

Now let us move back to our slides.

Slide 7

Assignment

As an Assignment

Write a program to print "Welcome to the World of C"

See what happens if \n is not included in the printf statement.

This brings us to the end of this tutorial
Slide 8

About the Spoken Tutorial Project


Watch the video available at the link shown below

http://spoken-tutorial.org /What\_is\_a\_Spoken\_Tutorial

It summarises the Spoken Tutorial project

If you do not have good bandwidth, you can download and watch it.

Slide Number 9

Spoken Tutorial Workshops


The Spoken Tutorial Project Team

Conducts workshops using spoken tutorials

Gives certificates to those who pass an online test

For more details,please write to contact@spoken-tutorial.org

Slide Number 10

Acknowledgement

Spoken Tutorial Project is a part of the Talk to a Teacher project

It is supported by the National Mission on Education through ICT, MHRD, Government of India

More information on this Mission is available at the link shown below: http://spoken-tutorial.org\NMEICT-Intro

Slide Number 11

About the contributor

This is Ashwini Patil from IIT Bombay signing off

Thank You for joining.

Contributors and Content Editors

Ashwini, PoojaMoolya