高级程序员考试题库

2024-09-11

高级程序员考试题库(精选9篇)

高级程序员考试题库 第1篇

摘自:http://forum.yorkbbs.ca/showtopic-611095.aspx forcode:一个牛人,34天把初级高级sas认证全过了

SAS程序员/高级程序员考试心得

一、为什么要考SAS程序员/高级程序员

我选择考SAS主要是因为三个原因:其一,我读的研究导向的金融硕士有一门课需要用到SAS,我想先熟悉一下;其二,一位在Hedge Fund工作的前任校友,在介绍求职经验谈到SAS时说The much the better;其三,网上大家的评论都是:SAS是在实业界使用最广泛,雇主最认可的企业级统计软件。那么是不是这样呢,我做了一点研究工作:我打开网站,登录后点击JobSearch,分别输入各个统计相关软件的名称,从而得到和统计软件相匹配的工作的数目如下:

1.SAS: Jobs 1-25 of 2989 matches.2.Stata: Jobs 1-25 of 40 matches.3.SPSS: Jobs 1-25 of 768 matches.4.SPlus: Jobs 1-25 of 26 matches.5.Eviews: Jobs 1-15 of 15 matches.6.Matlab: Jobs 1-25 of 1043 matches

7.tsp: Jobs 1-25 of 76 matches.8.limdep: Jobs 1-3 of 3 matches.9.Minitab: Jobs 1-25 of 224 matches.10.Statistica: Jobs 1-6 of 6 matches.11.Excel: Jobs 1-25 of thousands.由上可见,Excel是使用最广泛的,这也很合理。然后就是SAS和Matlab,其他软件在某个特定领域可能有较广泛的应用,但是在实业界的雇 主认可方面就要差一些。Stata很强大,也很好用(比SAS易学易用),很多搞研究的朋友都用它。但在实业界的认可实在是低了一些。但是有一点要注意,以上只是对SAS的雇主认可程度,不是对SAS认证的认可程度。我感觉这个认证知道的人是不多的。不过得到这个认证应该能够向雇主证明自己在SAS应用方 面达到了专业水准,这就足够了。

我觉得一个东西有用,而且对于自己的职业,自己的job market niche有帮助,就有必要掌握它。古人云,工欲善其事,必先利其器。又有俗语说,磨刀不误砍柴工。能够先系统地把一个软件学习一下,在应用的时候就能节 省大量的时间和精力,也为工作提供更大的灵活性。通过考试以后,事实也证明了我的设想,对SAS的各个模块特别是Macro和Proc SQL的掌握(都是Advanced Programming的内容),给我以后的research project带来很多便利。我只需要所有的输入,然后一切都在SAS中解决,而没有学过SAS的同学就非常吃亏,一边上专业课,一边学SAS。很多 data manipulation一复杂,就傻眼了。只好或者手动操作,或者在Excel做运算,再导入到SAS中进行分析。

潜在的陷阱

SAS程序员/高级程序员考试涉及的是纯编程的内容,完全不涉及SAS的各个功能强大的模块。雇主很可能不了解这一点,我们就有可能获得更多的机 会。但是,自己不要陷入这个陷阱。对雇主所要求的功能模块要熟悉,不要等到要用的时候说,对不起,虽然我是SAS程序员/高级程序员,但是我没有学过这个 模块。

SAS程序员/高级程序员考试并不难,认真看资料,认真看Practice Exam,仔细记笔记。大家投入合理的时间,应该都可以通过。此外,我考SAS是在2006年的夏天,对于资料的时效性以及SAS公司可能有的改动,大家 要注意(这个考试不是太热门,改动即使有也不会太大)。

二、SAS程序员考试心得

我先在网上查了一下SAS认证的信息,看了一下别人的考试心得。主要的网站有:

SAS Certification Home :

等相关网址查看购买方法。

全部准备完毕,花了约14天时间。然后去考试,考试费用同样5折,是US $75(我和SAS联系,得知上次使用的Promotional Code还没有过期,这次在Prometric上注册考试时可以继续使用)。考试也没有什么问题。对于SAS Advanced Programming, 只要认真看了资料4、5、6,考试一定过。

欢迎大家讨论。

因为我家里不能上网,没能及时回复,请谅解。我觉得你不要太着急,如果你觉得SAS对你有帮助,多花

点时间准备也不影响大局。况且现在在网上预约考试很方 便,你完全可以准备好了再预约。我都是复习得差不多了才预约两三天以后的考试。文中的资料1、2、3都是在SASOR网站上下载的。

培训教材下载网址:

Summaries and Quizzes of SAS Online Tutor for Base Programming:

http://sasor.feoh.net/modules.php?name=Downloads&d_op=getit&lid=2

Base Programming Practice Exam

http://sasor.feoh.net/modules.php?name=Forums&file=viewtopic&t=1404&highlight=Practice+Exam&sid=ff7e5483bd780a7cba125f74db103706

我记得我还下载到过答案和解释的,不过现在找不到了。

希望这些能够对你有所帮助。

Alternative Download address

little sas book:

http://newdisk.cn/pick.aspx?code=902832243

SAS online tutor base:

http://newdisk.cn/pick.aspx?code=1951014386

SAS online tutor advance:

http://newdisk.cn/pick.aspx?code=370540326

高级程序员考试题库 第2篇

在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。错选、多选或未选均无分。

1. 可以用作 c 程序标识符的一组是( )

a.print b.iam

oodb one-half

abc 3pai

c.pxq d.cpp

line# pow

his.age while

2. 以下叙述正确的是( )

a. 宏名必须用大写的英文字母表示

b. 宏定义不仅是符号替换,也可以赋值

c. 宏替换是在程序编译时完成的,不占用程序运行时 间

d. 引用带参数的宏时,实际参数与宏定义中的形式参数类型应一致

3. 设 char a= ' 70 ' ; 则变量 a 中( )

a. 包含 1 个字符 b. 包含 2 个字符

c. 包含 3 个字符 d. 是非法表示

4. 设 long i=65539;, 执行语句 printf( " %d " ,i) ;后的输出结果是( )

a.-3 b.3

c.65539 d. 数据不确定

5. 设 float c,f;, 将数学表达式 c= (f-32) 能正确表示成 c 语言赋值表达式的是( )

