青岛科技大学c语言试题库

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第一套试题一、单项选择题(15个小题,每题2分,共30分):1.一个C语言程序的执行是从_____。A.main函数开始,直到main函数结束B.第一个函数开始,直到最后一个函数结束C.第一个函数开始,直到最后一个语句结束D.main函数开始,直到最后一个函数结束2.正确的自定义标识符是_____。A.x_2B.a-bC.2sumD.$1233.下面程序的运行结果是_____。#defineF(x)x*xvoidmain(){inta=2,b=1;prinft(“%d\n”,F(a+b));}A.3B.5C.8D.94.读以下程序段,判断a的值为_____。int*p,a=10,b=1;p=&a;a=*p+b;A.12B.10C.11D.编译出错5.根据以下说明语句,则下面的叙述中不正确的是_____。structstudent{intnum;charname[10];intscore;}stu;A.struct是定义结构体类型的关键字B.stu是结构体变量名C.num,name,score都是结构体成员名D.stu是结构体类型名6.已知字母A的ASCII码为十进制数65,变量ch1为字符型,则执行语句ch1=‘A’+‘5’-‘2’;后,ch1中的值是_____。A.DB.67C.一个不确定的值D.C7.以下哪种方法不能对一维数组进行正确的初始化_____。A.inta[]={1,2,3};B.inta[5]={};C.inta[5]=(1,2,3,4,5);D.inta[]={2,3,4*5,6};8.已正确定义字符变量ch1,下面能正确赋值的是_____。A.ch1=“a”;B.ch1=‘a’;C.ch1=“C语言程序设计”;D.ch1=‘C语言程序设计’;9.逗号表达式(a=3*4,a*4),a+5的值是_____。A.53B.17C.20D.4810.设n为float型,m为int型,则以下能实现将n中的数值保留小数点后两位,第三位进行四舍五入的表达式是_____。A.n=(n*100+0.5)/100.0B.n=n*100+0.5/100.0C.m=n*100+0.5,n=m/100.0D.n=(n/100+0.5)*100.011.设i=2,j=3,则表达式(i++)*(++j)的值为_____。A.6B.8C.9D.1212.关于以下程序段,说法正确的是_____。x=-1;do{x=x*x;}while(!x);A.死循环B.循环体执行二次C.循环体执行一次D.有语法错误13.若有下列定义:charc[5],*p=c;则对c数组元素地址的正确引用是_____。A.p+2B.&c[5]C.c++D.&c14.当调用函数时,实参是一个数组名,则向函数传送的是_____。A.数组的长度B.数组每个元素中的值C.数组每一个元素的地址D.数组的首地址15.文件中利用fopen函数打开文件,如果以只读方式打开二进制文件,则以下打开方式正确的是_____。A.r+B.rbC.wbD.ab二、填空题(5个小题,每题2分,共10分):1.若有inti=1,j=7,a;执行语句a=i+(j%4!=0);后,a的值是_______。2.执行以下程序后,运行结果是_______。#includestdio.hvoidmain(){inta,b;for(a=1,b=1;a=100;a++){if(b=10)break;if(b%3==1){b+=3;continue;}}printf(“%d\n”,a);}3.源程序中用到了strcat函数,需要包含的头文件(即库文件)为_______。4.执行以下程序后,运行结果是_______。#includestdio.hvoidmain(){inta=2;floatn=5.888,b;b=a+(int)n;printf(“%f\n”,b);}5.语句scanf(a=%d,b=%d,&a,&b);若将3和4分别输入给a和b,则正确的输入方式为____CR。三、程序分析题,写出程序的运行结果(5个小题,每题4分,共20分):1.#includestdio.hvoidmain(){intx=1,y=0,a=0,b=0;switch(x){case1:switch(y){case0:a++;break;case1:b++;break;}case2:a++;b++;break;}printf(“a=%d,b=%d\n”,a,b);}2.在运行以下程序时,输入“TurboC++3.0”,写出程序的运行结果。#includestdio.hvoidmain(){charstr[40];printf(Inputastring:);scanf(%s,str);puts(str);}3.#includestdio.hvoidf(inty){staticinti=5;intj=3;j++;printf(“%d+%d+%d=%d\n”,i,j,y,i+j+y);i*=2;}voidmain(){intx;for(x=1;x=2;++x)f(x);}4.#includestdio.hvoidswap(int*pa,int*pb){int*p;p=pa;pa=pb;pb=p;}voidmain(){inta=10,b=20;int*p1=&a,*p2=&b;if(ab)swap(p1,p2);printf(%d,%d\n,a,b);}5.#includestdio.hinta=5;intb=7;intplus(intx,inty){intz;z=x+y;return(z);}voidmain(){inta=4,b=5,c;c=plus(a,b);printf(“a+b=%d\n”,c);}四、程序填空题,将下面程序补充完整(10个填空,每空2分,共20分):1.输出九九表。#include“stdio.h”voidmain(){inti,j;for(i=1;i=9;i++){for(j=1;①;j++)printf(“%3d*%d=%2d”,i,j,i*j);②;}}2.利用函数形式,求x数组所有元素的平均值并输出。#include“stdio.h”①;voidmain(){floatavg,x[10]={1.2,3.6,4.5,5.1,6.9,7,8,9,10.5,11.3};avg=average(x);printf(“Theaverageis%5.2f\n”,avg);}floataverage(floata[10]){inti;floatsum=0;for(i=0;i10;i++)sum=sum+a[i];②;}3.编写一个计算字符串长度的函数length。#include“stdio.h”voidmain(){charstr[20];intm;intlength(char*p);printf(Inputastring:\n);gets(str);①;printf(\nthelengthofstris%d,m);}intlength(char*p){intn=0;while(②){n++;p++;}returnn;}4.输入10个整数,按每行3个数输出这些整数,最后输出10个整数的平均值。#include“stdio.h”voidmain(){inti,n=10,a[10];floatavg=0;for(i=0;in;i++)scanf(“%d”,&a[i]);for(i=0;in;i++){if(①)printf(“\n”);printf(“%d”,a[i]);}for(i=0;in;i++)②;avg=avg/n;printf(“average=%f\n”,avg);}5.将字符数组中大写字符改为小写字符,将小写字符改为大写字符,利用指针完成。#include“stdio.h”voidmain(){charstr[30]=“WelcometoCLanguage”,*cp=str;while(*cp){if(*cp=‘A’&&*cp=‘Z’)①;elseif(*cp=‘a’&&*cp=‘z’)*cp=*cp-32;②;}puts(str);}五、程序设计题(3个小题,共20分):1.设三个整型变量a,b,c,编写程序为a,b,c输入数据,并要求a,b,c按由小到大排序后输出。(5分)2.学生成绩可分为五分制与百分制,编程将百分制转换为五分制输出。(5分)3.编写排序函数sort(inta[]),实现对数组a中的元素进行排序,并利用该函数,从键盘输入若干个数(如10个)将其按升序排列。(10分)第一套试题一、单项选择题(15个小题,每题2分,共30分):1-5:AABCD6-10:ACBBC11-15:BCADB二、填空题(5个小题,每题2分,共10分):1.22.43.string.h4.7.0000005.a=3,b=4三、程序分析题,写出程序的运行结果(5个小题,每题4分,共20分):1.a=2,b=12.Turbo3.5+4+1=104.10,205.a+b=910+4+2=16四、程序填空题,将下面程序补充完整(10个填空,每空2分,共20分):1.①j=i②printf(“\n”)2.①floataverage(floata[10])或floataverage(floata[])②return(sum/10)3.①m=length(str)②*p!=‘\0’或*p4.①i%3==0②avg+=a[i]或avg=avg+a[i]5.①*cp=*cp+32或*cp=*cp+‘a’-‘A’②cp++五、程序设计题(3个小题,共20分):1.#include“stdio.h”voidmain(){inta,b,c,t;printf(inputa,bandc:);scanf(%d%d%d,&a,&b,&c);……1分if(ab){t=a;a=b;b=t;}……3分if(ac){t=a;a=c;c=t;}if(bc){t=b;b=c;c=t;}printf(%d%d%d,a,b,c);……1分}2.#include“stdio.h”voidmain(){floatscore;printf(“Inputascore:”);scanf(“%f”,&score);while(score100||score0)……2分{printf(“Error!Pleaseinputagain:\n”);scanf(“%f”,&score);}if(score=90)printf(“A\n”);……3分elseif(score=80)printf(“B\n”);elseif(score=70)printf(“C\n”);elseif(score=60)printf(“D\n”);elseprintf(“E\n”);}3.#includestdio.h#defineN10voidsort(inta[]);……1分voidmain(){inta[N],i,j;printf(input%dnumbers:\n,N);for(i=0;iN;i++)……2分scanf(%d,&a[i]);sort(a);……2分for(i=0;iN;i++)printf(%d,a[i]);}voidsort(inta[]){inti,j,temp;for(i=0;iN-1;i++)……5分for(j=0;jN-1-i;j++)if(a[j]a[j+1]){temp=a[j];a[j]=a[j+1];a[j+1]=temp;}}第二套试题一、单项选择题(15个小题,每小题2分,共30分):1.在一个源程序中,main函数的位置_____。A.必须在最前面B.必须在系统调用的库函数的后面C.没有具体要求D.必须在最后2.正确的用户自定义标识符是_____。A.a=2B.a+bC.nameD.default3.以下叙述中正确的是_____。A.break语句只能用于

1 / 38
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功