2020年度初级程序员下午试题试题一阅读下列说明和流程图I将应填入_(n)_处的字句写在答题纸的对应栏内[说明]流程图1描述了自然数1到N(N>1)之和的计算步骤[流程图1]•为了使流程图1能计算1'+2'+…+N2应将c框改成_(3)_•如果输入的N是奇数,为了使流程图1能计算1+3+5+…+(2k-1)+•…+N(Kk<(N+1)/2)应将d框改成_(4)_•如果流程图1中c框的内容改为“S+l*(l+1)-S”则流程图1实现_(5)_计算从下列的2道试题(试题二至试题三)中任选1道解答如果解答的试题数超过1道,则题号小的1道解答有效试题二阅读下列函数说明和C代码,将应填入_(n)_处的字句写在答题纸的对应栏内[函数2.1说明]函数voidprintd(intn)的功能是将整数n转换为字符串并输出转换的方法是从低位到高位依次取得整数n的各位数值,将其转换成数字字符后存入字符数组s中,然后输出[函数2.1]voidprintd(intn){chars[lO];inti;if(n0);printf('%s\n',__(2)__);}[函数2.2说明]函数voidrevstr(char*s)将字符串s逆置。
例如字符串“abcde”,经过逆置后变为“edcba”[函数2.2]voidrevstr(char*s){char*p,c'if(s==NULL)return;p=__(3)__;/*p指向字符串s的最后一个有效字符*/while(s
请补充下面txt1的KeyDown按键)事件过程中程序代码的空缺IfKeyCode=13Thentxt2.EndIf从下列的2道试题(试题四至试题五)中任选1道解答如果解答的试题数超过1道,则题号小的1道解答有效试题四阅读下列函数说明和C代码,将应填入_(n)_处的字句写在答题纸的对应栏内[函数4.1说明]函数intfactors©ntn)的功能是判断整数n(n>2)是否为完全数如果n是完全数,则函数返回0,否则返回-1所谓“完全数”是指整数n的所有因子(不包括n)之和等于n自身例如28的因子为1、2、4、7、14,而28=1+2+4+7+14因此28是“完全数”[函数4.1]intfaetors(intn){inti,s;for(i=l,s=O;i(=n/2'i++)if(n%i==O)_(1)_;if(__⑵__)returnO;return-1;}[函数4.2说明]函数intmaxint(inta1],intk)的功能是用递归方法求指定数组中前k个元素的最大值,并作为函数值返回[函数4.2]intmaxint(inta[],intk){intt;if(__(3)__)return_(4)_;t=maxint(a+l,__⑸__'return(a[0]>t)?a[0]:t;}试题五阅读以下应用说明以及用VisualBasic开发过程中进行的属性设置和所编写的程序代码,将应填入__(n)_处的字句写在答题纸的对应栏内。
[应用说明]在窗体中建立一个文本框Txtl、框架Fral、复选框Chkl及两个命令按钮Cmdok和CmdcaneeFral中的两个单选按钮的名称分别为Optsong和Opthei,相关的属性设置如下表所示:对象对象名属性名属性值窗体Frm1Caption框架应用示例框架FralCaption字体单选按钮0ptsongCaption宋体单选按钮OptheiCaption黑体复选框Chk1Caption斜体命令按钮CmdokCaption确定命令按钮CmdcaneelCaption取消文本框TxtlText字体字形应用程序的运行窗口如下图所示:用户在选择“宋体”或“黑体”以及设置或取消“斜体”字形后,单击“确定”按钮,文本框中的文字就会按所选字体和字形显示若运行时使文本框不接收用户的输入,则需要设置Txtl的_(1)_属性值为False;若按下Esc键时就能执行命令按钮Cmdcancel的单击事件过程,则应设置Cmdcancel的Cancel属性值为__⑵_[程序代码]PrivateSubCmdol__⑶__()If__⑷__=TrueThenTxtl.FontName="宋体"ElseTxtl.FontName="黑体"Endlflf_J5)__ThenTxtl.Fontltalic=TrueElseTxtl.Fontltalic=FalseEndlfEndSub从下列的2道试题(试题六至试题七)中任选1道解答。
如果解答的试题数超过1道,则题号小的1道解答有效试题六阅读下列说明和C代码,将应填入_(n)_处的字句写在答题纸的对应栏内[程序6说明]本程序从正文文件test.txt中读入一批整数,并将它们按照递增的顺序存放在一个链表中其中,函数insertChain(structLink*head,structLink*k)用来寻找结点k在链表head中的插入位置,并插入该结点[程序6]#include#includestructLink{intnumber;structLink*next;};structLink*insertChain(structLink*head,structLink*k);voidmain(){structLink*ptr,*head;FILE*fd;inthum;if((fd=fopen("test.txt"',"r"))==NULL){/*打开一个文件*/printf('Cannotopenthisfile!\n");return;}head=NULL;while(fscanf(fd,"%d",&hum)==1){Ptr=__(1)__;if(!ptr)return;ptr->number=hum;ptr->next=NULL;head=insertChain(head,ptr);}—⑵__;return;}struetLink*insertChain(struetLink*head,structLink*k){structLink*ptr,*u;ptr=head;while(ptr~d~k->number>ptr->number){u=ptr;__(3)__;}if(ptr==head)head=k;else一⑷一__(5)__;returnhead;试题七阅读以下应用说明以及用VisualBasic开发过程中进行的属性设置和所编写的程序代码,将应填入_(n)_处的字句写在答题纸的对应栏内。
[应用说明]设某应用程序运行时窗口中有两个文本框(txtNumber和txtChinese)和一个命令按钮(cmdChange)当单击cmdChange时,txtChinese中将显示txtNumber中数值的中文大写格式例如,若在txtNumber中输入“012340',单击命令按钮后,txtChinese中将显示“壹万贰仟叁佰肆拾”,如下图所示012340ii+BIM—liaii+HII—sisailisi!-isrii■naiItoiiu■■■.程序中调用的函数CChinese(StrdigitAsString)的功能是先删除数字串Strdigit的所有前导0,再调用函数Transfer(StrdigitAsString),将数字串Strdigit转换为中文大写格式文本框txtNumber响应按键事件的过程是以空字符代替所输入的非数字有形字符[程序代码]'调用CChinese函数PrivateSubcmdChange_Click()txtChinese.Text=CChinese__(1)__)EndSubPrivateFunctionCChinese(StrdigitAsString)AsStringintLen=Len(Strdigit)IfStrdigit()"'ThenintCounter=0Do'过滤数字串Strdigit的前导0intCounter=intCounter+1LoopUntilMid(Strdigit,__(2))__<>"0"intLen=__⑶__Strdigit=__⑷__(Strdigit,intLen)CChinese=Transfer(Strdigit)EndifEndFunctionPrivateSubtxtNumber_KeyPress(KeyAsciiAsInteger)SelectCaseKeyAsciiCaseKeyAscii<32Case48To57CaseElse__(5)__=0EndSelect'按输入字符的ASCII码值分情况处理'保留输入的控制字符'保留输入的数字字符'其他情况以空字符代替EndSub。