a.c=5*(f-32)/9 b.c=5/9(f-32)

c.c=5/9*(f-32) d.c=5/(9*(f-32))

6. 设 int i=10;, 表达式 30-i<=i<=9 的值是( )

a.0 b.1

c.9 d.20

7. 以下不能看作一条 c 语句的是( )

a.{;} b.a=5,b=5,c=5;

c.if(x>=0&&y=0); d.if(x= =0)a=5;b=10;

8. 在函数调用时,以下说法正确的是( )

a. 函数调用后必须带回返回值

b. 实际参数和形式参数可以同名

c. 函数间的数据传递不可以使用全局变量

d. 主调函数和被调函数总是在同一个文件里

9. 设 int x=7;, 执行语句 x=x <<2; 后,变量 x 的值是( )

a.1 b.3

c.14 d.28

10. 执行语句 printf( " |%9.4f|n " ,12345.67); 后的输出结果是( )

a.|2345.6700| b.|12345.6700|

c.|12345.670| d.|12345.67|

11. 以下说法中正确的是( )

a. 字符型变量可以存放字符串

b. 递归调用是指函数调用自己

c. 所有的外部函数只能在本文件中被调用

d. 在循环体中 break 语句和 continue 语句的作用都是结束循环

12. 设 char s[6],*ps=s;, 则正确的赋值语句是( )

a.s= " 12345 " ; b.*s= " 12345 " ;

c.ps= " 12345 " ; d.*ps= " 12345 " ;

13. 设 int a[ ]={1,2,3,4,5},*p=a;

则数组元素的正确表示是( )

a.a[2] b.&(a 1)

c.a[5] d.&p

14. 对二维数组的正确定义是( )

a.int a[ ] [ ]={1,2,3,4,5,6}; b.int a[2] [ ]={1,2,3,4,5,6};

c.int a[ ] [3]={1,2,3,4,5,6}; d.int a[2,3]={1,2,3,4,5,6};

15. 字符数组 s 不能作为字符串使用的是( )

a.char s[ ]= " happy " ;

b.char s[ ]={ " happy " };

c.char s[6]={ ' h ' , ' a ' , ' p ' , ' p ' , ' y ' };

d.char s[4]={ ' h ' , ' a ' , ' p ' , ' p ' , ' y ' };

16. 若定义函数:

fun(int a,float b)

{return a b;

}

则该函数的数据类型是( )

a.int b.void

c.float d. 不确定

17. 设

struct st

{ int a;

float b;

}s, *p=&s;

则正确的引用是( )

a.(*).s.a b.(*p).a

c.p->s.a d.p.s.a

18. 设 enum color {red,yellow=2,blue,white,black}r=white;, 执行 printf( " %d " ,r) ;后的输出结果是( )

a.0 b.1

c.3 d.4

19. 以下说法中错误的是( )

a. 共用型数据中所有成员的首地址都是同一个

b. 可以用已定义的共用型来定义数组或指针变量的类型

c. 共用型数据中的成员可以是结构型,但不可以是共用型

d. 用 typedef 定义新类型取代原有类型后,原类型仍可有效使用

20. 设 #define l(x) 2*3.14*x

则 l(x) 是( )

a. 函数名 b. 函数调用

c. 无参的宏名 d. 带参的宏名 二、填空题(本大题共 10 小题,每小题 2 分,共 20 分)

请在每小题的空格中填上正确答案。错填、不填均无分。

21. 设 int a[10]; 则数组 a 的首元素是 __________________ 。

22. 设 int a=0,b=0,c;, 则执行 c=(a-=b-5),(a=b,b=3); 后变量 c 的值是 __________________ 。

23. 设 int a=0,b=0,c=2,d=4;, 则执行 (c=a= =b)||(d=b= =a); 后变量 d 的值是 __________________ 。

24. 设 int a[ ]={1,2,3,4,5,6,7,8},*s=a ;

则 *(s 1) 的值是 __________________ 。

25. 设 char s[ ]= " apple " ;, 则数组 s 的长度是 __________________ 。

26. 被调用函数执行结束时,此函数中定义的 __________________ 类型的变量不被释放。

27. 表达式的运算对象可以是常量、函数调用和 __________________ 。

28. 设 int x;, 则将 x 强制转换为双精度类型应写成 __________________ 。

29. 语句 if(!k)a=3; 中 !k 与 __________________ 等价。

30. 函数调用时,若形参是一个指针变量,而对应的实参是一个数组名,则函数参数的传递方式是 __________________ 传递。

三、程序分析题(本大题共 5 小题,每小题 5 分,共 25 分)

阅读下列程序,将输出结果写到各题右侧的空白处。

31.main( )

{

int a[3][3]={{1},{2},{3}};

int b[3][3]={1,2,3};

printf( " ] " ,a[1][0] b[0][1]);

printf( " ]n " ,a[0][1] b[1][0]);

}

32.int a=10;

struct data {int a, b;} s;

main ( )

{ int c;

s.a=20 ; s.b=30;

c=f (s.a s.b);

printf( " %d,%d,%dn " , s.a, s.b, c);

}

f (int b)

{

printf ( " %d,%dn " ,a, b);

return (a b);

}

33.#include

fun ( )

{ int y=1;

static int z=4;

z ; y;

return (y*z);

}

main ( )

{ int i;

for (i=1; i<3; i )

printf ( " ]n " ,fun ( ));

}

34.main ( )

{ char *p,s[ ]= " 6543210 " ;

for (p=s; *p!= ' ' ;)

{ printf ( " %sn " ,p);

p ;

if (*p!= ' ' ) p ;

else break;

}

}

35.main( )

{

long f( );

printf( " %5ldn " ,f(5));

}

long f(int b)

{

if(b= =1| |b==2)return 1;

else return f(b-1) f(b-2);

}

四、程序填充题(本大题共 3 小题,每小题 6 分,共 18 分)

给出下列程序,将横线处缺少的部分补上,使其能正确运行。

36. 键入 10 个整数,统计其中正数 (neg) 、负数 (pos) 和零( zero )的个数并将三者输出。

int neg=0,pos=0,zero=0;

void sele(int num)

{

if(num>0)neg ;

else if(num<0)pos ;

else ______________ ;/ * 第一空 */

}

main ( )

