C Programming Lab Manual – 43

Write a C program for Strings and Pointers.

Function Main
    Declare String Array name[30]
    Output " *(name+4)"
    Output " *(name+16)"
    Declare String *namePtr
    Assign namePtr = name
    Output " *(namePtr+19)"
    Output " *(namePtr+7)"
End

#include <stdio.h>

int main(void) {
//!showArray(name)
  char name[30] = "Md. Anisur Rahman Likhon";

 
  printf("%c", *(name+4));   // Output: A
  printf("%c", *(name+16));   // Output: n

  char *namePtr;

  namePtr = name;
  printf("%c", *(namePtr+19));   // Output: i
  printf("%c", *(namePtr+7));   // Output: s
}

Anis  

C Programming Lab Manual – 42

Write a C program for the Series Calculation.

Function Main
    Declare Integer n, m, i, j
    Declare Real s, u
    Output "Enter a number of terms to calculate:"
    Input m
    Output "Enter First term index:"
    Input n
    Assign m = INT(( m + 9) / 10)
    Assign s = 0
    For i = 1 to 10
        For j = 1 to m
            Assign u = 1 / n / n
            Assign s = s + u
            Assign n = n + 1
        End
        Output s
    End
End

#include <stdio.h>

int main() {
    int n, m, i, j;
    double s, u;
    printf("Enter a number of terms to calculate:");
    scanf("%d", &m);
    printf("Enter First term index:");
    scanf("%d", &n);
    m = (int) ((double) (m + 9) / 10);
    s = 0;
    for (i = 1; i <= 10; i++) {
        for (j = 1; j <= m; j++) {
            u = (double) 1 / n / n;
            s = s + u;
            n = n + 1;
        }
        printf("%f\n", s);
    }
    return 0;
}

Enter a number of terms to calculate:5
Enter First term index:5
0.040000
0.067778
0.088186
0.103811
0.116157
0.126157
0.134421
0.141366
0.147283
0.152385

C Programming Lab Manual – 41

Write a C program to Calculate Exponent Power Series.

Function Main
    Declare Integer n, count
    Declare Real x, term, sum, accuracy
    Output "Enter value of x: "
    Input x
    Assign accuracy = 0.0001
    Assign n = 1
    Assign term = 1
    Assign sum = 1
    Assign count = 1
    While n <= 100
        Assign term = term * x / n
        Assign sum = sum + term
        Assign count = count + 1
        If term < accuracy
            Assign n = 999
        Else
            Assign n = n + 1
        End
    End
    Output "Terms: " & count & " and sum is " & sum
End

#include <stdio.h>

int main() {
    int n, count;
    double x, term, sum, accuracy;
    
    printf("Enter value of x:");
    scanf("%lf", &x);
    accuracy = 0.0001;
    n = 1;
    term = 1;
    sum = 1;
    count = 1;
    while (n <= 100) {
        term = term * x / n;
        sum = sum + term;
        count = count + 1;
        if (term < accuracy) {
            n = 999;
        } else {
            n = n + 1;
        }
    }
    printf("Terms:%d  and sum is %lf\n", count, sum);
    return 0;
}

Enter value of x:10
Terms:35  and sum is 22026.465781

C Programming Lab Manual – 40

Write a C program to Delete duplicate elements in an array.

Function Main
    Declare Integer ssize, i, j, k
    Output "Enter the total number of elements:"
    Input ssize
    Declare Integer Array arr[ssize]
    Output "Enter the elements of list:"
    For i = 0 to ssize - 1
        Output "Element n" & ToString(i + 1)
        Input arr[i]
    End
    Call OrderArrayInt(arr)
    Output "Array list after deleted duplicate elements:"
    For i = 0 to ssize - 1
        Assign j = i + 1
        While j < ssize
            If arr[j] = arr[i]
                For k = j to (ssize - 1) - 1
                    Assign arr[k] = arr[k + 1]
                End
                Assign ssize = ssize - 1
            Else
                Assign j = j + 1
            End
        End
    End
    For i = 0 to ssize - 1
        Output arr[i]
    End
End

Function OrderArrayInt (Integer Array a)
    Declare Integer n, j, i, tmp
    Assign n = size(a)
    For i = 0 to n - 1
        Assign j = 0
        For j = i + 1 to n - 1
            If a[j] < a[i]
                Assign tmp = a[j]
                Assign a[j] = a[i]
                Assign a[i] = tmp
            End
        End
    End
End

#include <stdio.h> 

void orderArrayInt(int[], int);

