用数组指针实现一维数组由小到大的冒泡排序 编写3个函数用于输入数据,数据排序,数据输出

该博客介绍用C语言通过数组指针实现一维数组由小到大的冒泡排序。使用Dev - c++和Windows10系统,要求编写输入、排序、输出三个函数。还提及所需知识点,如变量存储类别(自动变量、静态变量)、数组知识、冒泡排序法和指针用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用数组指针实现一维数组由小到大的冒泡排序(c语言实现)

  • 使用工具:Dev-c++,Windows10操作系统
  • 程序要求:编写3个函数用于输入数据,数据排序,数据输出

下面直接上代码

#include<stdio.h>
int a[10];//定义一个全局变量
void input()
{
 int i;//如果在这里定义数组,则该数组只是一个局部变量,当该函数结束时,数组自动删除了 ,所以要把数组定义成全局变量 
 printf("please input 10 number");
 for(i=0;i<10;i++)
 scanf("%d",&a[i]);
}
void sort(int a[10])//冒泡排序法(用指针实现)
{
 int m,n,*p=a,temp;
 for(m=0;m<9;m++)
 for(n=0;n<9-m;n++)
 if(*(p+n)>*(p+n+1))
 {
  temp=*(p+n);
  *(p+n)=*(p+n+1);
  *(p+n+1)=temp;
 }
}
void output(int a[10],int i) //可用for循环或者指针来输出
{
 for(i=0;i<10;i++)
 printf("%3d",a[i]);
}
main()
{
 input();
 sort(a);
 output(a,10);
 } 
  • 程序运行后的结果

在这里插入图片描述

.

本例需要的知识点:

  1. 变量的存储类别
  • 自动变量:自动变量属于动态存储方式,只有在使用它,即定义该变量的函数被调用时系统才对它进行存储单位的分配,该变量的生存周期开始。函数调用结束,释放存储单元,生存期结束。因此函数调用结束后,自动变量的值不再保留
  • 静态变量:自动变量属于动态存储方式,函数调用结束后,其值不能保留,如果需要保存变量的值,则应定义静态变量,静态变量的生存周期为源程序的运行期
  1. 数组的相关知识点
  2. 冒泡排序法
  3. 指针的相关用法
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值