Download presentation
Presentation is loading. Please wait.
Published byRoger Black Modified over 9 years ago
1
Introduction to C Programming Lecture 6
2
Functions – Call by value – Call by reference Arrays Today's Lecture Includes
3
A function in which original value of the variable is changed To call by reference we cannot pass value, we have to pass memory address of variable “&” is used to take the address of a variable Call by Reference
4
main ( ) { double x = 123.456 ; square ( x ) ; } Example: Call by Reference square ( double& y ) { y = y * y ; y = y * y ;} Passing arguments by using pointers
5
There are two issues inside a computer Memory overhead Stack overhead Management Issues of Computer
6
Elegant code where price is not too high Efficient code where price is too high Programming Options
7
ARRAYS Student’s age program
8
They are special kind of data type They are like data structures in which identical data types are stored In C each array has – name – data type – size They occupy continuous area of memory Arrays
9
Storage of an array in memory C[0] C[1] C[2] C[3] C[4] C[5] C[6] C[7] C[8] C[9] Name... 35 59 24... memory Index
10
arrayType arrayName[numberOfElements ]; For example, int age [ 10 ] ; More than one array can be declared on a line int age [10], height [10], names [20] ; Mix declaration of variables with declaration of arrays int i, j, age [10] ; Declaration of Arrays
11
Array name e.g. age index number age [ 4 ] Referring to Array Elements
12
for ( i = 0 ; i < 10 ; i ++ ) { cin >> age [ i ] ; } Example1: Using Arrays
13
totalAge = 0 ; for ( i = 0 ; i < 10 ; i ++ ) { totalAge + = age [ i ] ; } Example 2
14
int age [ 10 ] ; for ( i = 0 ; i < 10 ; i ++ ) { age [ i ] = 0 ; } Initializing an Array
15
int age [ 10 ] = { 0,0,0,0,0,0,0,0,0,0 } ; int age[ 10 ] = { 0 } ; Test it: Should it work ?
16
int age [ ] = { 1,2,3,4,5,6,7,8,9,10 } ; for ( i = 0 ; i < 10 ; i ++ ) Initializing an Array ‘ i ‘ will have value from 0 to 9
17
#include main ( ) { int c [ 100 ] ; } Example: 3
18
do { int z, i = 0 ; cin >> z ; if ( z != -1 ) c[ i ] = z ; Example: 3 assignment statement
19
i ++ ; } while ( z != -1 && i < 100 ) ; cout << “ The total number of positive integers entered by user is “ << i -1; Example 3
20
– Data types should be identical – Size should be same int a [ 10 ] ; int b [ 10 ] ; Copying Arrays
21
To copy from array “ a ” to array “ b ” : b [ 0 ] = a [ 0 ] ; b [ 1 ] = a [ 1 ] ; b [ 2 ] = a [ 2 ] ; b [ 3 ] = a [ 3 ] ; … … … b [ 10 ] = a [ 10 ] ; Copying Arrays
22
for ( i =0 ; i < 10 ; i ++ ) b [ i ] = a [ i ] ; Copying Arrays
23
Take the sum of squares of 10 different numbers which are stored in an array int a [ 10 ] ; int arraySize =10 ; int sumOfSquares = 0 ; for ( i = 0 ; i < arraySize ; i ++ ) { sumOfSquares = sumOfSquares + a [ i ] * a [ i ] ; } Example: 4
24
int z ; int a [ 100 ] ; for ( i = 0 ; i < 100 ; i ++ ) { a [ i ] = i ; } cout << “ Please enter a positive integer “ ; cin >> z ; int found = 0 ; Example 5
25
for ( i =0 ; i < 100 ; i ++ ) { if ( z == a [ i ] ) { found = 1 ; break ; } } Example 5
26
if ( found == 1 ) cout << “ We found the integer at position ” << i ; else cout << “ The number was not found” ; Example 5
27
# include 0 - 32767 rand ( )
28
x = rand ( ) ; A call goes to ” rand ( ) “, it generates a number and returns to x Calling rand ( )
29
It returns the remainder rand ( ) % 6 = ? Result has to be between 0 and 5 inclusive 1 + rand ( ) % 6 It will randomly generate number between 1 and 6 Modulus “ % ”
30
If a die is rolled 10/100 million of time, then on average equal number of 1’s,equal number of 2’s, equal number of 3’s etc. will be generated Fair Die
31
It has only two possibilities 0 / 1 rand ( ) % 2 ; Example: Tossing a Coin
32
It is shipped in every standard library with compiler Most major programming languages give some kind of random number generator as a function as part of library Writing a random number generator is itself a field Importance of rand ( )
33
data type name size Array Declaration
34
const
35
const int arraySize = 100 ; It creates an identifier “ arraySize ” and assigns a value 100. This is called integer constant. It is not a variable Its value cannot be changed const
36
Today we studied Functions Arrays
37
For Next Time Passing structures and arrays to functions Default arguments and inline functions Returning structure variables, passing structures by reference, overloaded functions Arrays in depth, and Intro to Strings
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.