练习一
输入一个5个元素的一维数组,实现冒泡排序
#include <myhead.h>
int main(int argc, const char *argv[])
{
int arr[5];
printf("Please enter a array with 5 number:\n");
int i, j;
for(i=0; i<5; i++)
{
scanf("%d", &arr[i]);
}
for(i=1; i<5; i++)
{
for(j=0; j<5-i; j++)
{
if(arr[j] > arr[j+1])
{
int t;
t = arr[j];
arr[j] = arr[j+1];
arr[j+1] = t;
}
}
}
printf("After sorting : \n");
for(i=0; i<5; i++)
printf("%-2d", arr[i]);
putchar(10);
return 0;
}
练习二
输入一个5个元素的一维数组,实现简单选择排序
#include <myhead.h>
int main(int argc, const char *argv[])
{
int arr[5];
printf("Please enter a array with 5 number:\n");
int i, j;
for(i=0; i<5; i++)
{
scanf("%d", &arr[i]);
}
for(i=0; i<4; i++)
{
int min = i;
{
for(j=i+1; j<5; j++)
if(arr[min] > arr[j])
min = j;
}
if(min != i)
{
int t;
t = arr[min];
arr[min] = arr[i];
arr[i] = t;
}
}
printf("After sorting : \n");
for(i=0; i<5; i++)
printf("%-2d", arr[i]);
putchar(10);
return 0;
}
练习三
输入一个5个元素的一维数组,计算最大值,最小值
#include <myhead.h>
int main(int argc, const char *argv[])
{
int arr[5];
printf("Please enter a array with 5 number:\n");
int i, j;
for(i=0; i<5; i++)
{
scanf("%d", &arr[i]);
}
int max = arr[0], min = arr[0];
for(i=0; i<5; i++)
{
if(max < arr[i])
max = arr[i];
if(min > arr[i])
min = arr[i];
}
printf("The max number is %d.\nThe min number is %d.\n", max, min);
return 0;
}
练习四
输入一个3行4列的二维数组,计算最大值,最小值
#include <myhead.h>
int main(int argc, const char *argv[])
{
int arr[3][4];
printf("Please enter a array with 3 rows and 4 columns:\n");
int i, j;
for(i=0; i<3; i++)
{
for(j=0; j<4; j++)
scanf("%d", &arr[i][j]);
}
int max = arr[0][0], min = arr[0][0];
for(i=0; i<3; i++)
{
for(j=0; j<4; j++)
if(max < arr[i][j])
max = arr[i][j];
if(min > arr[i][j])
min = arr[i][j];
}
printf("The max number is %d.\nThe min number is %d.\n", max, min);
return 0;
}