Ee1101 Workshop06 Arrays
Ee1101 Workshop06 Arrays
Ee1101 Workshop06 Arrays
6.1 Array
An array of variables can be declared as
variable_type array_name[number\_of\_elements];
Individual variables of an array are called elements.
Exercise 6.4 Sort user given 10 numbers in ascending order. (Hint. You may use Bubble Sort)
Exercise 6.5 Sort user given 10 numbers in descending order.
1
Listing 6.2: Use of array in loops.
columns
columns
# include < stdio .h > co
columns
columns co
# define NumSTD 5
columns
columns co
columns
columns co
int main ( void )
columns
columns co
columns
columns
{ co
double marks [ NumSTD ] , average , total ;
columns
columns co
columns
columns
int i ; co
columns
columns co
columns
columns
for ( i =0; i < NumSTD ;++ i ) co
columns
columns
{ co
columns printf ( " \ nEnter Marks of Student % d : " , i +1) ;
columns co
columns
columns scanf ( " % lf " , & marks [ i ]) ; co
}
columns
columns co
columns
columns co
for ( i =0 , total =0 ; i < NumSTD ;++ i )
columns
columns co
columns
columns
{ co
columns
columns total += marks [ i ]; co
}
columns
columns co
columns
columns co
columns
columns
average = total / 5.0; co
columns
columns co
printf ( " \ nAvarage = %.2 lf \ n " , average ) ;
columns
columns co
columns
columns co
return 0;
columns
columns co
columns
columns
} co
6.2 C-Strings
In C language, there is no special data type to store text strings.
Character arrays are used to store such text.
Each element of the array stores one character of the text.
End of the string is indicated by ’\0’
The program in Listing 6.3 asks user to enter his/her name. The entered name is stored in str which is
an array of type char. scanf stores the user entered string as a C-string in str. Therefore, it is possible to
identify the size of the string (number of characters in the name) by using a simple while loop.
Initialization of C-Strings
char letters1[] = {’H’, ’e’, ’l’, ’l’, ’o’, ’\0’};
char letters2[] = "Hello";
char mayName[] = "Tom and Jerry";
Exercise 6.1 User enters a paragraph that may consists of any of the keyboard characters. Find the number
of (Refer to program in Listing 6.4 for sample calculation of number of digits.)
characters.
digits.
letters.
white spaces (i.e. ’\n’, ’\t’, ’\r’, and spaces)
capital letters
simple letters
sentences.
words.
occurrences of the word ”the”
2
Listing 6.3: c Strings
columns
columns
# include < stdio .h > co
columns
columns co
int main ()
columns
columns co
columns
columns
{ co
char str [100];
columns
columns co
columns
columns
int i ; co
printf ( " What is your name ? : " ) ;
columns
columns co
columns
columns
scanf ( " % s " , & str [0]) ; co
columns
columns co
columns
columns co
columns
columns
i =0; co
while ( str [ i ]!= ’ \0 ’)
columns
columns co
columns
columns
{ co
columns ++ i ;
columns co
columns
columns
} co
columns
columns co
columns
columns
printf ( " Your name : \ n " ) ; co
columns
columns
printf ( " \ t % s \ n " , str ) ; co
printf ( " \ tNumber of characters = % d \ n " , i ) ;
columns
columns co
columns
columns
printf ( " \ tFirst letter = % c \ n " , str [0]) ; co
columns
columns
printf ( " \ tLast letter = % c \ n " , str [i -1]) ; co
columns
columns co
return 0;
columns
columns co
columns
columns
} co
Exercise 6.3 User enter two text strings, which may contain spaces. Compare if they are the same or not
regarding the case.
Exercise 6.4 User enter two text strings, which may contain spaces. Compare if they are the same or not
disregarding the case.
—-
3
Listing 6.4: c Strings
columns
columns co
columns
columns
# include < stdio .h > co
columns
columns
# include < stdlib .h > co
columns
columns co
int main ()
columns
columns co
columns
columns
{ co
char str [500];
columns
columns co
columns
columns
int i , nDigits ; co
columns
columns
printf ( " Enter a paragraph ( max 500 characters ) for analysis :\ n " ) ; co
printf ( " Enter Ctrl + c to end the paragraph .\ n " ) ;
columns
columns co
columns
columns co
scanf ( " %501 c " , str ) ;
columns
columns co
columns
columns co
i =0; nDigits =0;
columns
columns co
columns
columns
while ( str [ i ]!= ’ \0 ’) co
{
columns
columns co
columns
columns if ( str [ i ] >= ’0 ’ && str [ i ] < ’9 ’) ++ nDigits ; co
columns ++ i ;
columns co
columns
columns
} co
columns
columns co
printf ( " Number of digits = % d " , nDigits ) ;
columns
columns co
columns
columns co
return 0;
columns
columns co
columns
columns
} co