int main() {
    //!showArray(arr)
    int ssize, i, j, k;
    printf("Enter the total number of elements:\n");
    scanf("%d", &ssize);
    int arr[ssize];
    printf("Enter the elements of list:\n");
    for (i = 0; i <= ssize - 1; i++) {
        printf("Element n%d:", i + 1);
        scanf("%d", &arr[i]);
    }
    orderArrayInt(arr, ssize);
    printf("Array list after deleted duplicate elements:\n");
    for (i = 0; i <= ssize - 1; i++) {
        j = i + 1;
        while (j < ssize) {
            if (arr[j] == arr[i]) {
                for (k = j; k <= ssize - 1 - 1; k++) {
                    arr[k] = arr[k + 1];
                }
                ssize = ssize - 1;
            } else {
                j = j + 1;
            }
        }
    }
    for (i = 0; i <= ssize - 1; i++) {
        printf("%d\n", arr[i]);
    }
    return 0;
}

void orderArrayInt(int a[], int n) {
    int j, i, tmp;
    for (i = 0; i <= n - 1; i++) {
        j = 0;
        for (j = i + 1; j <= n - 1; j++) {
            if (a[j] < a[i]) {
                tmp = a[j];
                a[j] = a[i];
                a[i] = tmp;
            }
        }
    }
} 

Enter the total number of elements:
5
Enter the elements of list:
Element n1:1
Element n2:1
Element n3:2
Element n4:2
Element n5:3
Array list after deleted duplicate elements:
1
2
3

C Programming Lab Manual – 39

Write a C program for Reversing Array Elements using function.

Function Main
    Declare Integer ssize
    Declare Integer i
    Output "Enter the total number of elements:"
    Input ssize
    Declare Integer Array arr[ssize]
    Output "Enter the elements of list:"
    For i = 0 to ssize - 1
        Output " Element n.:" & ToString(i + 1)
        Input arr[i]
    End
    Call InverseArrInt(arr)
    Output "Result after reversal:"
    For i = 0 to ssize - 1
        Output arr[i]
    End
End

Function InverseArrInt (Integer Array v)
    Declare Integer i
    Declare Integer j
    Declare Integer temp
    Assign j = size(v) - 1
    Assign i = 0
    While i < j
        Assign temp = v[i]
        Assign v[i] = v[j]
        Assign v[j] = temp
        Assign i = i + 1
        Assign j = j - 1
    End
End

#include <stdio.h>

void inverseArrInt(int v[], int size);

int main() {
    //!showArray(arr)
    int ssize;
    int i;
    printf("Enter the total number of elements:\n");
    scanf("%d", &ssize);
    int arr[ssize];
    printf("Enter the elements of list:\n");
    for (i = 0; i <= ssize - 1; i++) {
        printf("Element n%d:", i + 1);
        scanf("%d", &arr[i]);
    }
    inverseArrInt(arr, ssize);
    printf("Result after reversal:\n");
    for (i = 0; i <= ssize - 1; i++) {
        printf("%d\n", arr[i]);
    }
    return 0;
}

void inverseArrInt(int v[], int size) {
    int i;
    int j;
    int temp;
    j = size - 1;
    i = 0;
    while (i < j) {
        temp = v[i];
        v[i] = v[j];
        v[j] = temp;
        i = i + 1;
        j = j - 1;
    }
}

Enter the total number of elements:
5
Enter the elements of list:
Element n1:1
Element n2:2
Element n3:3
Element n4:4
Element n5:5
Result after reversal:
5
4
3
2
1

C Programming Lab Manual – 38

Write a C program to Calculate the Square root of a number.

Function Main
    Declare Integer Num
    Declare Real X
    Output "Enter a number: "
    Input Num
    If Num > 1
        Assign X = Num
    Else
        Assign X = 1
    End
    While X * X > Num
        Assign X = (1 / 2) * ( X + ( Num / X ) )
    End
    Output "The square root of the number " & Num & " is: " & X
End

#include <stdio.h>

int main() {
    int Num;
    double X;
    printf("Enter a number: \n");
    scanf("%d", &Num);
    if (Num > 1) {
        X = Num;
    } else {
        X = 1;
    }
    while (X * X > Num) {
        X = (double) 1 / 2 * (X + Num / X);
    }
    printf("The square root of the number %d is: %f\n", Num, X);
    return 0;
}

Enter a number: 
10
The square root of the number 10 is: 3.162278

C Programming Lab Manual – 37

Write a C program to Display the first N prime numbers.

Function Main
    Declare Integer N, Num, Cont, Idx, Div
    Output "How many prime numbers do you want to find?:"
    Assign Cont = 0
    Assign Num = 2
    Input N
    While Cont < N
        Assign Idx = 1
        Assign Div = 0
        While Idx <= Num
            If Num MOD Idx = 0
                Assign Div = Div + 1
            End
            Assign Idx = Idx + 1
        End
        If Div = 2
            Output " " &Num
            Assign Cont = Cont + 1
        End
        Assign Num = Num + 1
    End
End

#include <stdio.h>

