早教吧作业答案频道 -->其他-->
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语言冒泡排序法,疑问啊~~...的网友还看了以下:
求一数列.高2.a(n+1)=2an/2an+1已知a1=1a(n+1)=2an/2an+1求数列 2020-04-25 …
A(n,n)=n(n-1)(n-2)……·3·2·1怎么理解麻烦写下过程c(2,3)c(1,4)= 2020-05-14 …
已知是i,m,n正整数,且1 (1+n)^m第一小问的A(i m)和A(i n)是排列公式,上面i 2020-05-16 …
如何用MATLAB构造满足某条件的N*(N-1)的列满秩矩阵I(n)=(1,.,1)是个1*n的向 2020-06-27 …
这个程序要求是输出m个数中任取n个数的所有组合,我要抓狂了==#include;#includei 2020-06-28 …
定义:设有限集合A={x|x=ai,i≤n,i∈N+,n∈N+},S=a1+a2+…+an-1+a 2020-08-01 …
F=A+A×(1+i)+…+A×(1+i)n-1,(1)等式两边同乘以(1+i):F(1+i)=A( 2020-11-01 …
设数列{an}满足a(n+1)=2an+n^2-4n+1.(1)若a1=3,求证:存在f(n)=an 2020-11-19 …
1、在资金时间价值计算时,i和n给定,下列等式中正确的有?为什么?1、A(F/A,i,n)=[(P/ 2021-01-14 …
现在设质数为n,一个数为i,余数为r.先用i除n,得到余数r.判断r是否为0.若为0,则n不为0,则 2021-02-13 …