2017青岛大学考研真题922计算机程序设计.pdf
1青 岛 大 学 2017 年 硕 士 研 究 生 入 学 考 试 试 题科 目 代 码 : 922 科 目 名 称 : 计 算 机 程 序 设 计 ( 共 3 页 )请 考 生 写 明 题 号 , 将 答 案 全 部 答 在 答 题 纸 上 , 答 在 试 卷 上 无 效一、单选题(每题2分,共20分)1.下面的用户标识符正确的是()A._c201 B. if C. 3com D.int2.对于一个完整的、可运行的C语言源程序来说,main函数是()A.可以没有B.可以有多个C.无所谓D.必须有,且只有一个3.如果函数参数是数组名,则向函数传送的是( )A.数组的长度B.数组的首地址C.数组每一个元素的地址D.数组每个元素中的值4.若有“inta=2,b=3,c=4;”,则下列表达式为假的是()A. (a1) B. (c-b-1)>0)|(c-a)C. (!a=1)ch1='A'+'5'-'3'ch2='A'+'6'-'3'printf(“%d,%cn“,ch1,ch2);A.67,D B. B,C C. C,D D.程序有错6.若有intn=2,*p=则执行scanf(“a=%d,b=%d,c=%d“,dox=x*x;while(!x);循环时,下列说法正确的是()A.循环体将执行一次B.循环体将执行两次C.循环体将执行无限次D.系统将提示语法错误10.下面列出的表达式中,与while(E)中的E不等价的表达式是()A.(!E=0) B.(E>0)|(E2);printf(“%dn“,j);4.下面的程序用于计算函数SunFun(n)=f(0)+f(1)+.+f(n)的值,其中f(x)=x3+1,填写下面程序中的空行。intSunFun(intn);intf(intx);intmain()printf(“thesun=%dn“,SunFun(10);return0;intSunFun(intn)intx, ;for(x=0;x<=n;x+);returns;intf(intx)return ;35.下面程序输入一个字符串和一个字符,在该字符串中查找该字符,若找到,打印从该字符开始的子串。match(char*s,charch)while(*s!='0')if(*s=ch)else s+;intmain()charch,str90,*p=NULL;printf(“inputstring:n“);scanf(“%s“,str);getchar();ch=getchar();if(p=match(str,ch)!=NULL)printf(“%sn“,p);elseprintf(“Notfound!n“);return0;6.已经有定义FILE*fw;下面的语句打开文本文件readme.txt,在文件最后写入内容,将语句填写完整:fw=fopen(“readme.txt“, );三、程序设计(1-2题每题10分,3-5题每题20分,第6题30分,共110分)1.编写函数,将字符串中的小写字母变换为字母表中下一字母,大写字母只变为小写字母,如:a转换为b,A转换为a。若最后一个字母为z,则转换为a。2.编写程序,根据输入的n值,计算斐波那契数列的前n项。斐波那契数列的头两项均为1,后面任一项都是其前两项之和。3.编写程序,输入字符串,判断该字符串是否是回文。所谓回文是字符串中心对称,如“abccba”,“abcba”都是回文。4.编写程序,输入正整数n,据此动态申请空间存放n个整型数据,输入n个整数,去掉最大值、最小值,计算余下数据的平均值。5.编写程序,读入正整数n,计算1n之间的素数个数。要求素数的判断通过函数实现,主程序调用该函数判断是否素数。6.编写程序,输入一维数组,数组元素个数不大于40,采用选择法将数组按升序排序,将排序后的数组逆序输出。要求交换数据采用函数实现。