第一题:排序 4,3,5,2,1从小到大
cpp
#include <bits/stdc++.h> //冒泡排序
using namespace std;
int main()
{
int a[5] = {4,3,5,2,1};
int i,j,tmp;
for(i=0;i<5;i++)
{
for(j=0;j<5-i;j++)
{
if(a[j]>a[j+1])
{
tmp=a[j];
a[j]=a[j+1];
a[j+1]=tmp;
}
}
}
for(i=0;i<5;i++)
{
cout<<" "<<a[i];
}
return 0;
}
重要知识点:
(1)交换数值:
cpp
if(a[j]>a[j+1])
{
tmp=a[j];
a[j]=a[j+1];
a[j+1]=tmp;}
(2) 两个for循环冒泡;
第一题的高阶写法(调用函数):
代码:
cpp
#include <bits/stdc++.h> //冒泡排序
using namespace std;
void bubble_sort(int *a,int n)
{
for(int i=0;i<n-1;i++)
{
for(int j=0;j<n-i-1;j++)
{
if(a[j]>a[j+1])
{
int tmp=a[j];
a[j]=a[j+1];
a[j+1]=tmp;
}
}
}
}
void printf_a(int *a,int n)
{
for(int i=0;i<n;i++)
{
cout<<" "<<a[i];
}
}
int main()
{
int a[5] = {4,3,5,2,1};
bubble_sort(a,sizeof(a)/sizeof(int));
printf_a(a,sizeof(a)/sizeof(int));
return 0;
}
重要知识点:
(1)求数组个数:
cpp
sizeof(a)/sizeof(int)
(2)调用函数解释(Al)
cpp
bubble_sort(a,sizeof(a)/sizeof(int));
这段代码是C语言中的一部分,用于调用一个名为bubble_sort的函数来对一个整数数组a进行冒泡排序。
具体解释如下:
bubble_sort: 这是函数的名称,表示这是一个冒泡排序的函数。
a: 这是传递给函数的数组。
sizeof(a): 这是计算数组a的字节大小。
sizeof(int): 这是计算整数的大小。
sizeof(a)/sizeof(int): 通过这个表达式,我们得到了数组a中元素的数量。
所以,bubble_sort(a,sizeof(a)/sizeof(int));的意思是:调用bubble_sort函数来对数组a进行排序,并传递两个参数给这个函数:数组本身和数组中元素的数量。