0% found this document useful (0 votes)
97 views

What Is A Function

A function is a block of code that performs a specific task and can be called from different parts of a program. It contains a function header with the name, parameters, and return type. The function body contains the statements between curly brackets that perform the task. Functions make code reusable and divide large programs into smaller, manageable blocks. Some key aspects are that functions can accept parameters, return a value, and call other functions recursively through self-invocation.

Uploaded by

louie_arnaiz
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
97 views

What Is A Function

A function is a block of code that performs a specific task and can be called from different parts of a program. It contains a function header with the name, parameters, and return type. The function body contains the statements between curly brackets that perform the task. Functions make code reusable and divide large programs into smaller, manageable blocks. Some key aspects are that functions can accept parameters, return a value, and call other functions recursively through self-invocation.

Uploaded by

louie_arnaiz
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 14

What is a Function?

A function is a block of code that has a name and it has a property that it is reusable
i.e. it can be executed from as many different points in a C Program as required.

Function groups a number of program statements into a unit and gives it a name.
This unit can be invoked from other parts of a program. A computer program cannot
handle all the tasks by it self. Instead its requests other program like entities – called
functions in C – to get its tasks done. A function is a self contained block of
statements that perform a coherent task of same kind

The name of the function is unique in a C Program and is Global. It neams that a
function can be accessed from any location with in a C Program. We pass information
to the function calledarguments specified when the function is called. And the
function either returns some value to the point it was called from or returns nothing.
We can divide a long C program into small blocks which can perform a certain task. A
function is a self contained block of statements that perform a coherent task of same
kind.

Structure of a Function
There are two main parts of the function. The function header and the function body.

int sum(int x, int y)


{
int ans = 0; //holds the answer that will be returned
ans = x + y; //calculate the sum
return ans //return the answer
}

Function Header
In the first line of the above code

int sum(int x, int y)

It has three main parts

1. The name of the function i.e. sum


2. The parameters of the function enclosed in paranthesis
3. Return value type i.e. int
Function Body
What ever is written with in { } in the above example is the body of the function.
Function Prototypes
The prototype of a function provides the basic information about a function which
tells the compiler that the function is used correctly or not. It contains the same
information as the function header contains. The prototype of the function in the
above example would be like

int sum (int x, int y);

The only difference between the header and the prototype is the semicolon ; there
must the a semicolon at the end of the prototype.

Pages: [Page - 1] [Page - 2] [Page - 3] [Page - 4] [Page - 5]


Tags: Function
Like What you See?
Become one of the regulars by subscribing! You'll be the first to know when we add
more great posts just like this. Join up by either RSS Feeds or Email Updates today!
There are 90 Comments to this post. You can follow any responses to this entry
through the RSS 2.0 feed. You can skip to the end and leave a
response or TrackBack from your own site.

• ena

April 6, 2008 at 8:44 am


What are the functions in C programming? Write a note with examples.
Log in to Reply

o ruffa naomi
September 24, 2010 at 7:42 am
guys, can you help me out with this prob: Make a program that would ask for two numbers then
display their quotient aand modulo without using operators / and %.
Log in to Reply

• vasu

April 22, 2008 at 11:04 pm


write a program using one dimensional array that searches a number if it is found on the list
of the given 5 input numbers and locate its exact location in the list…..
SAMPLE INPUT/OUTPUT DIALOGUE:
enter a list of numbers:
54826
enter a number to be searhed: 2
2 is found in location 4
/*this is the program that gives the desired output*/

#include<stdio.h>

main()

int num[10],i,n,searchno;

clrscr();

printf("enter num to be searched");

scanf("%d",&searchno);

printf("enter n");

scanf("%d",&n);

printf("enter number in list");

printf("the entered numbers are:");

for(i=0;i<n-1;i++)

scanf("%d",&num[i]);

for(i=0;i<n-1;i++)

if(num[i]==searchno)

printf("the searchno is %d , loc is %d",num[i],i);

else

printf("not found");

break;

getch();

Log in to Reply

o dillep
April 14, 2009 at 11:27 am
send important programsin functions in c
Log in to Reply

• FAIZAN ([email protected])
April 28, 2008 at 10:40 pm

#include<stdio.h>

#include<conio.h>

void main(void)

int hour,min,sec,i;

clrscr();

printf("ENTER HOURS:");

scanf("%d",&hour);

printf("ENTER MINUTES:");

scanf("%d",&min);

printf("ENTER SECONDS:");

scanf("%d",&sec);

clrscr();

for(i=1;i<=I+1;i++)

sec=sec+1;

if(sec==60)

sec=0;

min=min+1;

if(min==60)

min=0;

hour=hour+1;

if(hour==24)