{

int i,a[10];

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

{

scanf( " %d " ,&a[i]);

printf( " ] " ,a[i]);

self(_________________); / * 第二空 */

}

printf( " nneg=%d,pos=%d,zero=%dn " ,_______________); / * 第三空 */

}

37. 输入一个学生的成绩(在 0~100 分之间,超出此范围显示错),进行五级评分并显示。

main ( )

{

int score;

scanf ( " %d " ,&score); printf ( " %d->" ,score);

if(__________________) / * 第一空 * /

switch (___________________) / * 第二空 */

{

case 9:

case 10: printf ( " excellent n " );break;

case 8: printf ( " good n " );break;

case 7: printf ( " middle n " ); break;

case 6: printf ( " pass n " );_______________;/* 第三空 */

default: printf ( " no pass n " );

}

else printf ( " input error! n " );

}

38. 键入一个字符串(换行作为结束标志),将该字符串分别写到文本文件( te.dat )和二进制文件( bi.dat )中。

#include

main ( )

{

_______________ ; /* 第一空 */

char str [80];

gets (str); puts (str);

te=fopen ( " te.dat " _______________); / * 第二空 */

bi=fopen ( " bi.dat " ,_______________); / * 第三空 */

fputs (str, te); fwrite (str, sizeof (str), 1, bi);

fclose (te); fclose (bi);

}

五、程序设计题(第 39 小题 5 分,第 40 、41 小题各 6 分,共 17 分)。

39. 输入一个圆半径( r ),计算并输出圆的面积( s )和周长( l ) .

40. 计算当 sum=1 时,输出 n 的值。

41. 用循环语句输出下列字母编排的三角形。

a

ab

abc

abcd

………

高级程序语言课程教学的教学探索 第3篇

计算机在日新月异的现代社会中成为了一个离不开的工具,使用计算机辅助学习工作,已经成为人们现实生活中的一部分。进行计算机基础课程和计算机高级程语言的教学已经成为各高校的教学计划中不可或缺的一环。在建立高校学生知识体系的过程中,掌握计算机程序设计思想,往往会对学生的后续发展起到重要作用。

2、非计算机专业中的高级程序语言教学需要注意的问题

在非计算机专业的高校学生中进行高级程序语言的教学有自身的特点。大部分学生,在学习高级程序语言设计之前,往往对计算机只是感性上的认识,存在畏难情绪,而高级语言本身又十分抽象,这就要求学生花费一定时间进行上机实践。除加强上机实践外,在教学中还需要注意教学的方式方法,充分使用器材教具,由浅入深,培养学生的对高级语言的兴趣,让学生自主,自发的好好学习这门功课。

3、对主要教学方法的探讨

在对计算机高级语言的教学过程中,笔者对整个教学环境进行了思考,并且在实际教学过程中采取了一些新的教学方法。主要教学方法如下:

3.1 结合生活场景,建立程序思想

在教学过程中,如果单纯依靠对书本的讲解,很难让学生树立各种程序思想。而一旦将一些生活场景带入教学,学生则会有心领神会的体验。这样,一方面调动了课堂气氛,一方面将计算机的各种设计思想初步介绍给学生。而学生往往对身边现实世界的熟悉的事物能够很快接受,进而由此及彼的对计算机世界的东西产生一定的理性认识。

例如:

在介绍分支结构的时候,引入正式课程前,询问学生们过年过节回家购买车票的情况,以及回家的路线。有远途的学生说了,如果飞机票打折6折以下,就坐飞机,否则就坐火车。得到学生回答后,再正式引入分支结构。并在板书上写下:

如果飞机票打折<6折

坐飞机

否则坐火车

再将这些现实语义的语句改写成程序设计语言中的分支结构

让学生认识到,分支结构不止在程序中有,在日常生活中也有。使学生能够理性的了解到分支结构需要进行逻辑判断。之后,再对分支结构的教学,就容易的多了。

3.2 采用现代化教学工具的同时辅助使用各种教具,同时进行适量的板书

现代化的教学工具,如计算机辅助教学,的应用,极大的方便了老师对知识点的讲解。使用flash动画或者ppt文档已经成为现在高校教学中的一个重要特点能。在讲解链表的时候,如果此前做好了flash动画,可以非常方便的讲解如何创建节点,如何建造链表,如何查找特定信息的节点,如何在特定位置插入、删除节点。使用动画来演示这些步骤,可以增强学生对这些特定信息的感知。而辅助教具的使用也是可以帮助学生对特定知识的认识的。比如讲授函数的时候,使用积木,让学生把函数看成积木,使用同样的积木,搭建不同的东西,更换几个组合就可以了,模块化的函数思想,就比较容易被学生接受。有的时候又必须进行板书。如:在讲授字符串和字符串数组以及二维指针的时候,如果使用板书,可以在板书的时候进行讲解,放慢速度讲授速度,增加板面演示时间,帮助学生了解指针关系的演算变化。这三种方法是相辅相成的,如果要学生比较好的理解高级语言设计,教师是不可以只使用一种教法的。

3.3 小组模式,因才而教

每个学生都有好胜心,都追求成就感。有些学生对高级语言的理解比较好,通过1, 2次上机试验之后就能看出来。将学生分组,每组成员之间的水平有差异是很正常的,要通过一定的手段,让组与组之间进行对比,而不是个体学生与个体学生之间进行对比。这样,小组内的同学能够在平时作业的时候互相学习,互相帮助。比如:编成2人一组的小组,布置一定的任务,要求小组完成。讲解一些算法的时候,布置作业,然后下一次上课随机抽一组学生在课堂上进行算法讲解。这样,既可以督促学生完成算法学习的作业,又可以让学生锻炼一定的表达能力,还可以增加学生的成就感,同时激励了其它小组学生的好胜心;在同组讨论的时候,增强了学生对问题的敏感度,锻炼了学生问问题、答问题的能力,培养了他们听取不同观点,说服不同见解的能力,改变了他们单枪匹马搞学习的习惯,增进了他们团队合作的思维。一举数得。

3.4 要求完成大型作业

