uz
Feedback
C Programming Language || Hands On Coding

C Programming Language || Hands On Coding

Kanalga Telegram’da o‘tish

Hands-on C programming language challenges for beginners. Learn building logic by solving programs. Owner: @Pradeep_saii

Ko'proq ko'rsatish

📈 Telegram kanali C Programming Language || Hands On Coding analitikasi

C Programming Language || Hands On Coding (@c_programming_language_coding) Ingliz til segmentidagi kanali faol ishtirokchi. Hozirda hamjamiyat 12 818 obunachidan iborat bo'lib, Texnologiyalar & Aralashmalar toifasida 9 567-o'rinni va Hindiston mintaqasida 30 989-o'rinni egallagan.

📊 Auditoriya ko‘rsatkichlari va dinamika

невідомо sanasidan buyon loyiha tez o‘sib, 12 818 obunachiga ega bo‘ldi.

28 Avgust, 2026 dagi oxirgi ma’lumotlarga ko‘ra kanal barqaror faollikka ega. Oxirgi 30 kunda obunachilar soni -213 ga, so‘nggi 24 soatda esa -1 ga o‘zgardi va umumiy qamrov yuqori darajada qolmoqda.

  • Tasdiqlash holati: Tasdiqlanmagan
  • Jalb etish (ER): Auditoriya o‘rtacha 6.87% darajada jalb etiladi. Nashrdan keyingi dastlabki 24 soatda kontent odatda umumiy obunachilar sonining 2.42% ini tashkil etuvchi reaksiyalarni to‘playdi.
  • Post qamrovi: Har bir post o‘rtacha 881 marta ko‘riladi; birinchi sutkada odatda 310 ta ko‘rish yig‘iladi.
  • Reaksiyalar va o‘zaro ta’sir: Auditoriya faol: har bir postga o‘rtacha 2 ta reaksiya keladi.
  • Tematik yo‘nalishlar: Kontent input, string, scanf("%d, array, element kabi asosiy mavzularga jamlangan.

📝 Tavsif va kontent siyosati

Muallif resursni shaxsiy fikrni ifoda etish maydoni sifatida ta’riflaydi:
Hands-on C programming language challenges for beginners. Learn building logic by solving programs. Owner: @Pradeep_saii

Yuqori yangilanish chastotasi (oxirgi ma’lumot 29 Avgust, 2026 da olingan) sababli kanal doimo dolzarb va katta qamrovli bo‘lib qoladi. Analitika auditoriya kontent bilan faol hamkorlik qilishini, uni Texnologiyalar & Aralashmalar toifasidagi muhim ta’sir nuqtasiga aylantirishini ko‘rsatadi.

12 818
Obunachilar
-124 soatlar
-297 kunlar
-21330 kunlar
Postlar arxiv
Transpose of a Matrix
#include <stdio.h>

int main() {
    int matrix[10][10], transpose[10][10];
    int row, col;
    scanf("%d %d", &row, &col);
    for (int i = 0; i < row; i++) {
        for (int j = 0; j < col; j++) {
            scanf("%d", &matrix[i][j]);
        }
    }
    for (int i = 0; i < row; i++) {
        for (int j = 0; j < col; j++) {
            transpose[j][i] = matrix[i][j];
        }
    }
    for (int i = 0; i < col; i++) {
        for (int j = 0; j < row; j++) {
            printf("%d ", transpose[i][j]);
        }
        printf("\n");
    }
    return 0;
}

Matrix Multiplication
#include <stdio.h>

int main() {
    int a[3][3] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
    int b[3][3] = {{9, 8, 7}, {6, 5, 4}, {3, 2, 1}};
    int result[3][3] = {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}};

    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            for (int k = 0; k < 3; k++) {
                result[i][j] += a[i][k] * b[k][j];
            }
        }
    }

    for (int i = 0; i < 3; i++) {
        for (int j = 0; j < 3; j++) {
            printf("%d ", result[i][j]);
        }
        printf("\n");
    }

    return 0;
}

Matrix Subtraction
#include <stdio.h>

int main() {
    int rows, cols;
    printf("Enter rows and columns: ");
    scanf("%d %d", &rows, &cols);

    int matrix1[rows][cols], matrix2[rows][cols], result[rows][cols];

    printf("Enter elements of matrix 1:\n");
    for (int i = 0; i < rows; i++)
        for (int j = 0; j < cols; j++)
            scanf("%d", &matrix1[i][j]);

    printf("Enter elements of matrix 2:\n");
    for (int i = 0; i < rows; i++)
        for (int j = 0; j < cols; j++)
            scanf("%d", &matrix2[i][j]);

    for (int i = 0; i < rows; i++)
        for (int j = 0; j < cols; j++)
            result[i][j] = matrix1[i][j] - matrix2[i][j];

    printf("Resultant matrix:\n");
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++)
            printf("%d ", result[i][j]);
        printf("\n");
    }

    return 0;
}

Matrix Addition
#include <stdio.h>

