专升本C语言程序设计专业考试试题.docx
《专升本C语言程序设计专业考试试题.docx》由会员分享,可在线阅读,更多相关《专升本C语言程序设计专业考试试题.docx(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、专升本专业课考试C语言程序设计试题卷考生须知:1、考生姓名和准考证号码填写在答题纸密封线左边指定位置;2、考生一律在答题纸上答题,在本试题页上答题无效;3、答题不需要抄写题目,但必须写清题目编号(第几大题第几小题);4、试题、答题纸及草稿纸不准带出考场,离开考场须经监考人员清点;5、考试时间为150分钟;试题满分为150分;6、本试题共5页,5大题(注意反面)。一单项选择题(每题2分,共20分)1对于一个正常运行和正常退出的C程序,以下叙述正确的是_。 A程序从main函数第一条可执行语句开始执行,在main函数结束B程序的执行总是从程序的第一个函数开始,在main函数结束C程序的执行总是从m
2、ain函数开始,在最后一个函数中结束D从程序的第一个函数开始,在程序的最后一个函数中结束2要使下面程序输出1, 2, 34,则从键盘输入的数据格式应为_。 #include main() char a,b; int c; scanf(%c%c%d,&a,&b,&c); printf(%c,%c,%dn,a,b,c);A1 2 34 B1, 2, 34 C1,2,34 D12 343对于以下程序片段,描述正确的是_。 int x=-1;do x=x*x;while(!x);A是死循环B循环执行两次C循环执行一次D有语法错误4以下不能对二维数组a进行正确初始化的语句是_。 Aint a23=0;B
3、int a3=1,2,0;Cint a23=1,2,3,4,5,6;Dint a3=1,2,3,4,5,6;5以下程序运行后输出结果是_。float fun(int x, int y) return(x+y);main() int a=2,b=5,c=8; printf(%3.0fn,fun(int)fun(a+c,b),a-c);A编译出错 B9 C21D9.06. 一个指针数组的定义为_。 Aint (*ptr)5;Bint *ptr5;Cint *(ptr5);Dint ptr5;7若有定义int(*p)4,则标识符p是一个_。 A指向整型变量的指针变量B指向函数的指针变量C指向有四个整
4、型元素的一维数组的指针变量D指针数组名,有四个元素,每个元素均为一个指向整型变量的指针8程序中对fun函数的说明为“void * fun();”,此说明的含义是_。Afun函数无返回值Bfun函数的返回值可以是任意的数据类型Cfun函数的返回值是无值型的指针类型D指针fun指向一个函数,该函数无返回值9下面程序运行后的输出结果是_。 typedef struct int b; int p;TYPEA;void f(TYPEA c)c.b+=1; c.p+=2;main()TYPEA a=1,2;f(a);printf(%d,%dn,a.b,a.p);A2,3 B2,4 C1,4 D1,210已
5、知学生记录描述为:struct student int no;char name20;char sex;structint year;char month15;int day; birth;struct student s;设变量s中的生日是1990年12月11日,下列对生日的正确赋值方式是_。As.birth.year=1990; s.birth.month=12; s.birth.day=11;Bs.birth.year=1990; s.birth.month=12; s.birth.day=11;Cs.birth.year=1990; strcpy(s.birth.month,12);
6、s.birth.day=11;Ds.birth.year=1990; strcpy(s.birth.month,12); s.birth.day=11;二、下面给出的程序中,共有15处错误(包括语法错误和逻辑错误),请找出其中的错误,并改正之。(30分,每找对1个错误,加1分,每修改正确1个错误,再加1分。)1交换两个整数的值,保证调用函数中实参的值交换。(3个错误)void exchang(int *p1, int *p2) int p; *p = p1; p1 = p2; p2 = *p;2下面程序模拟了骰子的6000次投掷,用rand函数产生16之间的随机数face,然后统计16每一面出
7、现的次数存放到数组frequency中。(3个错误)#include #include #include main() int face,roll,frequency7=0; srand(timeNULL); for(roll=1; roll=6000; roll+); face = rand()%6+1;+frequencyFace; printf(%4s%17sn,Face,Frequency); for(face=1;face=6;face+) printf(%4d%17dn,face,frequencyface); 3.下面程序的功能是从键盘输入一行字符,统计其中有多少单词。假设单词之
8、间以空格分开。已知:判断是否有新单词出现的方法当前被检验字符不是空格,而前一被检验字符是空格,则表示有新单词出现。(4个错误)#include main() int i,num; char str20; scanf(%c, str); if(str0= ) num = 1; else num = 0; for(i=1; i20; i+) if(stri!= & stri-1= ) num=num+; printf(num=%dn, num);4. 下面程序的功能是编程输入10个数,找出其中的最大值及其所在的数组下标位置。(5个错误)#include int FindMax(int num, i
9、nt n, int *pMaxPos)main()int num10, maxValue, maxPos, minValue, minPos, i;printf(Input 10 numbers:n );for (i=0; i10; i+)scanf(%d, numi); maxValue = FindMax(num, 10, maxPos);printf(Max=%d, Position=%dn,maxValue, maxPos);int FindMax(int num, int n, int *pMaxPos);int i, max;max = num0;pMaxPos = 0;for(i
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 专业 考试 试题
限制150内