程序设计是系统知识。如果为了应考而学习,只能学习到分散的知识点。只有将知识点组合起来,才能成为一个体系。当一个大型的作业放在学生面前的时候,学生只有将所学的知识统统组合起来,使用正确的方法,在耐心的编写、纠错、调试之后,才可能上交。以小组为单位,完成大型作业的过程,是个痛苦的过程,同时也是一个学习的过程,在这个过程中,学生锻炼了设计能力,综合应用能力,查找资料能力,纠错能力,发现问题讨论问题能力。在编写小程序的时候碰不到的问题,一定会在大程序中出现。而一些在学生理解中似是而非的东西,也可以在这一过程中去伪存真。完成这样的作业后,小组内成员的水平会接近到一定程度。这样的大型作业,应该包括各种数据类型的输入输出,指针的使用,结构体变量的使用,各种编程时的语言结构,文件的存取。选择一个初级档次的信息管理系统是最合适的。

3.5 在教学过程中带领学生一起思考,深入浅出用启发式手法指导学生进行设计

程序设计对于没有接触过程序设计的人而言是十分困难的。教师需要带领学生走出痛苦的第一步。在教学过程中,可以在引入一些比较经典的问题,带领学生一起求解这些问题。这样可以帮助学生更好的发现程序设计的规律

比如在讲解循环的时候,讲授嵌套循环往往是难点。此时,由浅入深的带领学生解决几个问题:

打印一个星号"*";

打印一排5个星号"*****";

打印五行五列5*5个星号。

打印1个星号基本大家都会,打印5个星号,无非是加上一个循环,循环5次,打5个星号。而打印五排五列,无非是再在外面加上一个循环变量,增加一次外部循环。于是大家很高兴的发现其实嵌套循环并不难。此时再引入一个稍微困难点的题目:

打印一个平行四边形

经过学生自己讨论后发现,原来只要加打几个空格就能实现变化。而空格的个数,第一排是4个,第二排是3个,第三排是2个,第四排是1个,第五排是0个。至需要再添加一个内循环,专门打印空格就可以了。此时的循环控制语句,循环开始的时候为4,每次递减1。于是大家经过一段思考终于打出平行四边形。此时再引入一个困难的题目:

打印等边三角形

此时,经过学生讨论后发现,在上一个程序的基础上,需要修改打印星号的循环语句,而且需要使用一定的推导能力才能够知道打印星号的次数如何使用内循环确定。此时,可能会比较少的学生能够在课堂上打出。在讲解、实现完基本的实现方案后,引入一个更困难的题目:

打印树形结构:

留给学生回家后思考算法,并于下一次课上抽取小组做讲解。

循环嵌套的讲授内容完成了,将一个困难的问题,分解为很多简单问题,循序渐进,启发学生思考,这个过程比较能够让学生接受,既不会因为感觉太难而失去信心,又不会因为感觉太容易而掉以轻心。

3.6 利用网络平台答疑解惑

对于新接触高级语言的学生来说,疑问一定少不了,答疑因此成为必要。除定期的上机实践、答疑外,还可以利用现代化计算机网络进行。答疑不一定要固定时段,利用各种平台,如:学校信息门户中的教学网络平台的讨论区,各个班级的QQ群的讨论区。问的问题可以在这些平台上及时的传递给老师,老师的反馈也可以及时的传到同学中去。同样的问题,在网络平台上搜索,还可以得到解答。利用网络平台,可以增加答疑效率,使得答疑工作随时随地都可以进行。老师还可以经常在网络平台上对难点进行点评,让学生对难点有更深刻的理解。网络平台上还可以存放各种资源。如:课件、经典算法程序、作业答案。计算机网络平台的使用为教学提供了又一广阔的空间。

4、结论

在非计算机专业中讲授高级语言程序设计,方法是多样灵活的。本文仅仅提出了几点教学方面的意见。需要指出的是,高级语言设计,对学生来说,最重要的是培养程序化思维和标准化思想。如果这些思维和思想在这门功课中培养起来,对学生未来的专业学习是很有帮助的。

摘要:计算机高级语言成为高校教育的一环, 本文对高级程序语言的教学方法提出了一点看法, 提出一些高级程序语言教育改革的建议。

关键词:高级程序语言,教学方法

参考文献

[1]、范慧琳.C语言程序设计习题解析与实验指导, 中国铁道出版社, 2007-02

高级语言程序设计课程教学探究 第4篇

关键词 高级语言 教学设计 教学方法

中图分类号:G633.67 文献标识码:A

我校以C语言作为高级语言程序设计的目标语言进行教学设计,本人在多年的教学实践中,努力探索新的教学方式,认真研究不同的教学方法,大大提高了学生的学习积极性,取得了一定的教学效果。

1 精心设计课程实施方案,注重理论与实践相结合

对于高等院校的学生来说,很多学生在开始接触高级语言程序设计课程时,由于对C语言认识不深刻,认为C语言过时了,不值得学,学习积极性不高。因此在进行教学设计时对教学内容与教学方法要进行精心设计,不能只是单纯的讲授C语言的语法,而应将理论教学与实践教学并重,并将之紧密结合、互相促进,提高学生的积极性,以求达到最佳教学效果。在实际教学中应充分发挥C语言解决实用问题的导向作用,将枯燥的理论生动演绎为解决问题的利器,通过设计巧妙的教学内容,充分调动学生的积极性,让学生的思维围绕教师的思维活动。通过一些有趣实用的题目去诱导学生学习,给学生的思维中留下一定的期望与神秘感,促使学生驱动自己的好奇心,从而充分调动学生主动学习的欲望。

2 改进教学方式,采用多种教学方法

要取得良好的教学效果,仅仅进行教学设计是远远不够的,还要结合灵活多变的教学手段进行教学,让学生真正参与教学过程,真正做到“学为主体,教为主导”。

2.1 传统讲授式教学方法

讲授演示教学法是在传统教学方法的基础上,进行适度的改良,以学生对具体知识和技能的掌握作为主要目标进行教学的方法,它主要由以下四个步骤。

首先由教师导入问题。教师在了解学生已有的知识结构、专业水平的基础上,由简单问题导入新的教学内容,让学生感受到新知识在解决实际问题中的作用,从而激发学生对新知识的学习兴趣。

第二步,教师进行讲解演示。教师通过自己深入浅出的讲解,要让学生理解新知识的应用原理,做到“知其然,并知其所以然”;然后演示操作步骤,详细说明操作的实现过程。

