C-and-C++/C2/First-C-Program/English

From Script | Spoken-Tutorial
Revision as of 10:42, 30 January 2014 by Ashwini (Talk | contribs)

Jump to: navigation, search

HTML: <META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css"><!--[if lt IE 5.5000]><link rel="stylesheet" href="/skins/monobook/IE50Fixes.css?207" type="text/css" media="screen" /><![endif]--><!--[if IE 5.5000]><link rel="stylesheet" href="/skins/monobook/IE55Fixes.css?207" type="text/css" media="screen" /><![endif]--><!--[if IE 6]><link rel="stylesheet" href="/skins/monobook/IE60Fixes.css?207" type="text/css" media="screen" /><![endif]--><!--[if IE 7]><link rel="stylesheet" href="/skins/monobook/IE70Fixes.css?207" type="text/css" media="screen" /><![endif]--><!--[if lt IE 7]><script type="text/javascript" src="/skins/common/IEFixes.js?207"></script>

<meta http-equiv="imagetoolbar" content="no" /><![endif]-->Head ScriptsC-and-C++/C2/First-C-Program/English=== From Script | Spoken-Tutorial === Jump to: [#column-one navigation], [#searchInput search]start contentTitle 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 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 brace 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 and opening bracket and 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 (Backward Slash 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 output 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 and opening bracket and 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 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

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: 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.

Saved in parser cache with key script-st_:pcache:idhash:2405-0!1!0!!en!2 and timestamp 20140129071308Contributors and Content Editors

[../../../index.php%3Ftitle=User:Ashwini&action=edit&redlink=1 Ashwini], [../../../index.php%3Ftitle=User:PoojaMoolya&action=edit&redlink=1 PoojaMoolya] Retrieved from "http://script.spoken-tutorial.org/index.php/C-and-C%2B%2B/C2/First-C-Program/English"end content===== Views =====

  • [../../../index.php/C-and-C%2B%2B/C2/First-C-Program/English Page]
  • [../../../index.php%3Ftitle=Talk:C-and-C%2B%2B/C2/First-C-Program/English&action=edit&redlink=1 Discussion]
  • [../../../index.php%3Ftitle=C-and-C%2B%2B/C2/First-C-Program/English&action=edit Edit]
  • [../../../index.php%3Ftitle=C-and-C%2B%2B/C2/First-C-Program/English&action=history History]
  • [../../../index.php/Special:MovePage/C-and-C%2B%2B/C2/First-C-Program/English Move]
  • [../../../index.php%3Ftitle=C-and-C%2B%2B/C2/First-C-Program/English&action=watch Watch]
Personal tools
  • [../../../index.php/User:Ashwini Ashwini]
  • [../../../index.php/User_talk:Ashwini My talk]
  • [../../../index.php/Special:Preferences My preferences]
  • [../../../index.php/Special:Watchlist My watchlist]
  • [../../../index.php/Special:Contributions/Ashwini My contributions]
  • [../../../index.php%3Ftitle=Special:UserLogout&returnto=C-and-C%2B%2B/C2/First-C-Program/English Log out]
Navigation
  • [../../../index.php/Main_Page Main Page]
  • [../../../index.php/Script_%7C_Spoken-Tutorial:Community_Portal Community portal]
  • [../../../index.php/Script_%7C_Spoken-Tutorial:Current_events Current events]
  • [../../../index.php/Special:RecentChanges Recent changes]
  • [../../../index.php/Special:Random Random page]
  • [../../../index.php/Help:Contents Help]
Search
   ===== Toolbox =====
  • [../../../index.php/Special:WhatLinksHere/C-and-C%2B%2B/C2/First-C-Program/English What links here]
  • [../../../index.php/Special:RecentChangesLinked/C-and-C%2B%2B/C2/First-C-Program/English Related changes]
  • [../../../index.php/Special:Upload Upload file]
  • [../../../index.php/Special:SpecialPages Special pages]
  • [../../../index.php%3Ftitle=C-and-C%2B%2B/C2/First-C-Program/English&printable=yes Printable version]
  • [../../../index.php%3Ftitle=C-and-C%2B%2B/C2/First-C-Program/English&oldid=8331 Permanent link]

end of the left (by default at least) columnFile:Poweredby mediawiki 88x31.png* This page was last modified on 29 January 2014, at 07:13.

  • This page has been accessed 159 times.
  • [../../../index.php/Script_%7C_Spoken-Tutorial:Privacy_policy Privacy policy]
  • [../../../index.php/Script_%7C_Spoken-Tutorial:About About Script | Spoken-Tutorial]
  • [../../../index.php/Script_%7C_Spoken-Tutorial:General_disclaimer Disclaimers]

Served in 0.168 secs.

Contributors and Content Editors

Ashwini, PoojaMoolya