早教吧作业答案频道 -->其他-->
C语言冒泡排序法,疑问啊~~~~~~~~~~~~~~~~~#include<stdio.h>#defineN15main(){int*p[N],a[N],i,j,*temp;for(i=0;i<=N-1;i++){scanf("%d",&a[i]);p[i]=&a[i];}for(i=1;i<=N-1;i++){for(j=0;j<=N-1-i;j++)if(a[j]>a[j+1
题目详情
C语言冒泡排序法,疑问啊~~~~~~~~~~~~~~~~~#include<stdio.h> #defineN15 main() {int*p[N],a[N],i,j,*temp; for(i=0;i<=N-1;i++) {scanf("%d",&a[i]); p[i]=&a[i]; } for(i=1;i<=N-1;i++) { for(j=0;j<=N-1-i;j++) if(a[j]>a[j+1]) {temp=p[j]; p[j]=p[j+1]; p[j+1]=temp; } } printf("\n"); for(i=0;i<=N-1;i++) {printf("%d",*p[i]); printf("a[%d]=%d\n",i+1,a[i]); } } 这一段代码为什么不能实现排序?是指针有问题吗,还是其他方面的?
▼优质解答
答案和解析
{int*p,a[N],i,j,temp; for(i=0;ia[j+1]) {*temp=*p[j]; *p[j]=*p[j+1]; *p[j+1]=*temp; 来改动指针的指向,使得a[]数组随之变化来实现冒泡 或者你是这样想 a数组里面的值不变,实现排序*p 那if条件改成 if(*p[j]>*p[j+1]) 这样才能通过指针地址的改变实现对*p数组的排序 a数组的内容不变
看了 C语言冒泡排序法,疑问啊~~...的网友还看了以下:
设A为n阶矩阵,证明:R(A+I)+R(A-I)>=n已知R(A)=R(kA),k≠0;R(A+B 2020-05-14 …
可以参考的公式是:s[1]=a[1];s[n]=s[n-1]>=0?s[n-1]+a[n]:a[n 2020-05-14 …
能不能帮我写个英文句子里带L.I.UY.A.N.G这几个字母的句子!纹身用的! 2020-06-03 …
用以下英文宇母填在上a,a,a,a,a,a,b,e,e,d,e,e,e,e,e,e,f,g,g用以 2020-06-24 …
C语言冒泡排序法,疑问啊~~~~~~~~~~~~~~~~~#include<stdio.h>#de 2020-07-23 …
(A/P,i,n)=(A/F,i,n)+i或(A/F,i,n)=(A/P,i,n)-i我已经知道怎 2020-07-23 …
P=A(1+i)^-1+A(1+i)^-2+A(i+i)^-3+……A(1+i)^-n(1)将两边 2020-07-25 …
F=A+A×(1+i)+…+A×(1+i)n-1,(1)等式两边同乘以(1+i):F(1+i)=A( 2020-11-01 …
下证明过程中蕴涵的数学思想是什么s=a+a(1+i)+a(1+i)(1+i)+...+a(1+i)的 2020-11-01 …
lim[cos(u/4n)+cos(3u/4n)+.+cos(2n-1)u/4n]/n这里n趋于无穷 2020-11-01 …