输入n个正整数到数组中,将它们从小到大排序后输出,要求使用冒泡排序法。

#include <stdio.h>
#include <malloc.h>
main()
{
int i,*a,t,n,j;
printf("qing shu ru chang du\n");
scanf("%d",&n);
a=(int*)malloc(n*sizeof(int));
for(i=0;i<n;i++)
{
scanf("%d",*(a+i));
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
if(*(a+i)>*(a+i+1)){t=*(a+i);*(a+i)=*(a+i+1);*(a+i+1)=t;}
}
}
for(i=0;i<n;i++)
{
printf("%d\t",*(a+i));
}
free(a);
}

哪里不对???

#include <stdio.h>
#include <malloc.h>
main()
{
int i,*a,t,n,j;
printf("qing shu ru chang du\n");
scanf("%d",&n);
a=(int*)malloc(n*sizeof(int));
for(i=0;i<n;i++)
{
scanf("%d",a+i);
}
for(j=0;j<n;j++)
{
for(i=0;i<j;i++)
{
if(*(a+i)>*(a+i+1)){t=*(a+i);*(a+i)=*(a+i+1);*(a+i+1)=t;}
}
}
for(i=0;i<n;i++)
{
printf("%d\t",*(a+i));
}
free(a);
}追问

那个循环比较大小的那个没大看懂

循环还是不对啊

温馨提示:内容为网友见解,仅供参考
无其他回答

编写函数用冒泡排序法对数组中的n个数据进行从小到大的排序。
1、新建一个163.php。2、输入php网页的结构(<?php?>)。3、声明PHP与浏览器交互的文件类型和编码。4、使用 array() 函数定义一个$numbers数组。5、使用 sort() 函数对数组 $numbers 中的元素进行排序。6、使用 print_r() 函数,输出排序后的数组。7、运行网页,在浏览器中输出排序后的数组。

冒泡排序:输入n个字符串,对其进行冒泡排序,使其按从小到大顺序输出
printf("排序后:\\n");for(i=0;i<N;++i)printf("%s\\n",p[i]);return 0;}

给出n个数,你要将这n个数从小到大排序输出
算法稳定性 冒泡排序就是把小的元素往前调或者把大的元素往后调。比较是相邻的两个元素比较,交换也发生在这两个元素之间。所以,如果两个元素相等,是不会再交换的。如果两个相等的元素没有相邻,那么即使通过前面的两两交换把两个相邻起来,这时候也不会交换,所以相同元素的前后顺序并没有改变,所以...

C语言编程:将输入的N个整数采用冒泡排序按照从小到大的顺序排列并且输出...
void BubbleSort(int L[]) { \/\/ 对顺序表L作冒泡排序 int i,j,fini = 0;for (i = 1; i < n && !fini; i++) { fini = 1;for (j = 1; j <= n-i; j++)if (L[j] > L[j+1]) { L[0] = L[j];L[j] = L[j+1];L[j+1] = L[0];fini = 0;} } } ...

编程,输入n个数(n从键盘输入,且不大于20),先用冒泡法按从小到大的顺序...
print("从小到大排序后的结果为:", nums)```首先通过 `input()` 函数获取用户输入的 `n` 值,然后通过循环和 `input()` 函数获取 `n` 个数,并存储在列表 `nums` 中。接着,使用两层循环实现冒泡排序,将列表 `nums` 中的数按从小到大的顺序排列。最后,使用 `print()` 函数输出排序后...

C语言:输入一个小于100的正整数n,然后输入n个整数存入一维数组中,对...
这个程序的写法是比较标准而简单的,先输入一个整数n,然后使用一个循环输入n个整数到一维数组当中,在使用一个简单的排序方法,比方说冒泡排序就可以对数组进行从大到小的排序,最后输出就可以了.include <stdio.h> void bubble_sort(int a[], int n){ int i, j, t;for (i = 0; i < n...

给定N个不同的整数,要求对这N个整数按如下规则排序并输出。
按照从小到大的顺序对N个不同的整数进行排序,可以使用各种排序算法来实现。具体实现时,可以根据实际情况选择合适的排序算法,对整数数组进行排序后输出。解释如下:对于这个问题,我们的目标是对给定的N个不同的整数进行排序。排序的基本思想是将这些整数按照从小到大的顺序重新排列。为了实现这一目标,我们...

如何用冒泡法从小到大排序?
冒泡法10个整数从小到大排序思路如下:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复第一趟步骤,直至全部排序...

c语言如何输入一个正整数N,再输入N个整数,按从小到大的顺序输出?
printf("必须输入一个大于等于0的数!\\n\\n");}else{ i++;} } \/\/使用冒泡排序来使得数组的元素值从小到大排序 for(i=0;i<N;i++){ for(j=0;j<N-i-1;j++){ if(num[j]>num[j+1]){ temp=num[j];num[j]=num[j+1];num[j+1]=temp;} } } \/\/输出排序数组中所有元素的值...

...一个正整数N,再输入N个整数,按从小到大的顺序输出。
printf("请再输入%d个数据:",n); for(i=0;i<n;i++) scanf("%d",&a[i]); printf("\\n"); for(j=0;j<n-1;j++)\/\/冒泡排序进行从小到大排列 for(i=0;i<n-1-j;i++) if(a[i]>a[i+1]) {t=a[i]; a[i]=a[i+1]; a[i+1]=t;} printf("The sorted numbers:\\n"); for...

相似回答