计通学院c语言真题(带答案)_第1页
计通学院c语言真题(带答案)_第2页
计通学院c语言真题(带答案)_第3页
计通学院c语言真题(带答案)_第4页
计通学院c语言真题(带答案)_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、适用专业年级:计06级,通信06级考试时间:100分钟1、本试卷共4页,试卷如有缺页或破损,请立即举手报告以便更换。2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。3、答案全部做在答题纸上,并写在密封线内和纸卷正面,否则不记分。一、单选题。从供选择的答案中选出正确答案。(每题1.5分,共36分)1、 以下定义和语句:charcl='b',c2='e'printf(d,%n,c2c1,c2-'a'+'A');则输出结果是:()A.2,MB.3,EC.2,ED.输出项与对应的格式控制不一致,输出结果不确定2、 若有两条语句st

2、aticcharx口="abcde"staticchary口='a','b','c','d','e'则下列语法中正确的是()A.x数组和y数组的长度相同B.x数组的长度小于y数组的长度C.x数组的长度大于y数组的长度D.x数组等价于y数组3、 以下程序的输出结果是()#definef(x)x*xmain()inta=6,b=2,c;c=f(a)/f(b);printf("%dn",c);A.9B.6C.36D.184、 在C语言中的if语句中,用作判断的表达式为()A.关系表

3、达式B.逻辑表达式C.算数表达式D.任意表达式5、 执行下面程序中输出语句后,a的值是()main()6、 inta;printf("%dn",(a=3*5,a*4,a+5);A.65B.20C.15D.106、 合法的数组定义是()B. static int a5=0,1,2,3,4,5D. static char a=0,1,2,3,4,5;A.staticinta="string"C.staticchara="string"7、 C语言可执行程序的开始执行点是()A.程序中的一条可执行语句B.程序中第一个函数C.程序中的main

4、函数D.包含文件中的第一个函数8、 判断两个字符串S1和S2相等的正确语句是()A.if(S1=S2)B.if(S1=S2)C.if(strcpy(S1,S2)D.if(strcmp(S1,S2)=0)9、 若有条件表达式(exp)?a+:b-,则以下表达式中能完全等价于表达式(exp)的是()A.(exp=0)B.(exp!=0)C.(exp=1)D.(exp!=1)10、 若fp是指向某文件的指针,且已读到此文件末尾,则库函数feof(fp)的返回值是()A.EOFB.0C.非零值D.NULLA.1098B.987C.10987D.987618、 以下叙述中不正确的是()A.在不同的函数中

5、可以使用相同名字的变量B.函数中的形式参数是局部变量C.在一个函数内定义的变量只在本函数范围内有效D.在一个函数内的复合语句中定义的变量在本函数范围内有效19、 能正确表示逻辑关系:"a>=10或a<0"的C语言表达式是()A.a>=10ora<=0B.a>=0|a<=10C.a>=10&&a<=0D.a<=0|a>=1020、 下列程序的输出结果是()main()doubled=3.2;intx,y;x=1.2;y=(x+3.8)/5.0;printf("%dn",d*y);A

6、.3B.3.2C.0D.3.0721、 为避免嵌套的条件分支语句ifelse的二义性,C语言规定,C程序中的else总是与()组成配对关系。A.其上面距它最近的,并且没有其他else与其配对的if相配对B.在同一彳f上的ifC.缩排位置相同的ifD.在其之前未配对的if22、 若有说明inta34;则a数组元素的非法引用是()A.a02*1B.a13C.a4-20D.a0423、 C程序中,若函数调用采用传值方式,则()A.实参和虚参各自占有存储单元B.实参和虚参共享存储单元C.由用户指定D.由计算机随机确定24、 以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是()m

7、ain()int*p,*q,a,b;p=&a;printf("inputa:");scanf("%d",*p);A. *p表示的是指针变量p的地址B. *p表示的是变量a的值,而不是变量a的地址C. *p表示的是指针变量p的值D. *p只能用来说明p是一个指针变量二、填空题。(每空1分,共15分)1、 一个函数一般由两部分组成:它们分别是()和()O2、 把数组元素按顺序存放的过程称为().3、 计算表达式8.0*(1/2)的值是().4、 当a=5,b=4,c=2时,表达式a>b!=c的值是().5、 若有定义:intx=3,y=2;fl

8、oata=2.5,b=3.5;则下面表达式的值为()(x+y)%2+(int)a/(int)b6、 使用两个下标的数组称为()数组。7、 在C语言中,逻辑运算符的优先级别从高到低依次是()8、 设a、b、c为整型数,且a=2,b=3,c=4,则执行完语句a*=16+(b+)-(+c);后,a的值是()9、在C语言中(以16位PC机为例),一个char型数据在内存中所占的字节数为();一个shortint型数据在内存中所占的字节数为();一个float型数据在内存中所占的字节数为()10、C语言中最简单的数据类型是()、()、()。三、程序分析题(每小题1.5分,共21分)1、 函数fun的功能

9、是:使一个字符串按逆序存放,请填空voidfun(charstr)charm;inti,j;for(i=0,j=strlen(str);i+,j-)m=stri;stri=;strj-1=m;printf("%sn",str);2、 写出该程序运行的结果.fun(intp)intd=5;d+=p+;printf("%d,",d);main()inta=3;intd=1;fun(a);d+=a+;printf("%dn",d);3、 使以下程序段输出10个整数,请填入一个整数。for(i=0;i<=;printf("%d

10、n",i+=2)4、 main()intsum=0,i;scanf("%d",&i);while(i<=10)sum=sum+i;i+;printf("%d",sum);输入1输出5、 把100-200之间的不能被3整除的数输出:main()intn;if(n%3=0);printf("%d",n);6、求(1+2!+20!)程序如下;mainfloats=0,t=1;intn;for(n=1;n<=20;n+)(1);(2);printf("1+2!+20!=%en",s);7、 #

11、include<stdio.h>main()inti=0,j=0,a=6;if(+i>0)|(j+>0)a+;printf("i=%d,j=%d,a=%dn",i,j,a);结果:8、 以下程序的输出结果是。main()inta=0a+=(a=8);printf("%dn",a);9、 下列程序段的输出结果是。main()charb="Hello,you"b5=0;printf("%sn",b);10、 函数pi的功能是根据以下近似公式求无值:(无*无)/6=1+1/(2*2)+1/(3*3

12、)+.+1/(n*n)现在请你在下面的函数中填空,完成求无的功能。#includedoublepi(longn)doubles=0.0;longi;for(i=1;i<=n;i+)s=s+;return(sqrt(6*s);请写出以下程序的输出结果。#includemain()inta=100:if(a>100)printf("%d'n”,a>100);elseprintf("%d'n",a<=100);12、 若变量已正确定义,以下语句段的输出结果是x=0;y=2;z=3;switch(x)caseO:switch(y=2

13、)case1:printf("*");break;case2:printf("%");break;case 1 :switch(z)case 2 :printf("$");case 3 tprintf("$");break;default:printf("#");13、 若从键盘输入58,则以下程序输出的结果是omain()inta;scanf("%d",&a);if(a>50)printf("%d",a);if(a>40)printf

14、("%d",a);if(a>30)printf("%d",a);14、 下面程序段的运行结果是x=2:doprintf("*");x-;while(x);四、程序设计题(每小题7分,共28分)1、 回文数是指正读和反读都一样的正整数。例如3773是回文数。求出1000,9999之间的回文数是偶数的最大回文数2、 一个14*14方阵A(i,j),其每个元素的值为该元素下标的平方和,求出该矩阵所有对角线元素的累加和(注:i,j从1到14)。3、 写一个判断素数的函数,在主函数输入一个整数,输出是否是素数的信息。4、 有5个学生,每个

15、学生的数据包括学号、姓名、2门课程的成绩,从键盘输入5个学生数据,要求输出5个学生2门课程总平均成绩。123456789101112131415BCCDBDCDBCCDCDC161718192021222324CBDDCADAB二、填空题。(每空1分,共15分)1、函数说明部分,函数体2、排序3、04、 15、 16、 二维7、 !&&|8、289、 1,2,410、 整型,实型,字符型注:1和10题顺序任意三、程序分析题(每小题1.5分,共21分)1、i<=j或i<j+1,strj-12、 8,43、 184、 555、for(n=100;n<=200;n+

16、),continue6、 t=t*n,s=s+t7、 i=1,j=0,a=78、 169、 Hello10、 1.0/(i*i)11、 112、 *#13、 58585814、 *四、程序设计题(每小题7分,共28分,答案不唯一,仅供参考1、main()inta1,b1,a2,b2,i,hws;for(i=1000;i<=9999;i+)a1=i/1000;b1=i/100-a1*10;b2=i/10-a1*100-b1*10;a2=i%10;if(a1=a2)&&(b1=b2)&&(i%2=0)hws=i;printf("所求的最大回文数为:%

17、d",hws);2、main()longa1515;longi,j,sum=0;for(i=1;i<15;i+)for(j=1;j<15;j+)aij=i*i+j*j;for(i=1;i<15;i+)sum=sum+aii;printf("%ld",sum);3、#include<stdio.h>#include<math.h>voidmain()inti,m;scanf("%d,&m);fun(m);voidfun(intm);inti,k;k=sqrt(m);for(i=2;i<=k;i+)if

18、(m%i=0)break;ifi>kprintf("%disaprimenumbern");elseprintf("%disnotaprimenumbern");4、#include<stdio.h>#include<string.h>Mainstructstudent5、 charno5;charname8;intscore2;studentrecord5;inti,sum=0,j,ave;printf("Pleaseinput5studentsscore:");for(i=0;i<5;i+)6、

19、 printf("Pleaseinput%dnumber:",i+1);printf("enternumber:");scanf("%S',recordi.no);printf("entername:");scanf("%S,);for(j=0;j<2;j+)printf("%S',subjectj);scanf("%d,&recordi.scorej);sum=sum+recordi.scorejave=sum/10;printf("totalaveragescoreis:%d”,ave);911、下面程序段的运行结果是()char*s="abcde"s+=2;printf("%d&quo

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论