1.输入一个5个元素的一维数组,实现冒泡排序
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, const char *argv[])
{
int arr[]={9,3,2,6,4};
int n=sizeof(arr)/sizeof(arr[0]);
for(int i=1;i<n;i++)
{
for(int j=0;j<n-i;j++)
{
if(arr[j]>arr[j+1])
{
int t;
t=arr[j];
arr[j]=arr[j+1];
arr[j+1]=t;
}
}
}
for(int i=0;i<n;i++)
printf("%d\n",arr[i]);
return 0;
}
2.输入一个5个元素的一维数组,实现简单选择排序
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, const char *argv[])
{
int arr[]={9,3,2,6,4};
int n=sizeof(arr)/sizeof(arr[0]);
for(int i=0;i<n-1;i++)
{
int min=i;
for(int j=i+1;j<n;j++)
{
if(arr[min]>arr[j])
min=j;
}
if(min!=i)
{
int t;
t=arr[min];
arr[min]=arr[i];
arr[i]=t;
}
}
for(int i=0;i<n;i++)
printf("%d\n",arr[i]);
return 0;
}
3.输入一个5个元素的一维数组,计算最大值,最小值
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, const char *argv[])
{
int arr[5]={1,2,3,4,5};
int i,max,min;
max=arr[0];
min=arr[0];
for(i=1;i<5;i++)
{
if(arr[i]>max)
max=arr[i];
if(arr[i]<min)
min=arr[i];
}
printf("max=%d\n",max);
printf("min=%d\n",min);
return 0;
}
4.输入一个3行4列的二维数组,计算最大值,最小值
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(int argc, const char *argv[])
{
int i,j,max,min,arr[3][4];
for(i=0;i<3;i++)
{ for(j=0;j<4;j++)
scanf("%d",&arr[i][j]);
}
max=arr[0][0];
min=arr[0][0];
for(i=0;i<3;i++)
{
for(j=0;j<4;j++)
{
if(arr[i][j]>max)
max=arr[i][j];
if(arr[i][j]<min)
min+arr[i][j];
}
}
printf("max=%d\n",max);
printf("min=%d\n",min);
return 0;
}