| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1837 人关注过本帖
标题:用指针实现:任意输入20个数,将它们按照从大到小的顺序输出。
只看楼主 加入收藏
wbq30747
Rank: 1
等 级:新手上路
帖 子:14
专家分:4
注 册:2009-10-21
收藏
 问题点数:0 回复次数:14 
用指针实现:任意输入20个数,将它们按照从大到小的顺序输出。
用指针实现:任意输入20个数,将它们按照从大到小的顺序输出。用指针实现:任意输入20个数,将它们按照从大到小的顺序输出。

指针学得不好,谢谢了。
搜索更多相关主题的帖子: 指针 输入 输出 顺序 
2009-10-25 20:18
wbq30747
Rank: 1
等 级:新手上路
帖 子:14
专家分:4
注 册:2009-10-21
收藏
得分:0 
帮帮忙嘛,谢了啊,编成中国的大家啊。
2009-10-25 20:29
apwh7550
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:41
专家分:106
注 册:2009-10-17
收藏
得分:0 
/*
*    函数功能说明:用指针实现—任意输入20个数,将它们按照从大到小的顺序输出。
*/
////////////////////////////////////////////////////
//包含头文件
#include<stdio.h>
#include <iostream>
using namespace std;
////////////////////////////////////////////////////
 
//*****************************************
//函数声明
void input(double* a);
void sort(double* a);
void output(double* a);
 
void main()
{
    //double a[20]={0};
    double *a=new double[20];
    //输入数据
    input(a);
 
    //排序
    sort(a);
 
    //输出
    output(a);
}  
//******************************************
//输入函数实现
void input(double* a)
{
    cout<<"请输入20个数!"<<endl;
    int k=0;
    double b;
    while(k<20)
    {
        cin>>b;
        *a=b;
        a++;
        k++;
    }
}
 
//*******************************************
//排序函数实现
void sort(double *a)
{
    //选择排序
    for(int i=0;i<20;i++)
    {
        int max=*(a+i);
        for(int j=i;j<20;j++)
        {
            if(*(a+j)>max)
            {
                //交换
                int k=0;
                k=max;
                max=*(a+j);
                *(a+j)=k;
            }
            //a++;
        }
        *(a+i)=max;
    }
}
 
//********************************************
//输出
void output(double *a)
{
    cout<<"排序后的数列是:"<<endl;
    for(int k=0;k<20;k++)
    {
        cout<<(*a)<<' ';
        a++;
    }
    cout<<endl;
}

[ 本帖最后由 apwh7550 于 2009-10-25 21:12 编辑 ]
2009-10-25 21:01
wbq30747
Rank: 1
等 级:新手上路
帖 子:14
专家分:4
注 册:2009-10-21
收藏
得分:0 
大哥,大虾。小弟再次感谢,再次感谢。
2009-10-25 21:20
rinc
Rank: 1
来 自:china
等 级:新手上路
帖 子:1
专家分:0
注 册:2009-9-27
收藏
得分:0 
3楼,你这题做错了
2009-10-26 14:49
xiaowenhuman
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:101
专家分:104
注 册:2009-5-10
收藏
得分:0 
程序代码:
#include "stdio.h" 
#define  N 21 
void main() 
{ 
    int i,*p[N],j,t; 
    printf("please input ten number\n"); 
    for(i=1;i<N;i++) 
    { 
       printf("the number %d  :",i); 
      scanf("%d",p[i]); 
    } 
    for(i=1;i<N-2;i++) 
        for(j=1;j<N-1-j;j++) 
        if(*p[j]<*p[j+1]) 
        { 
            t=*p[j]; 
            *p[j]=*p[j+1]; 
            *p[j+1]=t; 
        } 
     for(i=1;i<N;i++) 
     printf("%d     ",*p[i]); 
     getch(); 
}
2009-10-26 15:30
apwh7550
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:41
专家分:106
注 册:2009-10-17
收藏
得分:0 
回复 5楼 rinc
是吗?麻烦说得明确些,谢了
2009-10-26 23:54
C90
Rank: 2
等 级:论坛游民
帖 子:9
专家分:12
注 册:2009-10-20
收藏
得分:0 
#include <stdio.h>
void main()
{int a[20];
int i,j,t;
printf("input 10 number:");
for(i=0;i<20;i++)
scanf("%d,",&a[i]);
printf("\n");
for(j=0;j<19;j++)
for(i=0;i<19-j;i++)
if(a[i]<a[i+1])
{t=a[i];
a[i]=a[i+1];
a[i+1]=t;}
printf("output number:");
for(i=0;i<20;i++)
printf("%d,",a[i]);
printf("\n");
getch();
}
2009-10-27 17:15
wbq30747
Rank: 1
等 级:新手上路
帖 子:14
专家分:4
注 册:2009-10-21
收藏
得分:0 
八楼的感谢,小弟在此感谢。真的感谢。
2009-10-28 18:04
dengjun000
Rank: 2
等 级:论坛游民
帖 子:66
专家分:77
注 册:2009-10-14
收藏
得分:0 
8楼没用指针。。
2009-10-28 18:18
快速回复:用指针实现:任意输入20个数,将它们按照从大到小的顺序输出。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013762 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved