當前位置:首頁 » 編程語言 » c語言指針排序

c語言指針排序

發布時間: 2022-06-04 21:38:16

c語言指針三個整數排序

#include<stdio.h>

int main()

{ int a,b,c,*p=&a,*q=&b,*r=&c,*t;

scanf("%d%d%d",&a,&b,&c);

if(*p>*q)

{ t=p;

p=q;

q=t;

}

if(*p>*r)

{ t=p;

p=r;

r=t;

}

if(*q>*r)

{ t=q;

q=r;

r=t;

}

printf("%d %d %d ",*p,*q,*r);

return 0;

}

② C語言編程:用指向指針的指針的方法對n個整數排序並輸出。

#include<stdio.h>
#include<stdlib.h>
#defineMAXSIZE100
voidswap(int*,int*);
voidsort(int**,int);
intmain(void)
{
inti;
intn;
//整形數組
intarray[MAXSIZE];
//指針數組
int*pArray[MAXSIZE];
printf("pleaseentern: ");
scanf("%d",&n);
for(i=0;i<n;++i)
{
scanf("%d",&array[i]);
pArray[i]=&array[i];
}
sort(pArray,n);
for(i=0;i<n;++i)
{
printf("%d ",*pArray[i]);
}
return0;
}
//交換
voidswap(int*a,int*b)
{
inttemp=*a;
*a=*b;
*b=temp;
}
//排序
voidsort(int**array,intn)
{
int*p;
int*q;
for(p=*array;p<*array+n;++p)
{
for(q=p+1;q<*array+n;++q)
{
if(*p>*q)
{
swap(p,q);
}
}
}
}

③ c語言指針數組排序

p是int類型指針,指向數組a的第1個元素即一個一維的數組{1,2,3}首地址所以p[1]相當於a[0][1]所以printf("%d\n",p[1]);
輸出2 。 int **pp =pa 是聲明了一個指向pa的指針,而pa又是指向a首地址的int類型指針。pa指向的是a的第一維,pa[0] = a[0] ,pp[2][1]相當於a[2][1]而a數組的[2]中只初始化了[2][0]位置的7,那[2][1]位置就是默認的值0,所以printf("%d\n",pp[2][1]);
輸出0

④ C語言指針實現整數排序

#include<stdio.h>
intmain()
{
inta[3],i,n,j;
int*q;
q=&a[0];//這里是將數組的第一位的地址賦值給指針q,也是數組a的首地址
for(i=0;i<3;i++)
{
printf("請輸出1個整數:");
scanf("%d",&a[i]);
}

for(j=0;j<2;j++)//簡單的排序。
{
for(i=0;i<2;i++)
{
if(*(q+j)<*(q+1+i))
{
n=*(q+j);
*(q+j)=*(q+1+i);
*(q+1+i)=n;
}
}
}
printf("三個整數是:%d,%d,%d ",*q,*(q+1),*(q+2));
}

這道題的主要是弄清楚指針的加法和排序的方法。

⑤ C語言使用指針實現選擇法排序。

#include<stdio.h>

voidprint_result(float*,int);

voidSelect_Sort(float*,int);

intmain()

inti;

floatarray[10];

float*pointer;

printf("請輸入10個數:\n");

for(i=0;i<10;i++)

scanf("%f",&array[i]);

pointer=array;

Select_Sort(pointer,10);

print_result(pointer,10);

return0;

voidprint_result(float*p,intn)

{//輸出結果

intk;

for(k=0;k<n;k++)

printf("%g\t",*(p+k));

voidSelect_Sort(float*pt,intn)

{//全用指針的選擇排序法

inti,j,k;

floattempnum;

for(i=0;i<n;i++){

k=i;

for(j=i+1;j<n;j++)

if(*(pt+j)>*(pt+i))

k=j;

tempnum=*(pt+i);

*(pt+i)=*(pt+k);

*(pt+k)=tempnum;

(5)c語言指針排序擴展閱讀:

其它方法:

voidSelectSort(intarr[],intn)

printf("\n選擇排序法過程:\n");

inti,j,k,l,t;

for(i=0;i<n;i++)

k=i;

for(j=i+1;j<n;j++)

if(arr[j]<arr[k])

k=j;

if(k!=i)

t=arr[i];arr[i]=arr[k];arr[k]=t;

for(l=0;l<n;l++)

printf("%3c",arr[l]);

printf("\n");

⑥ c語言用指針給數組排序和插入

#include<stdio.h>
#definesize8//元素數組元素個數
intmain()
{
inti,nums[size]={13,27,38,49,65,76,97},n,index,*p=&nums[size-1];
printf("原數組:");
for(i=0;i<size-1;i++)
printf("%d",nums[i]);
printf(" 輸入要插入的數字:");
scanf("%d",&n);
printf("輸入要插入在第幾個數字後面:");
scanf("%d",&index);
while(p>&nums[index])
{
*p=*(p-1);
p--;
}
*p=n;

printf("插入後的數組:");
for(i=0;i<size;i++)
printf("%d",nums[i]);
return0;
}

⑦ C語言 指針 排序法

for(i=0;i<10;p++)
{
if(*pmax<*p)
pmax=p;
if(*pmin>*p)
pmin=p;
}

這里有錯!~ for(i=0;i<10;p++)這里出錯了~~`

熱點內容
機頂盒密碼是在哪裡 發布:2024-04-27 22:32:47 瀏覽:157
名圖買哪個配置值得買 發布:2024-04-27 22:32:36 瀏覽:877
比亞迪秦pro選哪個配置好 發布:2024-04-27 22:32:34 瀏覽:533
logn演算法 發布:2024-04-27 21:58:36 瀏覽:596
11選五的簡單演算法 發布:2024-04-27 21:46:14 瀏覽:71
ebay圖片上傳 發布:2024-04-27 21:31:50 瀏覽:587
微信電腦登錄顯示伺服器錯誤 發布:2024-04-27 20:58:08 瀏覽:135
壓縮彈簧安裝 發布:2024-04-27 20:35:43 瀏覽:371
淘寶視頻無法上傳視頻 發布:2024-04-27 20:31:27 瀏覽:643
安卓軟體怎麼分享 發布:2024-04-27 20:28:26 瀏覽:669