第三步,学生自主实践。按照教师的演示讲解,学生自己动手实践新知识的应用,教师从旁指导答疑,让学生真正理解掌握新知识。

最后进行总结练习。教师对整个教学活动进行归纳总结,突出教学重点、难点,同时了解学生对新知识的掌握程度。在此基础上,由学生自己通过练习,逐步对新学知识达到完全掌握和熟练运用。

2.2 实例研究教学法

实例教学法是指根据典型的例子采用不同的解决方式进行教与学,使学生能通过实例来掌握新知识。例如:编程求1+2+3+……+100之和,这是循环语句典型的求累加的问题。针对这一问题,即可以采用while、do-while语句来实现,也可以采用for语句来实现。通过同一问题的三种实现方法,让学生掌握三种循环语句的原理、特点和用法,了解它们之间的相同点与不同点,以及三种语句的使用范围等知识点。

实例研究教学法以精选出的程序实例为中心,把学习的重点放在实例的讲解上,把要学习的语法结构和概念融入到具体实例中,整个教学过程中强调学以致用,避免了枯燥、繁杂的理论说明,不仅增进了学生的学习积极性,同时对提高学生综合分析能力和解决实际问题的能力有很大帮助。

2.3 探讨式教学法

探讨式教学法是教师在教学中根据教学要求和重难点设计问题,学生在教师引导下参与课堂研讨,分析问题、解决问题,从而启发学生思维并培养学生能力的一种教学方法。在C语言程序设计教学中,探讨式教学法能够突出学生的主体地位,充分发挥学生的主观能动性,有效地培养学生分析问题与解决问题的能力。

当然,在实际教学过程中可采用的方法还有很多,如案例教学法、研讨式教学法等,正所谓“教学有法,教无定法”,全看你怎么使用。只要能取得良好的教学效果,完全不必拘泥于任何一种教学方法,多种手段并用。

3 利用实践操作,提高学生应用能力

高级语言程序设计是一门实践性非常强的课程,对于将其作为基础课来学习的学生来讲,实践课的课时安排普遍不足,因此在教学过程中要充分利用有限的实践课时间,尽可能地提高学生的操作能力。而教材上的例题、习题基本以算法设计为主,内容枯燥不易编写,学生上机积极性不高,程序设计过程的成就感不强,因此在实践内容的安排上不能简单的让学生照抄或直接编写程序。在实验过程中,可以让学生先做基本的实验,通过实验理解课堂上所学习的理论知识;再通过验证书上的例题,理解并掌握程序设计的步骤,进而能自己进行课后习题的程序设计;最后通过一些算法设计与过程设计相结合的提高性实验,一步一步的提高学生的实践应用能力。

对每一个知识点,可以设计一些紧扣知识点的相对简单而趣味性强的问题,学生在实验时由浅入深,循序渐进,每次实践都能有收获,这样将极大地提高学生编写程序的积极性。在此基础上,再布置相对复杂一些的算法设计问题,学生就能够有信心有能力综合应用所学知识进行设计,解决问题。当然趣味性的题目只是培养学生兴趣的手段,要真正让学生学好C语言,关键还是让学生充分掌握运用C语言解决实际问题的能力。因此无论在课堂上讲的例题,还是课后布置的作业,都可以设计一些与专业相关的实用性较强的题目,来培养学生的创新能力和自主学习能力。

当然,一门课程的教学效果如何,除了教师的精心组织和讲解之外,学生的学习积极性也是一个关键。只有教师和学生共同努力,充分互动,才能切实提高教学效果,才能真正让学生学有所获,才能避免理论与实践脱钩,也才能充分调动学生的积极性。

高级程序员简历 第5篇

性 别:男 身 高:173

婚姻状况:未婚 籍 贯:湖北咸宁

政治面貌:群众 目前所在地:义乌

• 求职意向

期望职位:业务

职位类型:全职 工作地点:义乌市

工资待遇:面议 住房要求:包吃住

• 工作经验

工作经验:2年

工作经历:

.8-2008.12 北京群星快递有限公司 程序开发数据库

.3-.7 温州连欣科技有限公司 市场开发 销售主管

• 教育背景

最高学历:中专 毕业院校:北大青鸟

所学专业:计算机科学与应用 毕业时间:2008-1

第一外语:汉语 水平:普通

计算机能力:熟练 其它能力:

所获证书:高级程序员

教育培训经历:

高级程序员个人简历 第6篇

姓 名: glzy8.com

性 别: 女

年 龄: 2

2民 族: 汉族

户 籍: 湖北 襄樊

最高学历: 本 科

现所在地: 广东 广州

毕业院校: 西安科技大学

所学专业: 计算机科学与技术

教育/培训

2004年9月-2008年6月 西安科技大学 计算机科学与技术 本科

2006年6月-2006年9月 西安科技大学 jsp+servlet

2007年6月-2007年9月 西安科技大学 ssh框架

工作经验至今有 1 年工作经验

▌西安极光软件有限公司 2008年5月-2009年10月

公司性质:私营企业 行业类别:计算机业(软件、数据库、系统集成)

担任职位:计算机业(it)类-网页设计师

工作描述:根据用户的需求参与项目需求的分析,以保证项目后期顺利编写

根据公司下达的任务,负责项目的编码,对开发的代码进行集成测试

监控,维护公司软件应用系统的运行

技能/专长

语言能力: 英语(一般);普通话(标准)

计算机能力: 高级程序员

技能专长: ★ 有扎实的网络基础知识,了解tcp/ip、udp等网络协议

★ 精通html、javascript、css等网页设计语言

★ 扎实java 基础知识,熟悉面向对象的编程思想,掌握常用设计模式

★ 熟悉 jsp、servlet、jdbc、xml等web开发技术

★ 熟练运用struts、hibernate、spring等j2ee企业架构核心技术

★ 精通mysql、sqlserver2000、sqlserver2005、oracle等各种数据库操作

★ 熟练使用eclipse、jcreatorpro、dreamweavermx等开发工具

★ 熟练tomcat、jdk、jboss等web服务器的应用

★ 了解linux操作系统

求职意向

求职类型: 全职

待遇要求: ¥元/月(不面议)

希望岗位: 计算机业(it)类-软件工程师;计算机业(it)类-数据库开发与管理(dba);计算机业(it)类-网页设计师

