DMA Program in C

 1. Program to input n element in array and display it using DMA.


 #include<stdlib.h>
 #include <stdio.h>
#include<conio.h>
void  main()
{
    int *ptr,i,n;

       printf("Enter the size of array or number of elements\n");
       scanf("%d",&n);
       ptr=(int *)malloc(n*sizeof(int));

       printf("Enter data elements\n");
       for(i=0;i<n;i++)
       {
       scanf("%d",(ptr+i));
       }
       printf("The elements in array are\n");
       for(i=0;i<n;i++)
       {
       printf("%d\t",*(ptr+i));
       }
       free(ptr);

       getch();
       }
Output:











2. Program to input n element in an array and display maximum ,minimum and average element using DMA.
  #include<stdlib.h>
 #include <stdio.h>
#include<conio.h>
void  main()
{
    int *ptr,i,n,sum=0,min,max;
    float avg;

       printf("Enter the size of array or number of elements\n");
       scanf("%d",&n);
       ptr=(int *)malloc(n*sizeof(int));

       printf("Enter data elements\n");
       for(i=0;i<n;i++)
       {
       scanf("%d",(ptr+i));
       }
       printf("The elements in array are\n");
       for(i=0;i<n;i++)
       {
       printf("%d\t",*(ptr+i));
       }

        max=*ptr;
       min=*ptr;

       for(i=0;i<n;i++)
       {
       if(*(ptr+i)>max)
       {
       max=*(ptr+i);
       }
       else(*(ptr+i)<min);
       {
       min=*(ptr+i);
       }
       sum+=*(ptr+i);;
       avg=sum/n;
       }

       printf("max and min is %d %d\n",max,min);
       printf("avg is %f",avg);
       free(ptr);

       getch();
       }
Output:












3. Program to input n element in an array and find sum of all element of array.

 #include<stdlib.h>
 #include <stdio.h>
#include<conio.h>
void  main()
{
    int *ptr,i,n,sum=0;
     printf("Enter the size of array or number of elements\n");
      scanf("%d",&n);
       ptr=(int *)malloc(n*sizeof(int));
       printf("Enter data elements\n");
       for(i=0;i<n;i++)
 {
       scanf("%d",(ptr+i));
       }
       printf("The elements in array are\n");
       for(i=0;i<n;i++)
       {
       printf("%d\t",*(ptr+i));
       }
         for(i=0;i<n;i++)
         {
         sum+=*(ptr+i);
         }
         printf("Sum of all element of array is %d",sum);
       free(ptr);
       getch();
       }
Output:










4. Program to sort an array in ascending order by bubble sort using DMA or dynamically.

  #include<stdlib.h>
#include<stdio.h>
#include<conio.h>
int main()
{
int *ptr,i,j,n,temp;
printf("Enter the size of array\n");
scanf("%d",&n);
ptr=(int*)malloc( n*sizeof(int));
printf("Enter data elements\n");
for(i=0;i<n;i++)
{
scanf("%d",(ptr+i));
}
printf("The array elements are\n");
for(i=0;i<n;i++)
{
 printf("%d\t",*(ptr+i));
 }
 for(i=0;i<=n-2;i++)
 {
 for(j=0;j<=n-2-i;j++)
 {
 if(*(ptr+j)>*((ptr+j)+1))
 {
 temp= *(ptr+j);
 *(ptr+j)=*((ptr+j)+1);
  *((ptr+j)+1)= temp;
  }
  }
  }
  printf("The sorted away is\n");
  for(i=0;i<n;i++)
  {
  printf("%d\t",*(ptr+i));
  }
  free(ptr);
  getch();
     }
Output:














5. Program to input n element in array and display it using function dynamically or DMA.

  #include<stdlib.h>

 #include<stdio.h>
#include<conio.h>
void input(int *ptr,int n);
void display(int *ptr,int n);
int i;
void main()
{
  int *ptr,n;

       printf("Enter the size of array or number of elements\n");
       scanf("%d",&n);
       ptr=(int*)malloc(n*sizeof(int));
       printf("Enter data elements\n");
       input(ptr,n);
       printf("The elements in array are\n");
       display(ptr,n);
       free(ptr);
       getch();
       }

       void input(int *ptr,int n)
       {
       for(i=0;i<n;i++)
       {
       scanf("%d",(ptr+i));
       }
       }
       void display(int *ptr,int n)
       {
          for(i=0;i<n;i++)

          {
          printf("%d\t",*(ptr+i));
          }
          }
Output:













6. Program to sort an program in ascending order using function dynamically or DMA.


   #include<stdlib.h>

 #include<stdio.h>
