|
|
We have not discussed:
|
This webpage will discuss these topics on array to "fill in the gap".
extern dataType varName ; |
You can basically use this method to declare an array variable
|
Example:
#include <stdio.h> extern int A[10]; // Declare array extern float B[4][7]; // Declare array int main(int argc, char *argv[] ) { int i, j; for (i = 0; i < 10; i++) A[i] = i; for (i = 0; i < 10; i++) printf("%d ", A[i]); printf("\n\n"); for (i = 0; i < 4; i++) for (j = 0; j < 7; j++) B[i][j] = i+j; for (i = 0; i < 4; i++) { for (j = 0; j < 7; j++) printf("%f ", B[i][j]); printf("\n"); } printf("\n\n"); } int A[10]; // Define array float B[4][7]; // Define array |
How to run the program:
|
|
In other words, you can declare array variables as follows:
#include <stdio.h> extern int A[ ]; // Declare array extern float B[ ][7]; // Declare array int main(int argc, char *argv[] ) { int i, j; for (i = 0; i < 10; i++) A[i] = i; for (i = 0; i < 10; i++) printf("%d ", A[i]); printf("\n\n"); for (i = 0; i < 4; i++) for (j = 0; j < 7; j++) B[i][j] = i+j; for (i = 0; i < 4; i++) { for (j = 0; j < 7; j++) printf("%f ", B[i][j]); printf("\n"); } printf("\n\n"); } int A[10]; // Define array float B[4][7]; // Define array |
The reason for this is:
|
#include <stdio.h> void printArray1( int X[10] ) { for (int i = 0; i < 10; i++) printf("%d ", X[i]); printf("\n\n"); } void printArray2( float X[4][7] ) { for (int i = 0; i < 4; i++) { for (int j = 0; j < 7; j++) printf("%f ", X[i][j]); printf("\n"); } printf("\n\n"); } int main(int argc, char *argv[] ) { int A[10]; // Define array float B[4][7]; // Define array int i, j; for (i = 0; i < 10; i++) A[i] = i; printArray1(A); // Pass array parameter for (i = 0; i < 4; i++) for (j = 0; j < 7; j++) B[i][j] = i+j; printArray2(B); // Pass array parameter } |
(This is how I usually specify array parameters -- because they "look normal")
How to run the program:
|
|
In other words, you can specify array parameters as follows:
#include <stdio.h> void printArray1( int X[ ] ) { for (int i = 0; i < 10; i++) printf("%d ", X[i]); printf("\n\n"); } void printArray2( float X[ ][7] ) { for (int i = 0; i < 4; i++) { for (int j = 0; j < 7; j++) printf("%f ", X[i][j]); printf("\n"); } printf("\n\n"); } int main(int argc, char *argv[] ) { int A[10]; // Define array float B[4][7]; // Define array int i, j; for (i = 0; i < 10; i++) A[i] = i; printArray1(A); // Pass array parameter for (i = 0; i < 4; i++) for (j = 0; j < 7; j++) B[i][j] = i+j; printArray2(B); // Pass array parameter } |