大一c语言作业求助

weixin_41924397 2018-05-27 10:04:17
如何定义一个函数使用递归调用的方法编写冒泡排序程序
...全文
1279 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2018-06-04
  • 打赏
  • 举报
回复
“给定一个小点的输入,完整单步跟踪(同时按Alt+7键查看Call Stack里面从上到下列出的对应从里层到外层的函数调用历史)一遍。”是理解递归函数工作原理的不二法门! 递归函数关注以下几个因素 ·退出条件 ·参数有哪些 ·返回值是什么 ·局部变量有哪些 ·全局变量有哪些 ·何时输出 ·会不会导致堆栈溢出
sd990620 2018-06-03
  • 打赏
  • 举报
回复
设数组的长度为N: (1)比较前后相邻的二个数据,如果前面数据大于后面的数据,就将这二个数据交换。 (2)这样对数组的第0个数据到N-1个数据进行一次遍历后,最大的一个数据就“沉”到数组第N-1个位置。 (3)N=N-1,如果N不为0就重复前面二步,否则排序完成。 以上就是冒泡排序的基本思想 以下仅供参考
#include <stdio.h>
void main()
{
    int a[5];
    int i,j,t;
    printf("输入五位数字:");
    for(i=0;i<=4;i++)
        scanf("%d",&a[i]);
    for(j=0;j<=3;j++)
    {
        for(i=0;i<4-j;i++)
            if(a[i]>a[i+1])
            {
                t=a[i];
                a[i]=a[i+1];
                a[i+1]=t;
            }
    }
    for(i=0;i<=4;i++)
        printf("%d ",a[i]);
                                printf("\n");
}
TT^_^TT 2018-06-02
  • 打赏
  • 举报
回复
注意:递归出口在哪?n是数元素的个数,所以进行冒泡排序是世,要进行循环的次数应当与n相同,进一步说明,当循环次数为零是,递归完成。
脚比路长 2018-05-27
  • 打赏
  • 举报
回复
https://blog.csdn.net/qq_36065506
Isnis-fallen 2018-05-27
  • 打赏
  • 举报
回复

#include<stdio.h>

void bubble_sort(int v[], int n)
{
	if (n == 0)
		return;
	
	for (int i = 0; i < n-1; i++)
	{
		if (v[i] > v[i + 1])
		{
			int temp;
			temp = v[i + 1];
			v[i + 1] = v[i];
			v[i] = temp;
		}
	}
	bubble_sort(v, n - 1);
}

int main()
{
	int n=5;
	int nums[5];
	for (int i = 0; i < n; i++)
	{
		scanf("%d", &nums[i]);
	}
	bubble_sort(nums, 5);
	for (i = 0; i < 5; i++)
	{
		printf("%d ", nums[i]);
	}
	printf("\n");
	getchar(); 
	return 0;
}
STARK_LEE 2018-05-27
  • 打赏
  • 举报
回复
#include<stdio.h>
void bubble_sort(int*v,int i,int j,int v_size)//数组v,数组处理用i,j,数组大小v_size
{
if(i==v_size-1)
break;
else if(j==v_size-1)
 bubble_sort(v,i+1,0,v_size);
else
 if(v[j]>v[j+1])   {int temp;temp=v[j];v[j]=v[j+1];v[j+1]=temp;bubble_sort(v,i,j+1,v_size);}
}

 
paschen 2018-05-27
  • 打赏
  • 举报
回复

69,373

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