标题:新手上路的我瑟瑟发抖
只看楼主
星辰探
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2020-12-27
结帖率:100%
已结贴  问题点数:20 回复次数:15 
新手上路的我瑟瑟发抖
在主函数中为数组int a[10]赋值,利用swap(int *p1,int *p2)函数对a[]进行从小到大排序输出。
搜索更多相关主题的帖子: 从小到大 排序 新手上路 int 输出 
2020-12-27 22:37
星辰探
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2020-12-27
得分:0 
求大佬程序
2020-12-27 22:37
风过无痕1989
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:8
帖 子:228
专家分:1050
注 册:2020-7-17
得分:0 
回复 楼主 星辰探
程序代码:
#include <stdio.h>

int main()
{
    int swap(int *p1, int *p2);
    int i, n, *p1, *p2, a[10];
    n = 10;
    for (i = 0;i < n;i++)
    {
        scanf("%d", &a[i]);
    }
    p1 = a;
    p2 = &n;
    swap(p1, p2);
    for (i = 0;i < *p2;i++)
        printf("%d ", *(p1 + i));
    printf("\n");
}

int swap(int *p1, int *p2)
{
    int i, j, temp;
    for (i = 0;i < *p2;i++)
    {
        for (j = 0;j < *p2 - 1;j++)
        {
            if (*(p1 + j) > *(p1 + j + 1))
            {
                temp = *(p1 + j);
                *(p1 + j) = *(p1 + j + 1);
                *(p1 + j + 1) = temp;
            }
        }
    }
}
2020-12-28 00:39
星辰探
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2020-12-27
得分:0 
回复 3楼 风过无痕1989
感谢大佬
2020-12-28 09:24
星辰探
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2020-12-27
得分:0 
回复 3楼 风过无痕1989
貌似有点问题
2020-12-28 09:51
风过无痕1989
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:8
帖 子:228
专家分:1050
注 册:2020-7-17
得分:0 
回复 5楼 星辰探
有什么问题?
2020-12-28 12:12
sd273723269
Rank: 2
等 级:论坛游民
威 望:1
帖 子:4
专家分:12
注 册:2020-12-28
得分:5 
#include <stdio.h>
void swap(int* p1);
int nub = 10;
int main(int argc, char const* argv[])
{
    int a[10] = { 2,0,12,9,3,21,5,4,6,13, };
    int b[10] = { 0 };
    int j = 0;
    for (j = 0; j < nub; j++) {
        b[j] = a[j];
    }
    swap(b);
    int i = 0;
    for (i = 0; i < nub; i++) {
        printf("%d\n", b[i]);
    }
    return 0;
}

void swap(int* p1)
{
    int i = 0;
    int j = 10;
    int temp = 0;
    for (j = 10; j >= 0; j--) {
        for (i = 0; i+1 < nub; i++) {
            if (p1[i] > p1[i + 1]) {
                temp = p1[i];
                p1[i] = p1[i + 1];
                p1[i + 1] = temp;

            }
        }
    }
    return;
}
2020-12-28 18:21
sd273723269
Rank: 2
等 级:论坛游民
威 望:1
帖 子:4
专家分:12
注 册:2020-12-28
得分:0 
我也是刚学c,也许还能优化,但是我写的这个 新手应该能看懂
2020-12-28 18:23
do8do8do8
Rank: 10Rank: 10Rank: 10
来 自:沙滩
等 级:贵宾
威 望:17
帖 子:366
专家分:1845
注 册:2010-7-2
得分:5 
c 语言和  lisp 语言  可以一起学
(defvar arr nil)
(setf arr #( 1 3 5 2 6 7 8 9 4 0) )
(sort arr #'>)
结果输出 9 8 7 6 5 4 3 2 1 0

lisp只用三行代码,精彩不是代码多少问题,而是在于这语言用起来真的不费脑

学C语言从底层开始,学编程从问题开始,一日学会C!!!
2020-12-28 19:27
风过无痕1989
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:8
帖 子:228
专家分:1050
注 册:2020-7-17
得分:5 
回复 7楼 sd273723269
你这个程序,初看没有什么问题(没有运行过,只能说是初看哈~~),但是你将他的题目给改了,题目要求用函数 :swap(int *p1,int *p2)
2020-12-28 22:17



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-504412-1-1.html




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

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