考试总分:7分
考试类型:模拟试题
作答时间:60分钟
已答人数:967
试卷答案:有
试卷介绍: 2008年上半年程序员下午试卷
A(1)~(9),将解答填入答题纸的对应栏内。[说明]假设数组A中的各元素A(1),A
B(2),…,A(M)已经按从小到大排序(M≥1);数组B中的各元素B(1),B(2),…,B(N)也已经按从小到大排序(N≥1)。执行下面的流程图后,可以将数组A与数组B中所有的元素全都存入数组C中,且按从小到大排序(注意:序列中相同的数全部保留并不计排列顺序)。例如,设数组A中有元素:2,5,6,7,9;数组B中有元素:2,3,4,7;则数组C中将有元素:2,2,3,4,5,6,7,7,9。[流程图][15分]
A(1)){pstr[n-1]='i';pstr[n]='e';pstr[n+1]='s';
B(2);}elseif(pstr[n-1]=='s'||pstr[n-1]=='h'&&(
C(3))){pstr[n]='e';pstr[n+1]='s';pstr[n+2]='\0';}else{pstr[n]='s';pstr[n+1]='\0';}
D(4);}main(){inti;char*ps;charwc[9][10]={"chair","dairy","boss","circus","fly","dog","church","clue","dish"};for(i=0;i<9;i++){ps=
E(5);printf("%s:%s\n",wc[i],ps);/*输出单词及其复数形式*/free(ps);/*释放空间*/}system("pause");}[15分]
A(1);/*字符指针指向下一字符*/continue;}elseif(isdigit(*ptr)){/*当前字符是数字,则将该数字开始的数字串转换为数值*/tnum=
B(2);while(*ptr>=’0’&&*ptr<=’9’){tnum=tnum*10+
C(3);ptr++;}Push(
D(4));}else/*当前字符是运算符或其他符号*/if(*ptr=='+'||*ptr=='-'||*ptr=='*'||*ptr=='/'){if(!IsEmpty(s)){a=Top(s);Pop(&s);/*取运算符的第二个运算数*/if(!IsEmpty(s)){b=Top(s);Pop(&s);/*取运算符的第一个运算数*/}elsereturn-1;}elsereturn-1;switch(*ptr){case'+':Push(&s,b+a);break;case'-':Push(&s,b-a);break;case'*':Push(&s,b*a);break;case'/':Push(&s,b/a);break;}}elsereturn-1;ptr++;/*字符指针指向下一字符*/}/*while*/if(IsEmpty(s))return-1;else{
E(5)=Top(s);Pop(&s);/*取运算结果*/if(!IsEmpty(s))return-1;return0;}}[15分]
A(1)){printf("输入数据有误!\n");exit(0);}row=1;col=(n+1)/2;value=1;while(value<=
B(2)){a[row][col]=value;/*计算下一位置*/if(value%n!=0){row--;
C(3);if(rown)
D(4);}elserow++;value=
E(5);}printf("\n%d阶魔方阵如下所示:\n\n",n);for(row=1;row<=n;row++){for(col=1;col<=n;col++)printf("%5d",a[row][col]);printf("\n");}}[15分]
A(1)=7;//定义最多载客数constintMAX_WHEELS=5;//定义最多轮胎数classBody{//此处代码省略};//车身类classPassenger{//此处代码省略};//乘客类classWheel{//此处代码省略};//车轮类classDriver{//司机类public:stringname;//表示第几路公交车司机Driver(stringdriverName):name(
B(2)){};//构造函数};classEngine{//引擎类public:stringengineNo;//引擎编号Engine(stringengineNo){
C(3)->engineNo=engineNo;}//构造函数};classCar{//汽车类protected:Engine*engine;Driver*driver;Bodybody;Wheel*wheels[MAX_WHEELS];Passenger*passengers[MAX_PASSENGERS];public:Car(Driver*driver){//构造函数this->driver=driver;engine=newEngine("TX6536型号引擎");for(intindex=0;index<MAX_WHEELS;index++){wheels[index]=newWheel();}for(intindex=0;index<MAX_PASSENGERS;index++){passengers[index]=NULL;}}virtual~Car(){//析构函数for(intindex=0;index<MAX_WHEELS;index++)deletewheels[index];delete
D(4);}intgetPassengerNumber(){//获取车上乘客数量//此处代码省略}voidgetOnPassenger(Passenger*aPassenger){//乘客上车//此处代码省略}voidrun(){//开车if(driver==NULL){cout<<"司机尚未上车!";return;}//此处代码省略}};voidmain(){Driverdriver("第五路公交车司机");Carcar(
E(5));Passengerpassengers[MAX_PASSENGERS];for(intindex=0;index<MAX_PASSENGERS;index++)//乘客上车处理car.getOnPassenger(&passengers[index]);car.run();}[15分]
A(1)通过驱动器列表框(Drive1)、目录列表框(Dir1)和文件列表框(File1),选择文件。
B(2)文件类型组合框(Cmb_type)设置为下拉式列表框,其中有三个供选项,分别为“所有文件(*.*)”、“文本文件(*.txt)”和“可执行文件(*.exe)”。在文件列表框中列出的文件类型会自动与文件类型组合框中选择的文件类型相匹配。
C(3)在文件列表框中单击一个文件名时,该文件名会显示在文件名文本框(Txt_filename)中。
D(4)在文件列表框中双击一个文件名时,若是文本文件,则在文件编辑文本框(Txt_file)中显示该文件的内容并可进行编辑;若不是文本文件,则弹出一个对话框,提示“请选择文本文件!”
E(5)对于编辑后的文本文件,可在文件名文本框(Txt_filename)中输入新的文件名,并单击命令按钮(Cmd_save)进行保存。[VisualBasic程序代码]PrivateSubForm_Load()Cmb_type.AddItem"所有文件(*.*)"Cmb_type.AddItem"文本文件(*.txt)"Cmb_type.AddItem"可执行文件(*.exe)"Cmb_type.ListIndex=0File1.Pattern="*.*":Txt_filename.Text=""Txt_file.Text=""EndSubPrivateSubDir1_Change()File1.Path=(1)EndSubPrivateSubDrive1_Change()Dir1.Path=Drive1.DriveEndSubPrivateSubCmb_type_click()SelectCaseCmb_type.(2)Case0File1.Pattern="*.*"Case1File1.Pattern="*.txt"Case2File1.Pattern="*.exe"EndSelectEndSubPrivateSubCmd_save_Click()usrFile=GetFileName()‘函数GetFileName获得要保存的文件名OpenusrFileForOutputAs#1‘定义usrFile为1号输出文件Print#1,Txt_file.Text‘输出到1号文件Close#1EndSubPrivateSubFile1_DblClick()Ifright(File1.FileName,3)(3)ThenMsgBox"请选择文本文件!"ExitSubEndIfusrFile=GetFileName()‘函数GetFileName获得要打开的文件名OpenusrFileForInputAs#1‘定义usrFile为1号输入文件Txt_file.Text=""DoWhile(4)EOF(1)LineInput#1,fContext‘从1号文件读入一行Txt_file.Text=Txt_file.Text+(5)+vbCrLfLoopClose#1EndSub‘其他代码略[15分]
A(1)=7;//定义最多载客数staticfinalintMAX_WHEELS=5;//定义最多轮胎数protectedEngineengine;protectedDriverdriver;protectedBodybody=newBody();protectedWheel[]wheels;protectedPassenger[]passengers;publicCar(Driverdriver){//构造函数
B(2).driver=driver;engine=newEngine("TX6536型号引擎");wheels=newWheel[MAX_WHEELS];passengers=newPassenger[MAX_PASSENGERS];for(intindex=0;index<MAX_WHEELS;index++){wheels[index]=newWheel();}for(intindex=0;index<MAX_PASSENGERS;index++){passengers[index]=null;}}intgetPassengerNumber(){//获取车上乘客数量//此处代码省略}voidgetOnPassenger(PassengeraPassenger){//乘客上车//此处代码省略}voidrun(){//开车if(
C(3)){System.out.println("司机尚未上车!");return;}//此处代码省略}publicstaticvoidmain(Stringargs[]){Driverdriver=newDriver("第五路公交车司机");Carcar=newCar(
D(4));for(intindex=0;index<MAX_PASSENGERS;index++)car.getOnPassenger(
E(5)Passenger());car.run();}}[15分]