Monday, 13 July 2015

C language basics 4- search programmes

1.//linear search

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

int main()
{
   int array[100], search, c, n;

   printf("Enter the number of elements in array\n");
   scanf("%d",&n);

   printf("Enter %d integer(s)\n", n);

   for (c = 0; c < n; c++)
      scanf("%d", &array[c]);

   printf("Enter the number to search\n");
   scanf("%d", &search);

   for (c = 0; c < n; c++)
   {
      if (array[c] == search)     /* if required element found */
      {
         printf("%d is present at location %d.\n", search, c);
         break;
      }
   }
   if (c == n)
      printf("%d is not present in array.\n", search);
      getch();

   return 0;

}



output:
Enter the number of elements in array
6
14
12
15
16
17
18
Enter the number to search
17
17 is present at location 4




2.//Binary search

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

int main()
{
   int c, first, last, middle, n, search, array[100];

   printf("Enter number of elements\n");
   scanf("%d",&n);

   printf("Enter %d integers\n", n);

   for (c = 0; c < n; c++)
      scanf("%d",&array[c]);

   printf("Enter value to find\n");
   scanf("%d", &search);

   first = 0;
   last = n - 1;
   middle = (first+last)/2;

   while (first <= last) {
      if (array[middle] < search)
         first = middle + 1;  
      else if (array[middle] == search) {
         printf("%d found at location %d.\n", search, middle);
         break;
      }
      else
         last = middle - 1;

      middle = (first + last)/2;
   }
   if (first > last)
      printf("Not found! %d is not present in the list.\n", search);
      getch();

   return 0;  

}


output:
Enter number of elements
5
Enter 5 integers
12
18
19
24
56
Enter value to find
24
24 is found at location 3



3.//palindrome ex: 121   1221
#include <stdio.h>
#include<conio.h>

int main()
{
   int n, reverse = 0, temp;

   printf("Enter a number to check if it is a palindrome or not\n");
   scanf("%d",&n);

   temp = n;

   while( temp != 0 )
   {
      reverse = reverse * 10;
      reverse = reverse + temp%10;
      temp = temp/10;
   }

   if ( n == reverse )
      printf("%d is a palindrome number.\n", n);
   else
      printf("%d is not a palindrome number.\n", n);
      getch();

   return 0;

}
output:
Enter a number to check if it is a palindrome or not
121
121 is a palindrome number





4./* Fibonacci Series c language */
#include<stdio.h>
#include<conio.h>

int main()
{
   int n, first = 0, second = 1, next, c;

   printf("Enter the number of terms\n");
   scanf("%d",&n);

   printf("First %d terms of Fibonacci series are :-\n",n);

   for ( c = 0 ; c < n ; c++ )
   {
      if ( c <= 1 )
         next = c;
      else
      {
         next = first + second;
         first = second;
         second = next;
      }
      printf("%d\n",next);
   }
   getch();

   return 0;
}


output:
Enter the number of terms
10
0
1
1
2
3
5
8
13
21
34



5.
/* Bubble sort code */

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

int main()
{
  int array[100], n, c, d, swap;

  printf("Enter number of elements\n");
  scanf("%d", &n);

  printf("Enter %d integers\n", n);

  for (c = 0; c < n; c++)
    scanf("%d", &array[c]);

  for (c = 0 ; c < ( n - 1 ); c++)
  {
    for (d = 0 ; d < n - c - 1; d++)
    {
      if (array[d] > array[d+1]) /* For decreasing order use < */
      {
        swap       = array[d];
        array[d]   = array[d+1];
        array[d+1] = swap;
      }
    }
  }

  printf("Sorted list in ascending order:\n");

  for ( c = 0 ; c < n ; c++ )
     printf("%d\n", array[c]);
 getch();
  return 0;

}

output:
Enter number of elements
5
Enter 5  integers
2
54
3
15
55
Sorted list in ascending order
2
3
15
54
55










No comments:

Post a Comment