| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3798 人关注过本帖
标题:发两个程序,以视今天下午的学习成果,如果你也是初学者,一起加油!!!
只看楼主 加入收藏
马也
Rank: 1
等 级:新手上路
帖 子:31
专家分:7
注 册:2012-1-24
结帖率:0
收藏
 问题点数:0 回复次数:69 
发两个程序,以视今天下午的学习成果,如果你也是初学者,一起加油!!!
本人为了考研最近在猛力的复习C,虽然大二的时候学过点,不过那时候完全是为了过二级,两年过后都还给老师了,而且当时只是死记硬背,没有试着去理解其中的精髓,现在用谭浩强老师的书复习,现在配合着严蔚敏老师的《数据结构》,试着入门,今天下午编写了两个一维数组的简单程序。没有论坛各位大神的水平,现在只求掌握基础,循序渐进,希望各位不要笑话。

1、颠倒数组中元素的顺序:
程序代码:
#include<stdio.h>
void main()
{
    void inv(int *x,int n); 
    int a[10];
    int i,*p;
    printf("The original array:\n");
    for (i=0;i<10;i++) scanf("%d",&a[i]);
    printf("\n");
    inv(a,10);
    printf("The array has been inverted:\n");
    for(p=a;p<(a+10);p++) printf("%d ",*p);
}

void inv(int *x,int n)
{
    int temp,i,j,m=(n-1)/2;
    for(i=0;i<m;i++)
    {
        j=n-1-i;
        temp=*(x+i);
        *(x+i)=*(x+j);
        *(x+j)=temp;
    }
    return;
}


2、对数组元素进行从大到小排序:
程序代码:
#include<stdio.h>
void main()
{
    void sort(int *x);
    int i,*p;
    int a[10];
    for(i=0;i<10;i++) scanf("%d",&a[i]);
    printf("\n");
    sort(a);
    for(p=a;p<(a+10);p++) printf("%d ",*p);
    printf("\n");
}

void sort(int *x)
{
    int i,j,temp;
    for(i=0;i<9;i++)
    {
        for(j=i+1;j<10;j++)
        {
            if(*(x+i)<*(x+j))
            {
                temp=*(x+i);
                *(x+i)=*(x+j);
                *(x+j)=temp;
            }
        }
    }
    return;
}


这两个程序是自己编写的,和谭浩强书上的程序略有差别,不过都运行成功了。
我的学习心得是:
1、不要一味的抄书,先理解书上算法的思路,这个很重要,然后根据自己的习惯和爱好编写程序。
2、注重细节,作为初学者,因为不熟练,总会出现编写过程中的语法错误,有时候很难发现,所以当发现错误时(哪怕很细微,例如该用“,”时用了“;”),都应该记录下来,一面下次再犯,减少不必要的修改时间,提高学习效率。
3、结合《数据结构》学习我觉得是很重要的,这门课深刻的讨论数据之间的关系,有助于初学者更好的掌握算法的思路和精髓,让编写过程中的思路更加清晰。

以上是今天的学习心得,希望和正在学习C的同学们交流!
收到的鲜花
  • TonyDeng2012-08-08 15:46 送鲜花  10朵   附言:为你的心得加分
  • demonleer2012-08-09 08:56 送鲜花  10朵   附言:为你的精神鼓掌
搜索更多相关主题的帖子: 元素 笑话 老师 
2012-08-08 15:42
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:0 
回复 楼主 马也
打基础要养成好习惯,把main函数里面的函数声明放在前面
收到的鲜花
  • demonleer2012-08-09 08:57 送鲜花  10朵   附言:优秀评论

总有那身价贱的人给作业贴回复完整的代码
2012-08-08 15:59
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
加油哦
2012-08-08 15:59
马也
Rank: 1
等 级:新手上路
帖 子:31
专家分:7
注 册:2012-1-24
收藏
得分:0 
回复 2楼 embed_xuel
您的意思是把函数声明放在main函数外边?放在include下边?是吧?
2012-08-08 16:02
马也
Rank: 1
等 级:新手上路
帖 子:31
专家分:7
注 册:2012-1-24
收藏
得分:0 
回复 3楼 zklhp
谢谢哈~呵呵,觉得还挺有意思的,尤其程序运行成功的时候~
2012-08-08 16:02
dsl975708035
Rank: 3Rank: 3
来 自:平凉
等 级:论坛游侠
帖 子:101
专家分:152
注 册:2012-8-3
收藏
得分:0 
come on!!

唉,初三要停停了,舍不得啊。。
2012-08-08 16:15
wnn2025
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2012-8-8
收藏
得分:0 
函数声明呢。。不能放到主函数里面的
2012-08-08 16:49
小习小习
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:6
帖 子:1467
专家分:4792
注 册:2012-7-2
收藏
得分:0 
学习了…

实现自己既定的目标,必须能耐得住寂寞单干。
2012-08-08 17:10
小习小习
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:6
帖 子:1467
专家分:4792
注 册:2012-7-2
收藏
得分:0 
回复 7楼 wnn2025
可以吧

实现自己既定的目标,必须能耐得住寂寞单干。
2012-08-08 17:14
马也
Rank: 1
等 级:新手上路
帖 子:31
专家分:7
注 册:2012-1-24
收藏
得分:0 
回复 7楼 wnn2025
放是可以放,谭的书上是这样写的,我一开始到是不知道能放外面。

不过听二楼的前辈说了一些,觉得放外面比较好,因为如果程序复杂,涉及到很多函数的调用,放到主函数里面看起来比较凌乱,容易产生错误,还是把所有函数的声明都放在最前面的好。
2012-08-08 17:28
快速回复:发两个程序,以视今天下午的学习成果,如果你也是初学者,一起加油!! ...
数据加载中...
 
   



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

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