int main() {
    int N, Num, Cont, Idx, Div;
    printf("How many prime numbers do you want to find?:\n");
    Cont = 0;
    Num = 2;
    scanf("%d", &N);
    while (Cont < N) {
        Idx = 1;
        Div = 0;
        while (Idx <= Num) {
            if (Num % Idx == 0) {
                Div = Div + 1;
            }
            Idx = Idx + 1;
        }
        if (Div == 2) {
            printf(" %d", Num);
            Cont = Cont + 1;
        }
        Num = Num + 1;
    }
    return 0;
}

How many prime numbers do you want to find?:
10
 2 3 5 7 11 13 17 19 23 29

C Programming Lab Manual – 36

Write a C program to calculate a Quadratic equation.

Function Main
    Declare Integer A
    Declare Integer B
    Declare Integer C
    Declare Integer Delta
    Declare Real X1
    Declare Real X2
    Output "Enter coefficient of X^2:"
    Input A
    Output "Enter coefficient of X:"
    Input B
    Output "Enter known term:"
    Input C
    If A = 0
        Output "Equarion:"
        Assign X1 = -C / B
        Output "The solution is X = " & X1
    Else
        Assign Delta = B^2 - 4*A*C
        If Delta < 0
            Output "There are no real solutions"
        Else
            If Delta = 0
                Assign X1 = -B / (2*A)
                Output "Two real and coincident solutions"
                Output "X1 = " & X1
                Output "X2 = " & X1
            Else
                Assign X1 = -B - SQRT(Delta) / (2*A)
                Assign X2 = -B + SQRT(Delta) / (2*A)
                Output "Two real and distinct solutions"
                Output "X1 = " & X1
                Output "X2 = " & X2
            End
        End
    End
End

#include <stdio.h>
#include <math.h>

int main() {
    int A;
    int B;
    int C;
    int Delta;
    double X1;
    double X2;
    printf("Enter coefficient of X^2:\n");
    scanf("%d", &A);
    printf("Enter coefficient of X:\n");
    scanf("%d", &B);
    printf("Enter known term:\n");
    scanf("%d", &C);
    if (A== 0) {
        printf("Equation:\n");
        X1 = -C / (double)B;
        printf("The solution is X = %lf\n", X1);
    } else {
        Delta = (int)(pow(B, 2) - 4 * A * C);
        if (Delta < 0) {
            printf("There are no real solutions\n");
        } else {
            if (Delta == 0) {
                X1 = -B / (2 * (double)A);
                printf("Two real and coincident solutions\n");
                printf("X1 = %lf\n", X1);
                printf("X2 = %lf\n", X1);
            } else {
                X1 = (-B - sqrt(Delta)) / (2 * (double)A);
                X2 = (-B + sqrt(Delta)) / (2 * (double)A);
                printf("Two real and distinct solutions\n");
                printf("X1 = %lf\n", X1);
                printf("X2 = %lf\n", X2);
            }
        }
    }
    return 0;
}

Enter coefficient of X^2:
5
Enter coefficient of X:
10
Enter known term:
5
Two real and coincident solutions
X1 = -1.000000
X2 = -1.000000

C Programming Lab Manual – 35

Write a C program to convert a given number of days into years, weeks, and days.

Function Main
    Declare Integer y
    Declare Integer w
    Declare Integer d
    Declare Integer a
    Output "Enter total number of days:"
    Input d
    Assign y = d / 365
    Assign a = d MOD 365
    Assign w = a / 7
    Assign d = a MOD 7
    Output "Years:" & ToString(y) & ToChar(10) & ToChar(13) & "Weeks: " & ToString(w) & ToChar(10) & ToChar(13) & "Days: " & ToString(d)
End

#include <stdio.h>

int main() {
    int y;
    int w;
    int d;
    int a;
    printf("Enter total number of days:\n");
    scanf("%d", &d);
    y = (int) ((double) d / 365);
    a = d % 365;
    w = (int) ((double) a / 7);
    d = a % 7;
    printf("Years: %d\nWeeks: %d\nDays: %d\n", y, w, d);
    return 0;
}

Enter total number of days:
400
Years: 1                                                                        
Weeks: 5                                                                        
Days: 0   

C Programming Lab Manual – 34

Write a C program to find all divisors of a number.

Function Main
    Declare Integer n
    Declare Integer k
    Declare Integer r
    Output "Insert a number: "
    Input n
    Assign k = 1
    Output "All divisor of the number: "
    While k <= n
        Assign r = n mod k
        If r = 0
            Output k
        End
        Assign k = k + 1
    End
End

#include <stdio.h>

int main() {
    int n;
    int k;
    int r;
    printf("Insert a number: \n");
    scanf("%d", &n);
    k = 1;
    printf("All divisor of the number: \n");
    while (k <= n) {
        r = n % k;
        if (r == 0) {
            printf("%d\n", k);
        }
        k = k + 1;
    }
    return 0;
}

Insert a number:
15
All divisor of the number:
1
3
5
15