希望地区: 广东广州

最快到职: 个月以后

自我评价

1.能够快速的适应各种工作环境,具有良好的分析能力,自学能力,适应能力;

2.工作积极进取,对it领域的软件开发和设计工作有浓厚的兴趣;

3.具有良好的人际交往、组织及沟通协调能力以及团队精神;

4.为人诚恳,踏实肯干,认真负责,敢于面对困难和挑战,爱岗敬业。

联系方式

联系电话:020-22001427

c#高级程序员面试题 第7篇

3.谈一下ASP.NET页面生命周期

4.ASP.NET程序的运行机制。可以从一个页面的请求到返回的角度谈

5.Javascript中类库的制作和调用方法

6.AJAX原理及你所知道和使用过的版本

7.WebService使用的协议及简述使用流程

8.谈一下WebService的安全性及相关技术

9.事务操作的原理及同库事务及跨库事务的思路

10.简述你的一个项目,主要的流程及部署

11.谈一下你对SOA的理解及熟习的SOA架构

12.谈一下你对SaaS的理解

13.你是否在ASP.NET之外还会JAVA、PHP?

14.如果让你设计一个登录模块,你会怎么考虑和制作?

15.如果让你制作日志模块,你会怎么考虑和制作?

16.如果让你制作用户权限模块,你会怎么考虑和制作?

17.如果让你做文件上传模块,你会怎么考虑和制作?如果文件大于1G你会怎么考虑设计?

18.是否了解及使用过WCF、WF、WPF?

19.Web页面的打印及报表的输出思路?

20.报表的制作思路?

21.谈一下你对.Net中垃圾回收的理解?

高级语言程序设计教学方法探讨 第8篇

1 课程定位

从1999年至今,国内大学办学模式呈现多元化发展,独立学院的办学模式也有所发展。在十多年的发展历程中,各独立学院都在不断探索适合自身的教学教研和人才培养模式。基于独立学院学生的综合素质和专业设置,我们在信息技术相关专业的教学中可以采取如下的思路:在理论教学中突出够用、能用、会用,在实践教学突出基本技能、专业工作能力和综合技能,在实验教学中突出基本实验、综合实验、仿真与开放实验。换句话说,我们可以将学生的培养目标定位为培养应用型本科人才,以匹配社会就业的要求。同时,独立学院作为正规本科,所培养的应用型本科人才应区别于高职高专学校培养出的技能操作应用型人才。

编程语言类课程是各高校信息技术类相关专业的必修的基础课。我院在相关专业(包括计算机专业、网络工程专业、通信专业等)的一年级开设了《高级语言程序设计》课程。该课程为一个学年,包含了C语言和C++语言的学习,旨在培养学生的编程思维能力和实践动手能力,从而为后续的专业课程学习奠定良好的基础。

2 教学中存在的问题

在较大的范围内,编程语言的教学往往存在理论性强,内容枯燥困难,不易掌握等问题,而学生则缺乏学习的积极性和动力,不愿意迎难而上,为应付考试“死记”程序,缺乏思考能力和动手实践能力。结合实际教学的情况,笔者认为在目前的教学过程中可能存在以下一些问题。

2.1 学生个性化色彩浓厚

90后的学生有着广泛的途径接收各种各类的知识和信息,大多具有较强的个性。同时,作为独立学院的学生,他们与一般研究型本科院校的学生有所区别。对于教师和课本,他们并不奉为经典,在学习的过程中,带有更多的随性的色彩,往往根据个人的兴趣和情绪选择性的接收知识;对于不感兴趣的内容,则排斥心理较强。

2.2 学生功利心理较强

随着社会就业压力的增大,越来越多的学生从一入学就感受到这种压力,越来越多的学生在学习知识和技能的时候首先考虑的不是怎么学好,而是“有没有用”。而对于基础类的课程,由于课程性质和课程定位的限制,往往受到这种思想的强烈影响。学生比较容易忽略基础课程的重要性。

2.3 学生存在畏难心理

学生在学习上存在依赖和畏难心理,希望教师提供最为详细的思路和步骤,而由自己完成按部就班的执行。较多学生不够重视大学与高中两个不同阶段学习方法和培养目标上的差异。大学阶段的学习中,教师更多的承担着引导者的角色,而希望学生能够具备一定的自学能力。但是一年级的新生在这个转换的过程中存在一定的困难,从而容易导致因困难而放弃,最终影响学习。

2.4 实验辅导缺乏针对性

部分教师在教学过程中过于强调理论的讲授,而忽略了本课程所要求的动手实践能力。同时由于实践教学的时间相对较少,单个教师面对的学生数较多,在实验教学中没有足够的面对单个个体学生的指导实践,在实验中的指导具有广泛性而缺乏针对性。

教与学的任何一个环节出现问题,都将影响最终的教学效果。在开展教学的过程中,教师需要进一步的完善自身,改进教学方式方法,同时要更加注重对于学生的引导,通过不同的方法促进、激发学生的学习积极性与主动性,避免学生出现厌学情绪和急功近利的不良心理。

3 教改实践与体会

经过几年教学活动的开展,本课程的教学改革取得了一定成效,积累了较多经验。

3.1 培养学生兴趣,提高学习积极性

兴趣永远是自主学习的关键。我们可以采取多样化的教学方法来激发学生的学习兴趣,逐步的进行引导,使学生逐渐适应编程学习,养成良好的编程思维。首先,在课程初始时,教师可以通过作品展示的形式为学生建立一个实践目标,并注意作品选择过程中的难度和趣味性,在起始阶段引发学生的兴趣。其次,在教学过程中,要尽量避免大量语法性知识的直接抛出,而采取从案例中引出知识点的方式,进一步维持学生的学习积极性,阻止畏难情绪的产生。再次,在课堂案例的选择和设置中要注意连贯性,注意前后知识的衔接;在课堂上可以选择适当的案例进行例题设错,一方面强调了相关知识点的应用,另一方面也有助于提高学生的程序阅读和纠错能力。最后,实验题或课后题的设置要注意难度梯度的设置,既避免能力较弱的学生失去信息,也避免能力较强的学生丧失挑战的兴趣。

3.2 促进学生协作学习,培养团队合作精神

