Presentation is loading. Please wait.

Presentation is loading. Please wait.

Arrays Declarations CSCI N305

Similar presentations


Presentation on theme: "Arrays Declarations CSCI N305"— Presentation transcript:

1 Arrays Declarations CSCI N305
Department of Computer and Information Science, School of Science, IUPUI CSCI N305 Arrays Declarations

2 Arrays Array To refer to an element, specify Format:
Group of consecutive memory locations Same name and type, ex: an array of integers To refer to an element, specify Array name Position number of particular element in the array Format: array_name[ position number ] First element at position 0 n element array named c: c[ 0 ], c[ 1 ]...c[ n – 1 ] Example: int my_array[12] my_array[0]= -45  value stored Position number must be an integer number or an integer expression Example: my_array[1.5]  ERROR!! my_array[i+j]  valid if i and j are integers Name of array (Note that all elements of this array have the same name, my_array) Position number of the element within array my_array -45 6 72 1543 -89 62 -3 1 6453 78 my_array[0] my_array[1] my_array[2] my_array[3] my_array[4] my_array[5] my_array[6] my_array[7] my_array[8] my_array[9] my_array[10] my_array[11]

3 Arrays (cont.) Array elements are like normal variables
my_array[8] = -3; scanf("%d", &my_array[8]); printf("%d",my_array[8]); Perform operations in subscript. If x equals 3: my_array[ ] == my_array[ 3 ] == my_array[ x ] Declaring Arrays When declaring arrays, specify Name Type of array Number of elements: arrayType arrayName[numberOfElements]; Examples: int c[ 100 ]; /* reserve memory sufficient enough to store 100 elements of type integer */ float myArray[ 3284 ];

4 Arrays (cont.) Declaring multiple arrays of same type: format similar to regular variables Example: int b[ 100 ], x[ 27 ]; Arrays may be declared to contain other data types Example: int a[ 100 ]; float b[ 100 ]; char c[ 100 ]; /* Strings are stored by using character arrays */ Example: #include <stdio.h> /* a simple program that uses arrays */ main( { int i, array_int[100]; for (i=0; i<100; i++) array_int[i]=0; printf(“element %d: %d\n”, i, array_int[i]); }

5 Arrays (cont.) Initializers
int n[5] = {1, 2, 3, 4, 5}; Example: main() { int i, a[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; for (i=0; i<10; i++) printf(“Element: %d\n”, a[i]); } If there are fewer initializations than elements in the array, then the remaining elements are automatically initialized to 0. int n[5] = {0} /* All elements 0 */ int a[10] = {1, 2} /* a[2] to a[9] are initialized to zeros */ int b[5] = {1, 2, 3, 4, 5, 6} /* syntax error */ C arrays have no bounds checking If size omitted, initializers determine it int n[ ] = { 1, 2, 3, 4, 5 }; /* 5 initializers, therefore 5 element array */ Scalable Arrays: a better programming style #define SIZE 10 int c[SIZE]; /* defines a symbolic constant size with value 10 */

6 Arrays (cont.) Example: #include <stdio.h> #define SIZE 100
main() { int i, a[SIZE]; int sum = 0; for (i=0; i < SIZE; i++) sum = sum + a[i]; printf(“sum: %d\n, sum); }

7 1. Initialize array 2. Loop 3. Print
1 /* Fig. 6.8: fig06_08.c 2 Histogram printing program */ 3 #include <stdio.h> 4 #define SIZE 10 5 6 int main() 7 { 8 int n[ SIZE ] = { 19, 3, 15, 7, 11, 9, 13, 5, 17, 1 }; 9 int i, j; 10 11 printf( "%s%13s%17s\n", "Element", "Value", "Histogram" ); 12 13 for ( i = 0; i <= SIZE - 1; i++ ) { printf( "%7d%13d ", i, n[ i ]) ; 15 for ( j = 1; j <= n[ i ]; j++ ) /* print one bar */ printf( "%c", '*' ); 18 printf( "\n" ); 20 } 21 22 return 0; 23 } 1. Initialize array 2. Loop 3. Print Program output Element Value Histogram ******************* *** *************** ******* *********** ********* ************* ***** ***************** *


Download ppt "Arrays Declarations CSCI N305"

Similar presentations


Ads by Google