




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言程序设计试卷2套笔试样卷(一)一单选题(每题1分,共20分)1.C语言程序的三种基本结构是顺序结构、( )结构和循环结构.A.选择 B.递归 C.转移 D.嵌套2.以下选项中不正确的整型常量是( ).A.0 B.029 C.20L D.-12343.在C语言程序中,用关键字( )定义短整型变量.A.short B.float C.double D.char4.若变量已正确定义并赋值,符合C语言语法的表达式是( )。A.a=3,5; B.a+=1 C.a=a+1=3 D.12.3%45.在a是单精度实型变量,c是基本整型变量,以下正确的输入语句是( ).A.scanf(“%f%d”,a,c); B.scanf(“%f%d”,&a,&c);C.scanf(“%f%f”,&a,&c); D.scanf(“%d%f”,&a,&c);6.在C程序中,用( )表示逻辑值“真”.A.true B.非0的数 C.非0整数 D.大于0的数7在C语言中,数字029是一个( )。A、八进制数 B、十六进制数 C、十进制数 D、非法数8数学表达式30age40的C语言表达式为( )。A、30age40 B、30=age40 C、30=age & age40 D、30=age |age100)break;B、for(;);C、int k=1000;do+k;while(k=10000);D、int s=36;while(s);-s;15、如果a=1,b=2,c=3,d=4,则表达式ab?a:c5 ) printf(%d,x); else printf(%dn,x-); A. 7和5 B. 6和3 C. 7和4 D. 6和417.以下程序段的输出结果是( ) int x=3; do printf(=,x-=2); while(!(-x); A. 1 B.3 0 C. 1 -2 D.死循环18.执行下面的程序后,a的值为( ) #include stdio.hvoid main()int a,b; for (a=1,b=1;a=20)break; if(b%3=1) b+=3; continue; b-=5; printf(%dn,a); A. 7 B. 8 C. 9 D. 1019.设a、b、c都是int型量,且a=3,b=4,c=5,则以下的表达式中,值为0的是( )A. a&bB. a=bC. a|b+c&b-cD!(ab)&!c|1)20.若i、j已定义为int类型,则以下程序段能输出*的个数是( ) for (i=5;i;i-) for(j=0;j3.5?(c=2,c+2):3的值为_。 将数学表达式 |a-b|(ax2+bx+c)转化为C的表达式为_。3、C语言中,存储字符串”China”以_作为结束的标志,共占用_个字节。4、设 int j,k; 执行for(j=k=3;j-1;k+=j-) ;后k的值是 。5、字符串“abctxf3n”(表示空格)的长度为 。6、设int x=4;表达式x+=x*=x+1的值是 。7、当s=7时,执行以下程序段后x=_。if(s0)&(s=3)&(s1)|(s8)x=3;else x=1;else x=0;三读程序、写结果题(每题4分,共32分)1.下列程序段的输出结果是_.#include stdio.hvoid main()int x=-10,y=1;if(x=0) if(x0)y=0;else y=-1;printf(“%d”,y);2执行以下程序的输出显示是 。#include stdio.hvoid main()int a=10,b=0;if (a=12) a=a+1; b=b+1;elsea=a+4; b=b+4;printf(%d:%dn,a,b);3.下列程序段的输出结果是_.#include stdio.hvoid main()int n=6;switch(n) case 1:n=1;break;case 2:n=2;break;case 3:n=3;break;default:n=4;printf(%d,n);4.下列程序段的输出结果是_.#include stdio.hvoid main()int k=0;if(!(k=1)printf(*);else printf (#);5下列程序段的输出结果是_.#include stdio.hvoid main()int i,x,y;i=x=y=0;do +i;if (i%2!=0) x=x+i;i+;y=y+i+;while (i=7);printf(x=%d,y=%dn,x,y);6. 下列程序段的输出结果是_.#include stdio.hvoid main() int i, k=19; while (i=k-1) k-=3;if (k%5=0) i+;continue;else if (k11) break;i+; printf(i=%d,k=%dn,i,k);7. 下列程序段的输出结果是_.#include stdio.hvoid main()char c;while (c=getchar()!=n)switch(c)case0:case1:putchar(c);case2:putchar(c);break;case3:putchar(c);default:putchar(c+1);break;printf(n);输入:13578. 下列程序段的输出结果是_.#include stdio.hvoid main()int i,j;for(i=4;i=1;i-) for(j=1;j=i;j+) printf(*); printf(n);四程序填空题(每空2分,共8分)1.以下程序的功能是:输入一行字符,统计其中的字母、空格、数字及其它字符的个数。请补充完整。#include void main()char c;int letter=0,space=0,digit=0,other=0;printf(请输入一行字符:n);while( )!=n) if ( _ ) letter+; else if (c= ) space+; else if (c=0&c=9) digit+; else other+;printf(字母数:%d,空格数:%d,数字数:%d,其它字符:%d,letter,space,digit,other);2.以下程序的功能是:用/41-1/3+1/5-1/7+公式求的近似值,直到某一项的绝对值小于10-6为止。请补充完整。#include void main()int s;float n,t,pi;t=1;pi=0;n=1.0;s=1;while (fabs(t)1e-6) pi=pi+t; n=n+2; s=-s; ;printf(PI=%.6f,pi*4);五程序设计题(1题6分,其它题8分,共30分)1输入圆的半径,计算圆周长、面积,并输出计算结果,要求输出结果保留2位小数。2输入三角形的三边,输出其为什么样的三角形(等边、等腰、一般)。3. 有一个分数序列2/1,3/2,5/3,8/5,13/8,21/13,求出这个数列的前20项之和。4. 求大于50的第一对孪生素数。所谓孪生素数是指相邻两个都是素数的奇数。笔试样卷(二)一单选题(每题1分,共20分)1. 在一个C程序中( )A. main函数必须出现在所有函数之前 B. main函数可以在任何地方出现C. main函数必须出现在所有函数之后 D. main函数必须出现在固定位置2.以下叙述中正确的是( )A.用C程序实现的算法必须要有输入和输出操作B.用C程序实现的算法可以没有输出但必须要输入C.用C程序实现的算法可以没有输入但必须要有输出D.用C程序实现的算法可以既没有输入也没有输出3. 以下不能定义为用户标识符的是( )A.scanf B.Void C._3com_ D.int4. 有以下程序void main() int i=10,j=1; printf(%d,%dn,i-,+j);执行后输出结果是( )A. 9,2 B. 10,2 C. 9,1 D. 10,15. 在C语言的if语句中,用以决定分支流程的( )A. 只能用逻辑表达式或关系表达式B. 只能用关系表达式C. 只能用逻辑表达式D. 可用任意表达式6. 以下选项中非法的表达式是( )A. 0=xa)|(m=ab); printf(%d,%dn,k,m);程序运行后的输出结果是A.0,0 B.0,1 C.1,0 D.1,18. 有定义语句:int x, y;,若要通过scanf(%d,%d,&x,&y);语句使变量x得到数值11,变量y得到数值12,下面四组输入形式中,错误的是( )A.11 12 B.11, 12C.11,12 D.11,129. 以下程序段( )x=-1;do x=x*x;while(!x);A.是死循环 B.循环执行两次 C.循环执行一次 D.有语法错误10. 若t为int类型,进人下面的循环之前,t的值为0 ,while( t=l ) 则以下叙述中正确的是( )A. 循环控制表达式的值为0 B. 循环控制表达式的值为1C. 循环控制表达式不合法 D. 以上说法都不对11. 下面程序的输出是( )#include “stdio.h”void main() int y=9;for(;y0;y-)if(y%3=0)printf(%d,y-);continue;A.741 B.852 C.963 D.87542112.以下程序的输出结果是( )#include “stdio.h”void main( )int a= -1,b=1;if(+a0)& ! (b- =0)printf(%d %dn,a,b);else printf(%d %dn,b,a);A.-1 1 B.0 1 C.1 0 D.0 013. 在C语言中,引用数组元素时,其数组下标的数据类型允许是( )。A.整型常量 B.整型表达式C.整型常量或整型表达式 D.任何类型的表达式14.以下不能对二维数组a进行正确初始化的语句是( )。A.int a23=0; B. int a3=1,2,0;C.int a23=1,2,3,4,5,6; D. int a3=1,2,3,4,5,6;15.有以下程序void main() int p7=11,13,14,15,16,17,18,i=0,k=0; while(iy?x:y; int f2(int x,int y) return xy?y:x; void main() int a=4,b=3,c=5,d,e,f; d=f1(a,b); d=f1(d,c); e=f2(a,b); e=f2(e,c); f=a+b+c-d-e; printf(%d,%d,%dn,d,f,e);执行后输出结果是( )A. 3,4,5 B. 5,3,4 C. 5,4,3 D. 3,5,418.下列选项中正确的语句组是( )A.char s8; s=Beijing; B.char *s; s=Beijing;C.char s8; s=Beijing; D.char *s; s=Beijing;19.有以下程序void fun(char *a, char *b) a=b; (*a)+; void main() char c1=A,c2=a,*p1,*p2; p1=&c1; p2=&c2; fun(p1,p2); printf(%c%cn,c1,c2);程序运行后的输出结果是( )A.Ab B.aa C.Aa D.Bb20. 设有如下定义struct ss char name10; int age; char sex;std3,*p=std;下面各输入语句中错误的是( )A. scanf(%d,&(*p).age); B. scanf(%s,&);C. scanf(%c,&std0.sex) D. scanf(%c,&(p-sex);二填空题(每空1分,共10分)1算术表达式(int)(13.7+25.6)/4%4的结果值是 。2当int x=2时,表达式x/=x+x的值是 。3字符串mx43np102q的长度是 。4定义如下变量:int x=2,y=3; 则表达式(+x)*(-y)的值是 。5执行以下程序后,输出#号的个数是 。#include void main() int i,j; for(i=1; i5; i+) for(j=2; j=i; j+) putchar(#);6假设int类型变量占用4个字节,有定义int a20=2,3,4,5;则数组a在内存中所占字节数是 。7执行下述程序的输出结果是_。#include void main() int arr10,i,k=0; for (i=0;i10;i+) arri=i; for (i=1;i4;i+) k+=arri+i/2; printf(%dn,k); 8如果某个函数在定义时,省略了函数类型,则默认的类型是 。9以下程序在运行时输入 10 20 30 则输出结果是 。 #include int func(int a,int b,int c) return (a+b+c); void main() int x,y,z; printf(Enter x,y,z: ); scanf(%d%d%d,&x,&y,&z); z=func(x,x+y,func(x,x+y,z); printf(z=%dn,z); 10设有如下变量说明语句int a8=44,55,12,42,94,18,6,67,*p=a;则通过指针变量p引用值为数组元素18的表达式是 。三读程序、写结果题(每题4分,共32分)1.下面程序的输出结果是 。#include stdio.hvoid main( ) int a,b; a=100; b=a+100?a+100:a+200; printf(%d %dn,a,b);2. 下面程序的输出结果是 。#include stdio.hvoid main( )int a=100,x=10,y=20,k1=5,k2=0;if(xy) if(y!=10) if(!k1) a=1; else if(k2) a=10; a=-1; printf(a=%dn,a);3下面程序的输出结果是 。#include void main() int x=1,y=0,a=0,b=0;switch(x) case 1: switch (y) case 0: a+;break; case 1:b+;break; case 2: a+; b+;break; case 3: a+;b+;printf(na=%d,b=%d,a,b);4下面程序的输出结果是 。#includevoid main()int f1=1,f2=1,k;for(k=1;k=4;k+) printf(%d,%d,f1,f2); if(k%2=0) putchar(n); f1=f1+f2; f2=f1+f2; 5下面程序的输出结果是 。#include void main() int i,n=0,0,0,0,0; for(i=1;i=4;i+) ni=ni-1*2+1; printf(%d ,ni); 6下面程序的输出结果是 。#include void main() int i=0; char x=China; char y=Chinese; while (xi!=0&yi!=0) if (xi=yi) printf(%c,xi+); else i+; printf(n);7下面程序的输出结果是 。#include int a=5;void fun(int b) static int a=10; a+=b+; printf(%d ,a);void main() int c=20; fun(c); a+=c+; printf(%dn,a);8下面程序的输出结果是 。#include
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 健康教育培训知识题课件
- 俱乐部饮水安全培训计划课件
- 集团档案组管理办法
- 建行岗位考试题库及答案
- 2025年病理学乳腺癌组织病理学特征分析答案及解析
- 税务违法检举管理办法
- 企业安全管理培训目的课件
- 食品安全风险评估模型-洞察及研究
- 出行安全课件
- 出行安全培训课件
- 大头儿子测试题及答案
- 日本所有番号分类
- T/CGCC 17-2018商业信誉评价体系
- 商场保洁服务应急预案
- 低空经济培训项目工程方案
- 国际压力性损伤-溃疡预防和治疗临床指南(2025年版)解读课件
- 外贸英语专业课件
- 心血管系统疾病相关专业医疗质量控制指标(2021年版)
- 苏教版六年级上册数学教案:19分数与分数相乘及分数乘法练习
- 2025学校食堂食品安全培训
- 疗养协议合同
评论
0/150
提交评论