hour=0;

clrscr();

gotoxy(10,25);

printf("%02d:%02d:%02d",hour,min,sec);

sleep(1);

getch();

Log in to Reply
• FAIZAN ([email protected])

April 28, 2008 at 11:01 pm

#include<stdio.h>

#include<conio.h>

void main(void)

int hour,min,sec,i;

clrscr();

printf("ENTER HOURS:");

scanf("%d",&hour);

printf("ENTER MINUTES:");

scanf("%d",&min);

printf("ENTER SECONDS:");

scanf("%d",&sec);

clrscr();

for(i=1;i<=I+1;i++)

sec=sec+1;

if(sec==60)

sec=0;

min=min+1;

if(min==60)

min=0;

hour=hour+1;

if(hour==24)

hour=0;

clrscr();

gotoxy(10,25);

printf("%02d:%02d:%02d",hour,min,sec);

sleep(1);

}
getch();

Log in to Reply

o ilimbek
March 19, 2010 at 5:18 pm
n!/n^n (from n=1 to infinity)
Write a C program which will find the sum of the N-terms of the aboveseries. The program will consist
of a MAIN function and a function.
Within the MAIN function.
. Number of terms N will be read from the standard input.
. N will be passed to the function as an argument.
. Sum of the N terms(return value from the function) will be printed.
Within the function.
. Sum of the N terms of the given series will be calculated and returned to the MAIN function.
Log in to Reply

• Asadullah

May 7, 2008 at 1:30 am


Detail About Recursion and its Type
Here I am going to give a detail about Recursion in C++.
Definition: Recursion is the process where a function is called itself but stack frame will be out
of limit because function call will be infinite times. So a termination condition is mandatory to
a recursion.
In C++, Recursion can be divided into two types:
(a) Run- Time Recursion: Normal as in C
(b) Compile- Time Recursion: By using Template
Each of these can be also divided into following types:
1. Linear Recursion
2. Binary Recursion
3. Tail Recursion
4. Mutual Recursion
5. Nested Recursion
1. Linear Recursion: This recursion is the most commonly used. In this recursion a function
call itself in a simple manner and by termination condition it terminates. This process called
‘Winding’ and when it returns to caller that is called ‘Un-Winding’. Termination condition also
known as Base condition.
Example: Factorial calculation by linear recursion
Run-Time Version
int Fact(long n)

{
if(0>n)

return -1;

if(0 == n)

return 1;

else

return ( n* Fact(n-1));

}
Winding Process:
Function called Function return
Fact(6) 6*Fact(5)
Fact(5) 5*Fact(4)
Fact(4) 4*Fact(3)
Fact(3) 3* Fact(2)
Fact(2) 2* Fact(1)
Fact(1) 1* Fact(0)
Terminating Point
Fact(0) 1
Unwinding Process
Fact(1) 1*1
Fact(2) 2*1
Fact(3) 3*2*1
Fact(4) 4*3*2*1
Fact(5) 5*4*3*2*1
Fact(6) 6*5*4*3*2*1
Compile-Time Version
// template for Base Condition

template <>

struct Fact<0>

enum

factVal = 1

};

};

template <int n>

struct Fact

// Recursion call by linear method


enum

value = n * Fact<n - 1>::factVal

};

};
To test it how it’s working at compile time, just call
cout << Fact<-1>::factVal ;
And compile it then compiler error will come, because no template for -1.
2. Binary Recursion: Binary Recursion is a process where function is called twice at a time
inplace of once at a time. Mostly it’s using in data structure like operations for tree as
traversal, finding height, merging, etc.
Example: Fibonacci number
Run Time Version Code:
int FibNum(int n)

// Base conditions

if (n < 1)

return -1;

if (1 == n || 2 == n)

return 1;

// Recursive call by Binary Method

return FibNum(n - 1) + FibNum(n - 2); // At a time two recursive function called so

// binary

}
Compile Time Version Code
// Base Conditions

template<>

struct FibNum<2>

enum { val = 1 };

};

template <>

struct FibNum<1>

enum { val = 1 };

};
// Recursive call by Binary Method

template <int n>

struct FibNum

enum { val= FibNum<n - 1>::val + FibNum<n - 2>::val };

};
3. Tail Recursion: In this method, recursive function is called at the last. So it’s more efficient
than linear recursion method. Means you can say termination point will come(100%) only you
have to put that condition.
Example: Fibonacci number
Run Time Version Code:
int FibNum(int n, int x, int y)

if (1 == n) // Base Condition

return y;

else // Recursive call by Tail method

return FibNum(n-1, y, x+y);

}
Compile Time Version Code
template <int n, int x, int y>

struct FibNum

// Recursive call By tail method

