C Programming Arrays Practice Guide

Array Experiments in C Programming

Experiment Objectives

  • Understnad one-dimensional and multi-dimensional array declaration and element referencing
  • Learn array initialization methods
  • Implement fundamental array algorithms
  • Master string processing functions in C standard libray

One-Dimensional Array Applications

Random Number Sorting (Ascending Order)

Generate 10 random integers and sort them in ascending order.

void ascendingSort(int arr[], int size) { int i, j, temp; for(i = 0; i < size - 1; i++) { for(j = size - 1; j > i; j--) { if(arr[j] < arr[j-1]) { temp = arr[j]; arr[j] = arr[j-1]; arr[j-1] = temp; } } } }

int main() { int i, numbers[10]; srand(time(NULL));

printf("Generating 10 random integers:\n");
for(i = 0; i < 10; i++) {
    numbers[i] = rand() % 100;
    printf("%d ", numbers[i]);
}
printf("\n");

ascendingSort(numbers, 10);

printf("Sorted result:\n");
for(i = 0; i < 10; i++) {
    printf("%d ", numbers[i]);
}
return 0;

}


</div>#### Random Number Sorting (Descending Order)

Sort 10 randomly generated integers in descending order.

<div>```
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void descendingSort(int arr[], int size) {
    int i, j, temp;
    for(i = 0; i < size - 1; i++) {
        for(j = i + 1; j < size; j++) {
            if(arr[j] > arr[i]) {
                temp = arr[i];
                arr[i] = arr[j];
                arr[j] = temp;
            }
        }
    }
}

int main() {
    int i, numbers[10];
    srand(time(NULL));
    
    printf("Generating 10 random integers:\n");
    for(i = 0; i < 10; i++) {
        numbers[i] = rand() % 100;
        printf("%d ", numbers[i]);
    }
    printf("\n");
    
    descendingSort(numbers, 10);
    
    printf("Sorted result:\n");
    for(i = 0; i < 10; i++) {
        printf("%d ", numbers[i]);
    }
    return 0;
}

Pascal's Triangle Generation

Generate Pascal's triangle based on user-input row count.

int main() { int triangle[50][50], i, j, rows; printf("Enter number of rows for Pascal's triangle: "); scanf("%d", &rows);

for(i = 0; i < rows; i++) {
    triangle[i][0] = 1;
    triangle[i][i] = 1;
}

for(i = 2; i < rows; i++) {
    for(j = 1; j < i; j++) {
        triangle[i][j] = triangle[i-1][j-1] + triangle[i-1][j];
    }
}

for(i = 0; i < rows; i++) {
    for(j = 0; j <= i; j++) {
        printf("%d ", triangle[i][j]);
    }
    printf("\n");
}
return 0;

}


</div>#### Day of Year Calculator

Calculate the day number of the year given a specific date.

<div>```
#include <stdio.h>

int monthDays[2][13] = {
    {0,31,28,31,30,31,30,31,31,30,31,30,31},
    {0,31,29,31,30,31,30,31,31,30,31,30,31}
};

int calculateDayOfYear(int year, int month, int day) {
    int i, j, totalDays = 0;
    
    if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
        i = 1;
    else
        i = 0;
    
    for(j = 1; j < month; j++) {
        totalDays += monthDays[i][j];
    }
    
    return totalDays + day;
}

int main() {
    int year, month, day;
    printf("Enter year, month, day: ");
    scanf("%d%d%d", &year, &month, &day);
    
    int dayNumber = calculateDayOfYear(year, month, day);
    printf("This is day %d of the year\n", dayNumber);
    
    return 0;
}

Palindrome Detection

Check if an input string is a palindrome.

int main() { char inputString[MAX_LENGTH]; char isPalindrome = 'Y'; int i, length;

printf("Enter a string: ");
scanf("%s", inputString);

length = strlen(inputString);
printf("String length: %d\n", length);

for(i = 0; i < length / 2; i++) {
    if(inputString[i] != inputString[length - 1 - i]) {
        isPalindrome = 'N';
        break;
    }
}

if(isPalindrome == 'Y')
    printf("%s is a palindrome\n", inputString);
else
    printf("%s is not a palindrome\n", inputString);

return 0;

}


</div>

Tags: Arrays c programming sorting algorithms Pascal Triangle palindrome detection

Posted on Mon, 07 Sep 2026 16:22:02 +0000 by mudkicker