鸿鸿哥最近学习了指针,感觉这个知识点有点难以理解,于是想要通过编程实践来掌握它。鸿鸿哥以前学习数组(第7章)的时候已经掌握了冒泡排序的一般写法,现在他想用指针来实现排序的功能函数。但是他遇到了困难,你能帮帮他吗?
指针实现冒泡排序函数,函数名统一用void bubbleSort(int *p,int c)。
具体方法自己实现。
输入格式:
一组输入,第一行是待排数据个数n, 第二行是数据的具体值。
输出格式:
输出排序后的数,两个数之间以空格间开,最后一个数字末尾有空格
输入样例:
在这里给出一组输入。例如:
5
503 87 512 61 908
#include <stdio.h>
void bubbleSort(int*b,int n);
int main(){
int n,i;
int *p, a[80];
scanf("%d",&n);
for(i=0;i<n;i++){ scanf("%d",&a[i]); }
p=a;
bubbleSort(p,n);
for(i=0;i<n;i++){
printf("%d ", a[i]);
}
}
void bubbleSort(int*b,int n){
int i,*p,t;
for(i=0;i<n-1;i++){
for(p=b;p<b+n-i-1;p++)
if(*p>*(p+1)){
t=*p;
*p=*(p+1);
*(p+1)=t; }
}
}
总结:耐心找错误。