<< Chapter < Page | Chapter >> Page > |
int a[100];int i, n;
int max;printf("\n Enter the size of the array: ");
scanf("%d",&n);
// Read the number of elements of the arrayfor(i = 0; i<n; i++)
{printf("\n a[%d] = ",i);scanf("%d",&a[i]);}
// Find the maximum elementmax = a[0]; // max is initialized by a[0]// compare max to other elements
for(i = 1; i<n; i++)
if(max<a[i]) //meet an element greater than maxmax = a[i]; // replace max by the new value from the elements.printf("\n The maximum element of the array is: %d", max);
The simplest type of searching process is the sequential search. In the sequential search, each element of the array is compared to the key, in the order it appears in the array, until the first element matching the key is found. If you are looking for an element that is near the front of the array, the sequential search will find it quickly. The more data that must be searched, the longer it will take to find the data that matches the key using this process.
here is the sample session with the above program
#include<stdio.h>#include<conio.h>void main()
{int m[100], idx[100];
int n; // n is the actual size of the arrayint i, k, test;
clrscr(); // clear screen// Read array m
// Read the actual size of mprintf(“ Enter the number of elements
scanf(“%d”,&n);
// Read array’s elementsfor(i = 0;i<n;i++)
{int temp;
printf(“\n Enter the value of m[%d]= “,i);
scanf(“%d”,&temp);
m[i]= temp;
}// Read the searching key k
printf(“\n Enter the value you want to search : “);scanf(“%d”,&k);
// Begin searchingtest = 0;
// Scan all the elementsfor(i = 0;i<n;i++)
if(m[i]= = k)//Compare the current element with the
//searching key k{
// save the index of the current element
idx[test]= i;
test ++;}
// Conclusionif(test>0)
{printf(“\n there are %d elements which has the value of %d”,test,k);
printf(“\n Indexes of those elements: “);for(i = 0;i<test;i++)
printf(“%3d”,idx[i]);
}else
printf(“\n No element has the value %d”,k);getch(); // Wait until the user press any key
}
Selection sort is a sorting algorithm, specifically an in-place comparison sort. Selection sort is noted for its simplicity, and also has performance advantages over more complicated algorithms in certain situations. It works as follows:
Effectively, we divide the list into two parts: the sublist of items already sorted, which we build up from left to right and is found at the beginning, and the sublist of items remaining to be sorted, occupying the remainder of the array.
Here is an example of this sort algorithm sorting five elements:
31 25 12 22 11
11 25 12 22 3111 12 25 22 31
11 12 22 25 31
#include<stdio.h>#include<conio.h>void main()
{int m[100];//100 is the maximum size for array mint n; // n is the number of elements int i, j, k;
clrscr(); // clear screen// Read the elements of array m
// Read the actual size of the arrayprintf(“ Enter the number of elements: “);
scanf(“%d”,&n);
// Read array elementsfor(i = 0;i<n;i++)
{int temp;
printf(“\n Enter the value of m[%d]= “,i);
scanf(“%d”,&temp);
m[i]= temp;
}// Print the array
printf(“\n The array before sorting: “);for(i=0;i<n;i++)
printf(“%3d”,m[i]);
// Begin to sortfor(i = 0; i<n-1;i++)
{// Put the minimum value in the list of n-i elements
//to the ith positionfor(j = i+1;j<n;j++)
{// compare m[i] with other element of the sublist// and swap m[i] and m[j]if m[j]<m[i].if(m[j]<m[i]){
int temp;temp = m[j]; m[j]= m[i]; m[i]= temp;
}}
// Print the array after the i+1 th step of sorting processprintf(“\n The array after step %d”,i+1);
for(k = 0;k<n ;k++)
printf(“%3d”,m[k]);
}getch(); // Wait until the user press any key.
}
Notification Switch
Would you like to follow the 'Introduction to computer science' conversation and receive update notifications?