int main() {
    int rows, cols;
    printf("Enter rows and columns: ");
    scanf("%d %d", &rows, &cols);

    int matrix1[rows][cols], matrix2[rows][cols], sum[rows][cols];

    printf("Enter elements of first matrix:\n");
    for (int i = 0; i < rows; i++)
        for (int j = 0; j < cols; j++)
            scanf("%d", &matrix1[i][j]);

    printf("Enter elements of second matrix:\n");
    for (int i = 0; i < rows; i++)
        for (int j = 0; j < cols; j++)
            scanf("%d", &matrix2[i][j]);

    for (int i = 0; i < rows; i++)
        for (int j = 0; j < cols; j++)
            sum[i][j] = matrix1[i][j] + matrix2[i][j];

    printf("Sum of matrices:\n");
    for (int i = 0; i < rows; i++) {
        for (int j = 0; j < cols; j++)
            printf("%d ", sum[i][j]);
        printf("\n");
    }

    return 0;
}

Input and Print Matrix Elements
#include <stdio.h>

int main() {
  int rows, cols, i, j;
  printf("Enter rows and columns: ");
  scanf("%d %d", &rows, &cols);
  int matrix[rows][cols];

  printf("Enter matrix elements:\n");
  for (i = 0; i < rows; i++) {
    for (j = 0; j < cols; j++) {
      scanf("%d", &matrix[i][j]);
    }
  }

  printf("Matrix elements are:\n");
  for (i = 0; i < rows; i++) {
    for (j = 0; j < cols; j++) {
      printf("%d ", matrix[i][j]);
    }
    printf("\n");
  }
  return 0;
}

Longest Increasing Subarray
#include <stdio.h>

