| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 289 人关注过本帖
标题:简单的指针运用程序,帮忙查查
只看楼主 加入收藏
轻风无言
Rank: 2
等 级:论坛游民
帖 子:27
专家分:25
注 册:2012-12-19
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:4 
简单的指针运用程序,帮忙查查
程序代码:
#include<stdio.h>
#define SIZE 10
void bubbleSort( int *const sPtr, const int SIZE );
int mian()
{
    int s[SIZE] = { 2, 4, 6, 8, 10, 33, 1 };
    for( int i = 0; i < SIZE; i++ ){
        printf( "%d ", s[i] );
    }
    bubbleSort( s, SIZE );
    for( int i = 0; i < SIZE; i++ ){
        printf( "%d ", s[i] );
    }
    printf( "\n" );
    return 0;
}
void bubbleSort( int *const sPtr, const int SIZE )
{
    void swap( int *a, int *b );
    int i;
    int j;
    for( i = 1; i < SIZE; i++ ){
        for( j = 0; j < SIZE - i; j++ ){
            if( sPtr[j] > sPtr[j + 1] )
                swap( sPtr[j], sPtr[j + 1] );
        }//end inner for
    }//end for
}
void swap( int *a, int *b )
{
    int c;
    c = *a;
    *a = *b;
    *b = c;
}
搜索更多相关主题的帖子: color 
2013-01-23 16:01
锋了
Rank: 7Rank: 7Rank: 7
来 自:向日葵幼儿园
等 级:黑侠
威 望:2
帖 子:306
专家分:586
注 册:2012-10-27
收藏
得分:3 
你这size为10的数组,声明时初始化全部了吗?printf输出的后面几个会是什么呢?烫?
写程序的风格也该反省下,我觉得
2013-01-23 16:11
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:2 
void bubbleSort( int *const sPtr, const int SIZE );

这么写 大丈夫?
2013-01-23 16:16
神龙赖了
Rank: 10Rank: 10Rank: 10
来 自:萨塔星
等 级:青峰侠
威 望:2
帖 子:711
专家分:1788
注 册:2012-10-13
收藏
得分:10 
动态错误有没有我就不知道了,但是静态错误都解决了:
程序代码:
#include<stdio.h>

#define SIZE 10

void bubbleSort( int *const sPtr, const int size );
void swap( int *a, int *b );

int main(void)
{
    int s[SIZE] = { 2, 4, 6, 8, 10, 33, 1 };
    for( int i = 0; i < SIZE; i++ ){
        printf( "%d ", s[i] );
    }
    bubbleSort( s, SIZE );
    for( int i = 0; i < SIZE; i++ ){
        printf( "%d ", s[i] );
    }
    printf( "\n" );
    return 0;
}
void bubbleSort( int *const sPtr, const int size )
{
    int i;
    int j;
    for( i = 1; i < size; i++ ){
        for( j = 0; j < size - i; j++ ){
            if( sPtr[j] > sPtr[j + 1] )
                swap( &sPtr[j], &sPtr[j + 1] );
        }//end inner for
    }//end for
}
void swap( int *a, int *b )
{
    int c;
    c = *a;
    *a = *b;
    *b = c;
}


 

I have not failed completely
2013-01-23 21:25
神龙赖了
Rank: 10Rank: 10Rank: 10
来 自:萨塔星
等 级:青峰侠
威 望:2
帖 子:711
专家分:1788
注 册:2012-10-13
收藏
得分:5 
#define SIZE 7
必须这么写,因为只有七个有效元素,不然:
 for( int i = 0; i < SIZE; i++ ){
        printf( "%d ", s[i] );
只有七个有效元素,这里当i = 7时行为时未定义的

I have not failed completely
2013-01-23 21:32
快速回复:简单的指针运用程序,帮忙查查
数据加载中...
 
   



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

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