enum

val = FibNum<n-1, y, (x+y)>::val

};

};

// Base Condition or Termination

template<int x, int y>

struct FibNum<1, x, y>

{
enum

Log in to Reply

o Blessel Jane Amor Ebaya


August 11, 2008 at 5:42 am
Please help me to know how to make a program in C language in finding the factorial of N using for,
while and else in the body statements?
thanks….
——– Original Message ——–
Detail About Recursion and its Type
Log in to Reply

• LeeAnna Lynch

May 7, 2008 at 3:36 pm


I would like to know how to write source code for this assignment:
Write a new “Currency Conversion†ン program, with a title, to accept one input
currency, which is error checked as a valid entry, and then display its equivalency in US
dollars. For example: 300 Canadian Dollar = 189.19 US Dollar.
Log in to Reply

• fred @makerereuniversity kampala

July 14, 2008 at 6:22 am


i find problems in handling functions and arguments my programs when run give me an error
reading declaration syntax error can anyone help me
Log in to Reply

• mukasa fred@ ISAE

July 14, 2008 at 6:38 am


multi functional programes help alot in easy understanding of the programe and they enable
you to break down the programe into smaller parts i myself i enjoy using them in my
programes
Log in to Reply

• mukasa fred@ makerere university kampala

July 14, 2008 at 7:03 am


i have seen passing on constants and variables as to another function from the main but what
about when the main passes on a constant or a variable to the other function and then it has ti
use it and return a value to the main function, is it possible?
Log in to Reply

• indu

July 28, 2008 at 12:34 am


function called min(x,y)that returns the smaller of two double values
Log in to Reply

• thrish

September 7, 2008 at 5:37 pm


.phelp nmn po. my project kme. ang problema ayaw bumlik nung mga value, anong gagawin
ko?? my alam po ba kau program. ung pang hyperlink, halimbawa, pag a ung pinundot,
pupunta sa new page, mala gnun po.. salamat po sa tutulong, badly needed.. salamat.
Log in to Reply

• Anu

September 11, 2008 at 9:24 pm


Should every C program use return 0;before the closing braces of a block?
Log in to Reply

• adeth usares

September 14, 2008 at 12:17 am


can u pls give me some sample program with source code of function?thanks…
Log in to Reply

• deepak tapa

September 23, 2008 at 12:01 pm


type of the funtion should be properly declared
Log in to Reply

• imran
December 14, 2008 at 1:51 pm
what is type of main() function in c?
is it predefined or userdefined?
if it is predefined then where is it stored in the files of c?
Log in to Reply

« Older Comments |

Leave a Reply
You must be logged in to post a comment.
NEWS & UPDATES

Enter your email address:

Subscribe

DOWNLOADS

TUTORIAL CATEGORIES

• Tutorials
o C Programming Tutorials
o C++ Programming Tutorials
o C# Programming Tutorials
o Object Oriented Programming
o Microsoft Direct-X Programming
o Programming Styles
o Data Structures
• Source Code
o C Programming Source Code
o C++ Source Code
o ASP
o Visual Basic Source Code
o PHP Source Code
o Java
o Java Script
• Blog
• Free Utilities
• Computer Books
o General Books
o Programming Books
o Databases
o Web Design & Development
o Computer Science Books
o Certification Central
o General Software
o Graphics & Illustration
o Hardware
o Networking Books
• FAQs
POPULAR TAGS

.NET Algorithms Applet Arrays B-Tree Books C#.NET C++ LibraryC++


ProgrammingCalculator Class Classes C
Programming CSharpDatabase Data Structure DirectXException FAQ FAQs File

HandlingFunctions Game GraphicsInheritance Java JavaScriptLoops Networking

Object Open SourceOverloading PHP Source

CodePointers PolymorphismProgramming Programming TipsSorting Source


Code Stack Strings Utilities Visual Basic Source Code Windows Wireless
LINK PARTNERS

• Web Hosting
Latest Offers
• Getting Started with Dreamweaver CS5 and Business Catalyst Free Video
Training Tutorials
• iOS 4: Building Data-Driven Applications Free Video Training Tutorials
• Seven Reasons ECM is Good for Government
• ImageNow & Microsoft SharePoint: 5 Ways They Play Well Together
• Gestion de Aplicaciones Compuestas: Llenar el vacio de la visibilidad de TI en
las aplicaciones compuestas y complejas

Featured Posts

• Ten tips on improving your programming skills


• Web Applications Security
• Little known features of C/C++
• 50 C++ Interview Questions
Recent Posts

• Ten tips on improving your programming skills


• Web Applications Security
• Little known features of C/C++
• 50 C++ Interview Questions
• Boycott FaceBook

You might also like