int main() {
    int arr[] = {1, 3, 2, 4, 5, 6, 3, 8, 9};
    int n = sizeof(arr) / sizeof(arr[0]);
    int maxLength = 1;
    int currentLength = 1;
    int start = 0;
    int bestStart = 0;

    for (int i = 1; i < n; i++) {
        if (arr[i] > arr[i - 1]) {
            currentLength++;
        } else {
            if (currentLength > maxLength) {
                maxLength = currentLength;
                bestStart = start;
            }
            currentLength = 1;
            start = i;
        }
    }

    if (currentLength > maxLength) {
        maxLength = currentLength;
        bestStart = start;
    }

    printf("Longest increasing subarray: ");
    for (int i = bestStart; i < bestStart + maxLength; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");

    return 0;
}

Maximum Product of Two Elements in Array
#include <stdio.h>

int main() {
    int arr[] = {1, 5, 4, 6, 0};
    int n = sizeof(arr) / sizeof(arr[0]);
    int max1 = arr[0];
    int max2 = arr[1];

    if (max2 > max1) {
        int temp = max1;
        max1 = max2;
        max2 = temp;
    }

    for (int i = 2; i < n; i++) {
        if (arr[i] > max1) {
            max2 = max1;
            max1 = arr[i];
        } else if (arr[i] > max2) {
            max2 = arr[i];
        }
    }

    printf("Maximum product: %d\n", max1 * max2);
    return 0;
}

Find Missing Number in Range 1 to N using Arrays
#include <stdio.h>

int main() {
    int arr[] = {1, 2, 4, 6, 3, 7, 8};
    int n = sizeof(arr) / sizeof(arr[0]);
    int N = 8;
    int present[N + 1];

    for (int i = 0; i <= N; i++) {
        present[i] = 0;
    }

    for (int i = 0; i < n; i++) {
        present[arr[i]] = 1;
    }

    for (int i = 1; i <= N; i++) {
        if (present[i] == 0) {
            printf("Missing number: %d\n", i);
            break;
        }
    }

    return 0;
}

Find Leader Elements in an Array
#include <stdio.h>

int main() {
  int arr[] = {16, 17, 4, 3, 5, 2};
  int n = sizeof(arr) / sizeof(arr[0]);
  int max_from_right = arr[n - 1];

  printf("%d ", max_from_right);

  for (int i = n - 2; i >= 0; i--) {
    if (arr[i] > max_from_right) {
      max_from_right = arr[i];
      printf("%d ", max_from_right);
    }
  }
  printf("\n");
  return 0;
}

Equilibrium Index in an Array
#include <stdio.h>

int main() {
    int arr[] = {-7, 1, 5, 2, -4, 3, 0};
    int n = sizeof(arr) / sizeof(arr[0]);
    int leftSum, rightSum, i, j;

    for (i = 0; i < n; i++) {
        leftSum = 0;
        for (j = 0; j < i; j++) {
            leftSum += arr[j];
        }

        rightSum = 0;
        for (j = i + 1; j < n; j++) {
            rightSum += arr[j];
        }

        if (leftSum == rightSum) {
            printf("Equilibrium index: %d\n", i);
            return 0;
        }
    }

    printf("No equilibrium index found.\n");
    return 0;
}

Array Element Equality Check (Any Order)
#include <stdio.h>
#include <stdbool.h>

#define MAX_SIZE 100

bool areArraysEqual(int arr1[], int arr2[], int size1, int size2) {
    if (size1 != size2) {
        return false;
    }

    int count[MAX_SIZE] = {0};

    for (int i = 0; i < size1; i++) {
        count[arr1[i]]++;
    }

    for (int i = 0; i < size2; i++) {
        count[arr2[i]]--;
    }

    for (int i = 0; i < MAX_SIZE; i++) {
        if (count[i] != 0) {
            return false;
        }
    }

    return true;
}

int main() {
    int arr1[] = {1, 2, 3, 4, 5};
    int arr2[] = {5, 4, 3, 2, 1};
    int size1 = sizeof(arr1) / sizeof(arr1[0]);
    int size2 = sizeof(arr2) / sizeof(arr2[0]);

    if (areArraysEqual(arr1, arr2, size1, size2)) {
        printf("Arrays are equal.\n");
    } else {
        printf("Arrays are not equal.\n");
    }

    return 0;
}

Check if Two Arrays are Equal
#include <stdio.h>
#include <stdbool.h>

bool areArraysEqual(int arr1[], int arr2[], int size) {
    for (int i = 0; i < size; i++) {
        if (arr1[i] != arr2[i]) {
            return false;
        }
    }
    return true;
}

int main() {
    int arr1[] = {1, 2, 3, 4, 5};
    int arr2[] = {1, 2, 3, 4, 5};
    int size = sizeof(arr1) / sizeof(arr1[0]);

    if (areArraysEqual(arr1, arr2, size)) {
        printf("Arrays are equal.\n");
    } else {
        printf("Arrays are not equal.\n");
    }

    return 0;
}

Check if Array is Sorted and Rotated
#include <stdio.h>
#include <stdbool.h>

bool isSortedAndRotated(int arr[], int n) {
    int i, minIndex = 0;
    for (i = 1; i < n; i++)
        if (arr[i] < arr[minIndex])
            minIndex = i;

    for (i = 1; i < n; i++)
        if (arr[(minIndex + i) % n] < arr[(minIndex + i - 1) % n])
            return false;

    return true;
}

int main() {
    int arr[] = {3, 4, 5, 1, 2};
    int n = sizeof(arr) / sizeof(arr[0]);

    if (isSortedAndRotated(arr, n))
        printf("Array is sorted and rotated\n");
    else
        printf("Array is not sorted and rotated\n");

    return 0;
}

Shift Negative Elements in Array
#include <stdio.h>

void shiftNegative(int arr[], int n) {
 int j = 0;
 for (int i = 0; i < n; i++) {
 if (arr[i] < 0) {
 if (i != j) {
 int temp = arr[i];
 arr[i] = arr[j];
 arr[j] = temp;
 }
 j++;
 }
 }
}

int main() {
 int arr[] = {1, -2, 3, -4, 5, -6};
 int n = sizeof(arr) / sizeof(arr[0]);

 shiftNegative(arr, n);

 for (int i = 0; i < n; i++) {
 printf("%d ", arr[i]);
 }
 printf("\n");

 return 0;
}

Move Zeros to the End of an Array
#include <stdio.h>

void moveZerosToEnd(int arr[], int n) {
    int count = 0;
    for (int i = 0; i < n; i++) {
        if (arr[i] != 0) {
            arr[count++] = arr[i];
        }
    }
    while (count < n) {
        arr[count++] = 0;
    }
}

int main() {
    int arr[] = {0, 1, 0, 3, 12};
    int n = sizeof(arr) / sizeof(arr[0]);
    moveZerosToEnd(arr, n);
    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");
    return 0;
}

Left Rotate Array by K Positions
#include <stdio.h>

void leftRotate(int arr[], int n, int k) {
 int temp[k];
 for (int i = 0; i < k; i++) {
 temp[i] = arr[i];
 }
 for (int i = k; i < n; i++) {
 arr[i - k] = arr[i];
 }
 for (int i = 0; i < k; i++) {
 arr[n - k + i] = temp[i];
 }
}

int main() {
 int arr[] = {1, 2, 3, 4, 5, 6, 7};
 int n = sizeof(arr) / sizeof(arr[0]);
 int k = 2;
 leftRotate(arr, n, k);
 for (int i = 0; i < n; i++) {
 printf("%d ", arr[i]);
 }
 printf("\n");
 return 0;
}

Right Rotate Array by 1 Position
#include <stdio.h>

int main() {
    int arr[] = {1, 2, 3, 4, 5};
    int n = sizeof(arr) / sizeof(arr[0]);
    int temp = arr[n - 1];

    for (int i = n - 1; i > 0; i--) {
        arr[i] = arr[i - 1];
    }

    arr[0] = temp;

    for (int i = 0; i < n; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");

    return 0;
}

Left Rotate Array by 1 Position
#include <stdio.h>

void leftRotate(int arr[], int n) {
 int temp = arr[0];
 for (int i = 0; i < n - 1; i++) {
 arr[i] = arr[i+1];
 }
 arr[n-1] = temp;
}

int main() {
 int arr[] = {1, 2, 3, 4, 5};
 int n = sizeof(arr) / sizeof(arr[0]);

 leftRotate(arr, n);

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

c_arrays.pdf8.36 KB