协作学习由David W.和Roger R.Jonson教授提出,是学生以小组形式参与、为达到共同的学习目标、在一定的激励机制下最大化个人和他人习得成果,而合作互助的一切相关行为。协作学习是一种通过小组或团队的形式组织学生进行学习的一种策略。小组内部个体之间可以采用对话、商讨、争论等形式对问题进行充分论证,以期获得达到学习目标的最佳途径。协作学习有利于发展学生个体的思维能力,增强学生个体之间的沟通能力以及对学生个体之间差异的包容能力。协作学习对提高学生的学习成绩、形成学生的批判性思维与创新性思维等都有明显的积极作用。在实际教学中,在尊重学生个体差异和确保一人一机的基础上,利用局域网,将学生分成小组进行协作实验;将实验心得体会、结论等共享,改变各自为阵,互不往来的实验组织方式。

3.3 开展课程设计,以项目方式培养实践能力

在一个学年的课程结束之后,学生积累了一定的理论知识和实践能力,在此基础上,我们可以采取课程设计的方法来使学生对于已学知识进行融会贯通,培养其工程开发能力。同时,可以让学生产生成就感,通过学习可以独立完成一个作品。除了实践能力方面的锻炼之外,课程设计中还要求学生为设计作品提供相应的开发文档,在提交作品时完成演示和答辩的环节,使学生获得文档撰写等方面的锻炼。课程设计实施以来,学生中反响良好,动手能力有了普遍提高,对于软件开发及其流程具备了一定程度的了解。

4 结束语

自2005年以来,在学院各级领导的支持下,本课程教学团队不断总结教学经验,逐步完善自身的教学技能;不断尝试新的教学方式方法,教学效果有较大提高,学生在编程能力上有一定的提高,对软件项目的开发有了一定程度的了解,为后续的专业课程的学习打下良好的基础。

参考文献

[1]张素芹,吴连生.独立学院“C语言程序设计教学改革实践”[J].计算机教育,2010(14):21-23.

[2]谢志英,王静,陈静.C语言课程中学生问题求解能力的培养[J].计算机教育,2011(3):56-61.

[3]丁海燕.C语言程序设计教学主线与教学创新[J].高等理科教育,2012,4:122-125.

[4]蒋霞.基于CDIO理论的C语言程序设计课程改革[J].电脑知识与技术,2012(27):6523-6524.

[5]王晓霞.《C语言程序设计》教学策略与效应[J].电脑知识与技术,2012(26):6310-6312.

[6]刘树锟,陈振,文雄军,梁华.应用型民办院校程序设计教学方式探讨[J].计算机教育,2011(24):84-86.

[7]吴丽娟,申海,张浩华.C语言课程设计教学模式的探索与实践[J].沈阳师范大学学报:自然科学版,2012(1):122-125.

高级程序员考试题库 第9篇

[摘 要]随着信息技术的高速发展,智慧课堂的理念和实践是当今教育界研究的热点。针对高级语言程序设计上机教学的课程特点,充分利用上机实验室的信息设备优势,采用小组合作学习、任务驱动教学、网络学习和多元化考核等教学手段,创建上机教学的智慧课堂,实现学生主动学习、合作学习和快乐学习。

[关键词]智慧课堂 高级语言程序设计 上机教学

[中图分类号] G642 [文献标识码] A [文章编号] 2095-3437(2015)08-0125-02

一、引言

在信息技术高速发展,全面建设智慧城市、智慧校园的大背景下,传统的课堂教学也面临着变与不变的外部挑战。[1]新兴技术的不断冲击,使得课堂教学不再是师生间单一的教与学关系,更多的是师生间平等的对话与互动,传统课堂已无法满足教育需要。将信息技术与教育深度融合,优化教育模式,已经成为一种必然的趋势, 由此智慧课堂这一新的教学模式便应运而生了。智慧课堂是指充分利用信息化技术,以引导学生的高度参与以及主动性的充分发挥,以自主地发现问题、研究问题和解决问题为主要学习形式,是以培养多样化、高素质、创新型人才为目标的教学方式。[2]相对以教师为中心的传统课堂,智慧课堂强调以学生为中心,注重学生的主动学习、合作学习和快乐学习。[3]

作为高校理工科电子、计算机等相关专业的一门重要基础课程,高级语言程序设计的目标是培养学生的程序设计理念、掌握程序设计的基本方法,培养学生熟练使用C语言编程解决实际问题的能力,为后续程序设计课程的学习和应用打下扎实的理论和实践基础。[4]学生是否具有较高的编程能力和良好的编辑习惯是衡量其对该课程掌握程度的一个重要指标,而编程能力的提高和编程习惯的养成离不开上机实践,因此上机实践是高级语言程序设计教学中的一个至关重要的环节。[5]

本文针对高级语言上机教学的课程特点和存在问题,充分利用上机实验室的信息设备优势,将信息技术与教育深度融合,实现上机教学的智慧课堂。

二、教学现状和问题

一般院校的高级语言程序设计理论课和上机课的比例为1∶1,由32学时理论课和32学时上机课组成。上机课目前多采用传统的“教师讲授—教师演示—学生上机练习”的教学模式,主要存在以下问题:

(1)学生编程的信心和积极性有待提高。高级语言程序设计的开课时间设在大一的第二个学期,此时绝大部分学生对计算机软硬件知识缺乏全面了解,再加上C语言本身学习起来有难度,使学生不能很快掌握算法的思维特点,编程能力、调试能力普遍较差,增加了C语言上机学习的难度。很多学生在上机的过程中非但没有对编程产生兴趣,反而还产生惧怕心理,进而放弃学习。

(2)学生自主分析问题、解决问题的能力有待提高。目前上机教学模式以教师“教”为中心,学生过多依赖于实验指导书和教师,基本处于被动接受状态。在上机课中常出现“写程序就抄书,出现问题等老师”的现象,分析错误、动手调试本是最能发挥学生能动作用的环节,现在却由教师来承担,往往导致学生离开指导书和教师就写不出程序、调试不了程序的局面,很难培养学生在程序设计上的创新能力和逻辑思维能力。

