1、 陕西国防工业职业技术学院技能培训报告 专 业: 软件技术 班 级: 软件3101 姓 名: 陈园园 学 号: 13# 指导老师: 淡海英 何杰惠 实训时间: 2011-2012(1)第18周 实训地点: 单片机实验室 成 绩: 二零一一年十二月题目一条件序号1234A0YYNNB0YNYN1、阅读以下说明和流程图,回答问题1至问题4,将解答填入答题纸的对应栏内。【说明】下面的流程图中有两个判断条件A0和B0。这些判断条件的各种组合情况如下所示。表中Y表示相应的条件成立,N表示相应的条件不成立。每一列表示一种条件合,并在列首用相应的序号来表示。【流程图】 【问题1】(4分)当遇到哪几种条件组合
2、时,流程图能执行“1i”?(写出相应的序号即可)【问题2】(4分) 当遇到哪几种条件组合时,流程图能执行“2j”?(写出相应的序号即可)【问题3】(6分) 当遇到哪几种条件组合时,流程图能执行“3k”?(写出相应的序号即可)【问题4】(1分) 该流程图共有多少条实际执行路径?2、程序清单(1) A0 B0 A0 B0 B=0 A=0 B0 B0 A0 A=0 B=0*(si)=0*(si)1) /*字符串的长度1*/ ch = *s; *s = *(s+len-1); *(s+len-1) = ch;reverse(s+1,len-2);/*递归调用依次调换*/main()char a20;/
3、int s;/s=strlen(a); scanf(%s,&a);reverse(&a,strlen(a);printf(%s,a);3、运行结果 (截图)说明1:说明2:题目三1、阅读以下说明和C代码,回答问题1和问题2,将解答写在答题纸的对应栏内。【说明1】下面代码的设计意图是:将保存在文本文件data.txt中的一系列整数(不超过100个)读取出来存入数组arr ,然后调用函数sort()对数组arr的元素进行排序,最后在显示屏输出数组arr的内容。【C代码】【问题1】(9分) 以上C代码中有三处错误(省略部分的代码除外),请指出这些错误所在的代码行号,并在不增加和删除代码行的情况下进行
4、修改,写出修改正确后的完整代码行。 【说明2】下面是用C语言书写的函数get_str的两种定义方式以及两种调用方式。行号代码1234567891011121314151617181920212223242526#includevoid sort(int a, int n)/*对n个元素的整型数组a按递增方式排列*/*此处代码省略*/return;int main()int i, num = 0;int arr100;FILE fp;fp = fopen(data.txt, r);if (!fp)return -1;while(!feof(fp) fscanf(fp, %d, arrnum+);
5、sort(arr, num);for(i=0; i next; /*p指向第一个元素结点* int delTag=0; while(p) if(p-datadatamaxK)*找到删除满足条件的结点* q-next=(3) free(p); p=(4);delTag=1; else break; if(5)return-1; return 0;2、程序清单(要求有主要注释说明)typedef struct Node int data; struct Node*next; Node, *LinkList; int DeleteList (LinkListL, int minx, int maxK
6、 *在含头结点的单链表L中删除大于minx且小于maxK的元素*Node *q=L, *p=L-next; /*p指向第一个元素结点* int delTag=0; while(p) if(p-datanext; else if ( p-datamaxK)*找到删除满足条件的结点* q-next=p-next free(p); p=q-next;delTag=1; else break; if(delTag!=1)return-1; return 0;3、运行结果 (截图)题目五1、 阅读以下说明和Java代码,将应填入(n)处的语句或语句成分写在答题纸的对应栏内。【说明】 某数据文件stud
7、ents.txt的内容为100名学生的学号和成绩,下面的程序将文件中的数据全部读入对象数组,按分数从高到低进行排序后选出排名前30%的学生。【Java代码】import java.io.*;class Student private String sNO;/学号 private int Credit;/分数 public int getCredit() return Credit; public String toString() return“sN0=“+this.sNO+”,Credit=”+this.Credit; Student(String sNO, int Credit) (1)=
8、sNO; (2)=Credit; public class SortStudent void sort(Student s) /Sort the array s in decending order of Credit for(int i=0; is.length-1;i+) for (int j=i+1:js.length; j+) if (si.(3)sj.(4) Student tmp=si; si=sj; sj=tmp; public static void main(String argv) Student testStudent=new Studentsize; try Buffe
9、redReader in=new BufferedReader(new FileReader(“students.txt”); boolean done=false; int i=0; while(!done) String s=in.readLine(); /每次读取一个学生的学号和成绩if (s!=null) String tmp=s.split(“,”); testStudenti+=(5)(tmp0,Integer.parselnt(tmp1); else done=true; in.closeo(); (6)=new SortStudent(); ss.sort(testStuden
10、t); System.out.println(“top 30%:”); for (int j=O; jsize*0.3;j+) System.out.println(testStudentj); catch (IOException e) System.out.println(“io error!”); catch (NumberFormatException e) System.out.println(“not a number!”); (7)int size=100;/学生总数2、程序清单(要求有主要注释说明)3、运行结果 (截图)培训总结 12月26号,我参加了程序员考试培训。在培训期间
11、听了老师们的培训,使我们受益匪浅,首先要成为一个优秀的程序员需要要学的课程很多,其中,基础课程包括:计算机硬件基础、计算机网络基础、操作系统、计算机组成原理、计算机体系结构、数据库原理、软件工程、离散数学、算法设计与分析、数据结构、编译原理 编程语言可以根据需要选择,底层开发人员必学:汇编语言、c、c+;web应用表示层开发人员:html、xml、javascript、jsp(或asp,php)等;普通应用程序开发:c+、vb、.net(其中包括多种语言,可根据现有基础选择)、java等。深刻体会到了以下的几点:一、要养成良好的学习习惯;良好的学习习惯包括:课前预习、认真听讲和课后编码练习等
12、二、学习过程中,不仅仅是停留在表层的东西,对于简单的例题也应该有耐心去琢磨 、调试和尝试改动,这样也能加深对课程的理解和编程能力。 三、一定要多读、多看与JAVA相关的书籍甚至是论坛的帖子。学习是无止境的,我们在学习的同时,JAVA也在发展。所以,多看些关于JAVA的书籍和论坛上的技术讨论帖是非常有帮助的,因为它们都是与时俱进的,能让我们获得的知识更快,更有时效性,也让我们的知识来源更为广泛和灵活。 这仅仅是我这一个周参加程序员培训以来学到的一部分而已,我需要学习的还有很多很多。在学习的过程中不断的总结和积累经验是非常重要的。老师和同学们在这期间给予的帮助是非常大的,在接下来的学习生活中,我会继续努力的,也让我们继续协作,共同进步!