#include<conio.h>
void input(int *ptr,int n);
void display(int *ptr,int n);
void sort (int *ptr,int n);
int i,j,temp;
int main()
{
  int *ptr,n;

       printf("Enter the size of array or number of elements\n");
       scanf("%d",&n);
       ptr=(int*)malloc(n*sizeof(int));

       printf("Enter data elements\n");
       input(ptr,n);
       printf("The elements in array are\n");
       display(ptr,n);
       sort(ptr,n);
       getch();
       }
       void input(int *ptr,int n)
       {
       for(i=0;i<n;i++)
       {
       scanf("%d",(ptr+i));
       }
       }
       void display(int *ptr,int n)
       {
          for(i=0;i<n;i++)
       {
          printf("%d\t",*(ptr+i));
          }
          }
          void sort(int *ptr,int n)
          {
          for(i=0;i<=n-2;i++)
          {
          for(j=0;j<=n-2-i;j++)
          {
          if(*(ptr+j)>*((ptr+j)+1))
       {
       temp=*(ptr+j);
       *(ptr+j)= *((ptr+j)+1);
         *((ptr+j)+1)=temp;

          }
          }
          }
printf("The sorted away is\n");
display(ptr,n);
}

Output:















7.  Progran to input 5 element in an array and display it . Then input 10 element and display them using DMA.(Realloc function)


  #include<stdlib.h>
#include<stdio.h>
#include<conio.h>
#include<stdio.h>
int main()
{
int *ptr,i;
printf("Enter 5 elements\n");
ptr=(int*)malloc( 5*sizeof(int));

for(i=0;i<5;i++)
{
scanf("%d",(ptr+i));
}
printf("The array elements are\n");
for(i=0;i<5;i++)
{
 printf("%d\t",*(ptr+i));
 }
ptr=(int*)realloc(ptr,10*sizeof(int));
printf("Enter 10 elements\n");
for(i=0;i<10;i++)
{
scanf("%d",(ptr+i));
}
printf("The data elements are\n");
for(i=0;i<10;i++)
{
printf("%d\t",*(ptr+i));
}
free(ptr);
getch();
}
Output:



















8. Program to input n element and check if a given number is present or not using function dynamically or DMA.

   #include<stdlib.h>
 #include<stdio.h>
#include<conio.h>

void input(int *ptr,int n);
void display(int *ptr,int n);
void present (int *ptr,int n);
int i,j;
int main()
{
  int *ptr,n,x[10];
  ptr=&x[0];
       printf("Enter the size of array or number of elements\n");
       scanf("%d",&n);
       ptr=(int*)malloc(n*sizeof(int));

       printf("Enter data elements\n");
       input(ptr,n);
       printf("The elements in array are\n");
       display(ptr,n);
       present(ptr,n);
       free(ptr);
       getch();
       }
       void input(int *ptr,int n)
       {
       for(i=0;i<n;i++)
       {
       scanf("%d",(ptr+i));
       }
       }
       void display(int *ptr,int n)
       {
          for(i=0;i<n;i++)
       {
          printf("%d\t",*(ptr+i));
          }
          }

          void present(int *ptr,int n)
          {
          int flag=0;
          for(i=0;i<n;i++)
          {
         if(n==*(ptr+i))
       {
       flag=1;
       break;
       }
       }
       if(flag==1)
       {
       printf("Number is present\n");
       }
       else
       {
       printf("Number isnot present\n");
         }
         }
Output:














9. Program to input m*n matrix element and display it dynamically,

   #include<stdlib.h>
#include<conio.h>
#include<stdio.h>
void main()
{
int *ptr,row,col,n,i,j;
printf("Enter the row and column size\n");

scanf("%d %d",&row,&col);

ptr=(int*)malloc(row*col*sizeof(int));

printf("Enter the data elements\n");

for(i=0;i<row;i++)
{
for(j=0;j<col;j++)
{
scanf("%d",((ptr+col*i)+j));
}
}
printf("The elements in matrix form is\n");
   for(i=0;i<row;i++)
{
for(j=0;j<col;j++)
{
printf("%d\t",*((ptr+col*i)+j));
}
printf("\n");
}
free(ptr);
getch();
}

Output:















10. Program to input m*n matrix form and display lower triangular matrix using function dynamically.

  #include<stdlib.h>
#include<conio.h>
#include<stdio.h>
  void input(int *ptr,int m,int n);
  void display(int *ptr,int m,int n);
  void lower(int *ptr,int m,int n);
  int i,j,m,n;
void main()
{
int a[100][100],*ptr;

printf("Enter the size of rows and columns\n");

scanf("%d %d",&m,&n);

ptr=(int*)malloc(m*n*sizeof(int));


printf("Enter the elements for matrix\n");

input(ptr,m,n);

printf("The elements of matrix in matrix form is\n");
              display(ptr,m,n);
              lower(ptr,m,n);
              free(ptr);
              getch();
              }

    void input(int *ptr,int m,int n
  {
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",((ptr+n*i)+j));
}
}
}
     void display(int *ptr,int m,int n)
  {
for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
printf("%d\t",*((ptr+i)+j));
}
printf("\n");
}
}
    void lower(int *ptr,int m,int n)
    {

if(m==n)
printf("The lower triangular matrix is \n");

for(i=0;i<m;i++)
{
for(j=0;j<n;j++)
{
if(i<j)
{
printf("0\t");
}
else
  {
  printf("%d\t",*((ptr+n*i)+j));
  }
  }
  printf("\n");
  }
}
Output:
.





Comments