(3)机房得天独厚的信息技术环境没有得到充分的利用。一般机房都配备有计算机、高速局域网和多媒体教学管理软件,具备开展智慧课堂的条件。以我院机房为例,采用的是海光多媒体软件,海光多媒体软件是一款实现在电子教室、多媒体网络教室或者电脑教室中进行多媒体网络教学的非常好的软件,集电脑教室的同步教学、控制、管理、音视频广播、网络考试等功能于一体,并能同时实现屏幕监视和远程控制等网络管理的目的,其核心功能包括教师演示、学生示范、语音教学、遥控辅导、屏幕录制、屏幕回放、提交作业、电子抢答和文件传输等。但目前该软件主要用于教师演示和收发文件,现有的信息技术设备没有得到充分的利用,信息技术改变教育方式没有得到充分的体现。

三、智慧课堂开展内容

针对以上情况,本文将充分利用机房的信息技术环境优势,将信息技术与教学深度融合,通过分组合作学习、任务驱动教学、网络学习和多元化考核等教学手段,创建高级语言程序设计上机教学的智慧课堂,实现学生主动学习、合作学习和快乐学习。

(一)小组合作学习

针对部分学生不能单独完成编程及缺少兴趣的问题,采用分组学习的教学模式,每次上机课将学生分为4人一组,每组学生通过合作学习共同完成一个实验任务。小组合作学习一方面更能突出学生的主体地位,培养学生主动参与的意识,激发学生的学习兴趣;另一方面学得好的学生可以带动其他学生,在达到学习均衡的同时,也培养了学生的合作能力和团队精神。

分组合作学习的关键是有效地组织学生学习,没有组织的学习会使课堂变得嘈杂、分散,所以合理划分小组是分组合作学习的首要前提。主要考虑两种分组方式,第一种是学生自愿组合,第二种是教师按学生的基础分组。第一种分组方式有利于调动学生合作学习的积极性,激起学生学习的兴趣,但是自由式的小组组合很可能出现分组不均衡的现象,即学习基础好的学生分在一组,学习基础薄弱的学生分在一组;第二种分组方式需要教师在全面了解学生的前提下,根据班级内的情况,有意识地将不同基础、不同类别的学生分到一组,使班级小组间基本上是相似的、均衡的。综合考虑两种分组方式的优缺点,可交替采用两种方式进行分组。

小组划分后需进行合理分工,每一组选择一个组长,组长协助教师组织任务攻关工作,同时监督组员,避免出现“蹭组”现象。组长的选择要考虑学生的成绩、与同学间的关系等因素,可采用自由推选的方式,给每个学生改变角色和锻炼的机会,进而提高其学习兴趣。

(二)任务驱动教学

在上机实验过程中,以完成一个具体的任务为线索,把教学内容隐含在每个任务之中,要求学生在具体的任务驱动下,在讨论和对话的氛围中,进行自主学习和协作学习。这样学生在完成任务的过程中始终处于主体地位,不仅提高了学生的积极性,也培养了学生的探索与创新精神。任务完成后,随机挑选或通过海光多媒体软件的“电子抢答”功能选出若干小组,通过软件的“学生演示”功能进行演示,并引导学生进行总结和改进。

在任务驱动教学中,任务设计的质量直接关系到教学效果。在设计任务时,要以学生为中心,根据学生的实际情况和学生感兴趣的方向来设置任务,同时要注意高级语言知识点的系统性和连贯性,将理论课的知识点融入上机任务中,使学生在完成任务的过程中,既巩固已学过的内容,又探索新知识,实现总体的教学目标。

例如,在练习C语言控制结构中的选择结构时,任务设计为:设计一个程序,输入某年某月某日,要求计算出这一天是该年的第几天。学生拿到任务后,分组讨论程序思路,教师通过管理软件随机选择若干小组听取他们的设计思路,根据回答情况进行引导,学生得到以下正确思路并编程实现:

1.从键盘上读入3个整数,分别作为年、月、日。练习输入函数。

2.要计算出某天是当年的第几天,应该将当年中本月之前所有月份的天数相加,再加上本月的天数。根据所输的月份练习switch选择结构。

3.考虑闰年问题,二月是一个特殊月,如该年是闰年,则二月有29天,否则,便是28天。根据所输的年份练习if选择结构。

4.输出答案。练习输出函数。

这个有趣的任务让学生在讨论中学会了选择结构的使用方法,并了解了switch和if这两种常用的选择结构的区别,且巩固了前面学习的输入输出函数知识点。

(三)网络学习

为学生提供丰富的网络学习资源。利用海光多媒体软件的录制和回放功能,可以在执行“教师演示”播放教师机上的屏幕画面的同时,将播放的图像画面以动画影像的形式录制下来,跟不上教学进度的学生可通过“回放”学习。将录制的视频、课件、参考资料和课外拓展练习资料等上传到课程群,提供丰富的网络学习资源,让学生学习不受时间、地点的限制,实现全方位学习。

(四)多元化考核方式

考核方式对学生有重要的学习方向引导作用,在智慧课堂的教学模式中,采用多元化考核方式,进一步调动学生的学习主动性和积极性。学生的上机成绩由三部分组成:课堂表现考核,由教师根据学生的分组表现、课堂展示和任务完成情况给出成绩,占总成绩的30%;组内考核,每次实验由小组长根据组员的表现打分,最后取平均分,占总成绩的20%;期末上机考试,占总成绩的50%,对学生的总体掌握情况进行测评。

四、结语

本文充分利用了机房得天独厚的信息技术环境,采用小组合作学习、任务驱动教学、网络学习和多元化考核等教学手段,创建了高级语言程序设计上机教学的智慧课堂。实践证明,该教学方法深受学生的欢迎,有效提高了学生的积极性,取得了良好的教学效果。

[ 注 释 ]

[1] 黄荣怀,张进宝,胡永斌,等.智慧校园:数字校园发展的必然趋势[J].开放教育研究,2012(4):12-17.

[2] 吴晓静,傅岩.智慧课堂教学的基本理念[J].教育探索,2009(9):6.

[3] 祝智庭,贺斌.智慧教育:教育信息化的新境界 [J].电化教育研究,2012(12):13.

[4] 谭浩强.C程序设计[M].北京:清华大学出版社,2005.

[5] 丁海燕,邹疆,邱莎.C语言实验教学体系及改革措施[J].实验技术与管理,2010(11):179-181.

上一篇:大班语言:散文诗欣赏《秋天的雨》下一篇:生活的色彩中考满分作文