ImageVerifierCode 换一换
格式:DOCX , 页数:56 ,大小:39.51KB ,
资源ID:6030539      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6030539.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(程序设计基础.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

程序设计基础.docx

1、程序设计基础程序设计基础阶段测验(开卷)(请将答案写在答题纸上)一、单项选择题(每小题2分,共80分)(1)下列叙述中错误的是_。A)一个C语言程序只能实现一种算法B)C程序可以由多个程序文件组成C)C程序可以由一个或多个函数组成D)一个C函数可以单独作为一个C程序文件存在(2)下列叙述中正确的是_。A)每个C程序文件中都必须有一个main()函数B)在C程序中main()函数的位置是固定的C)C程序可以由一个或多个函数组成D)在C程序的函数中不能定义另一个函数(3)下列定义变量的语句中错误的是_。A)int _int;B)double int_;C)char For;D)float USS(

2、4)若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是_。A)+x,y=x-B)x+1=yC)x=x+10=x+yD)double(x)/10(5)以下能正确定义一维数组的选项是 _。A)int a5=0,1,2,3,4,5;B)char a=0,1,2,3,4,5;C)char a=A,B,C;D)int a5=0123;(6)若有定义int x,y;并已正确给变量赋值,则以下选项中与表达式(x-y)?(x+): (y+)中的条件表达式(x-y)等价的是_。A)(x-y0)B)(x-y0)C)(x-y0)D)(x-y=0)(7)有以下程序main()int x,y,z;x=y=1;z

3、=x+,y+,+y;printf(%d,%d,%dn,x,y,z);程序运行后的输出结果是_。A)2,3,3B)2,3,2C)2,3,1D)2,2,1(8)设有定义:int a; float b;执行scanf(%2d%f,&a,&B);语句时,若从键盘输入876 543.0,a和b的值分别是_。A)876和543.000000B)87和6.000000C)87和543.000000D)76和543.000000(9)有以下程序main()int a=0,b=0;a=10; /*给a赋值b=20; 给b赋值 */printf(a+b=%dn,a+B); /* 输出计算结果 */程序运行后输出结

4、果是_。A)a+b=10B)a+b=30C)30D)出错(10)在嵌套使用if语句时,C语言规定else总是_。A)和之前与其具有相同缩进位置的if配对B)和之前与其最近的if配对C)和之前与其最近的且不带else的if配对D)和之前的第一个if配对(11)下列叙述中正确的是_。A)break语句只能用于switch语句B)在switch语句中必须使用defaultC)break语句必须与switch语句中的case配对使用D)在switch语句中,不一定使用break语句(12)有以下程序main()int k=5;while(-k) printf(%d,k-=3);printf(n);执行

5、后的输出结果是_。A)1B)2C)4D)死循环(13)有以下程序main()int I;for(I=1;I0|E0)C)(E=0)D)(E!=0)(22)要求通过while循环不断读入字符,当读入字母N时结束循环。若变量已正确定义,以下正确的程序段是_。A) while(ch=getchar()!=N) printf(“%c”,ch);B) while(ch=getchar()!=N) printf(“%c”,ch);C) while(ch=getchar()=N) printf(“%c”,ch);D) while(ch=getchar()=N) printf(“%c”,ch);(23)有以下

6、程序main()int p8=11,12,13,14,15,16,17,18,i=0,j=0;while(i+7) if(pi%2) j+=pi;printf(%d ,j);程序运行后的输出结果是 _。A)42B)45C)56D)60(24)以下叙述中错误的是_。A)C语句必须以分号结束B)复合语句在语法上被看作一条语句C)空语句出现在任何位置都不会影响程序运行D)赋值表达式末尾加分号就构成赋值语句(25)以下叙述中正确的是_。A)调用printf函数时,必须要有输出项B)使用putchar函数时,必须在之前包含头文件stdio.hC)在C语言中,整数可以以十二进制、八进制或十六进制的形式输出

7、D)调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码(26)若整型变量a、b、c、d中的值依次为:1、4、3、2。则条件表达式ab?a:c=kB)-k+C)k%int(f)D)k=f=m(33)设有定义:int a=2,b=3,c=4;,则以下选项中值为0的表达式是_。A)(!a=1)&(!b=0)B)aC)a & bD)a|(b+B)&(c-A)(34)有以下程序段int k=0,a=1,b=2,c=3;k=ac ? c:k;执行该程序段后,k的值是_。A)3B)2C)1D)0(35)有以下程序段int n,t=1,s=0;scanf(%d,&n);do s=s+t

8、; t=t-2; while (t!=n);为使此程序段不陷入死循环,从键盘输入的数据应该是_。A)任意正奇数B)任意负偶数C)任意正偶数D)任意负奇数(13)(36)数字字符0的ASCII值为48,若有以下程序main() char a=1,b=2;printf(%c,b+);printf(%d ,b-a);程序运行后的输出结果是 _。A)3,2B)50,2C)2,2D)2,50(37)有以下程序main() int m=12,n=34;printf(%d%d,m+,+n);printf(%d%d ,n+,+m);程序运行后的输出结果是_。A)12353514B)12353513C)1234

9、3514D)12343513(38)有定义语句:int b;char c10; ,则正确的输入语句是 _。A)scanf(%d%s,&b,&c);B)scanf(%d%s,&b,c);C)scanf(%d%s,b,c);D)scanf(%d%s,b,&c);(39)有以下程序main() int m,n,p;scanf(m=%dn=%dp=%d,&m,&n,&p);printf(%d%d%d ,m,n,p);若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是_。A)m=123n=456p=789B)m=123 n=456 p=789C)m=123,

10、n=456,p=789D)123 456 789(40)有以下程序main()int a,b,d=25;a=d/10%9;b=a&(-1);printf(%d,%d ,a,b);程序运行后的输出结果是 _。A)6,1B)2,1C)6,0D)2,0二、程序设计题(每小题10分,共20分)1使用循环语句编程实现:打印下面的图形。1 2 3 4 5 6 7 8 92 2 3 4 5 6 7 8 93 3 3 4 5 6 7 8 94 4 4 4 5 6 7 8 95 5 5 5 5 6 7 8 96 6 6 6 6 6 7 8 97 7 7 7 7 7 7 8 98 8 8 8 8 8 8 8 99

11、 9 9 9 9 9 9 9 92使用数组编程实现:从键盘输入一串字符(可能含空格),逆序输入这些字符。第3章 选择结构程序设计一、选择题5.1 在C程序中,判逻辑值时,用“非0”表示逻辑值“真”, 又用“0”表示逻辑值“假”。 在求逻辑值时,用( )表示逻辑表达式值为“真”,又用()表示逻辑表达式值为“假”。AA)1 0 B)0 1 C)非0 非0 D)1 15.2 已知int x=6,y=2,z;则执行表达式z=x=xy后,变量z的值为 BA)0 B)1 C)4 D)55.3 能正确表示逻辑关系:“a10或a0”的C语言表达式是 DA)a=10 or a=0|a=10 &a=10a=05.

12、4 若变量c为char类型,能正确判断出c为小写字母的表达式是 DA)a=c=a)|(c=z)C)(a=c) D)(c=a)&(c=z)5.5 设int x=1,y=1;表达式(!x|y- -)的值是 BA)0 B)1 C)2 D)-15.6 有如下程序段int a=14,b=15,x;char c=A;x=(a&b)&(cb)&(n=cd)后n的值是 BA)1 B)2 C)3 D)45.9 已知x,y,z均为整型变量,且值均为1,则执行语句+x|+y&+z;后,表达式x+y的值为 CA)1 B)2 C)3 D)45.11 若运行时给变量x输入12,则以下程序的运行结果是 Amain()int

13、 x,y;scanf(%d,&x);y=x12?x+10:x-12;printf(%dn,y);A)0 B)22 C)12 D)105.12 已知char ch=C;则以下表达式的值是 Dch=(ch=A & ch=Z)?(ch+32):ch;A)A B)a C)Z D)c 5.13 若有条件表达式 (exp)?a+:b-,则以下表达式中能完全等价于表达式(exp)的是 BA)(exp=0) B)(exp!=0) C)(exp=1) D)(exp!=1)5.14 有以下程序 Cmain()int i=1,j=1,k=2;if(j+|k+)&i+)printf(%d,%d,%dn,i,j,k);

14、执行后输出结果是A)1,1,2 B)2,2,1 C)2,2,2 D)2,2,35.15 请阅读以下程序: Dmain() int a=5,b=0,c=0;if(a=b+c)printf(*n);else printf(n);以上程序A)有语法错不能通过编译 B)可以通过编译但不能通过连接C)输出* D)输出5.16 若执行下述程序时,若从键盘输入6和8时,结果为 Cmain()int a,b,s;scanf(%d%d,&a,&b);s=a;if(ab)s=b;s*=s;printf(%d,s);A)36 B)64 C)48 D)以上都不对5.17 有如下程序main()float x=2.0,

15、y;if(x0.0)y=0.0;else if(x10.0)y=1.0/x;else y=1.0;printf(%fn,y);该程序的输出结果是 CA)0.000000 B)0.250000 C)0.500000 D)1.0000005.18 以下4个选项中,不能看做一条语句的是 CA); B)a=5,b=2.5,c=3.6;C)if(a30?b:c;switch(d) case 30 : printf(%d,a);case 40 : printf(%d,b);case 50 : printf(%d,c);default : printf(#);则输出的结果是A)40,50, B)50,# C

16、)40,# D)40,50,#5.21 现有如下程序段,此程序段编译有错误,则程序段的错误出在#include main() int a=30,b=40,c=50,d; d=a30?b:c;switch(d) case a:printf(%d,a);case b:printf(%d,b);case c:printf(%d,c);default:printf(#);A)default:printf(#);这个语句B)d=a30?b:c;这个语句C) case a:printf(%d,a); case b:printf(%d,b); case c:printf(%d,c);这三个语句D)switc

17、h(d)这个语句二、填空题5.22 设y是int型,请写出y为奇数的关系表达式 【1】 。 y%2!=0或者y%2=15.24 将以下程序写成三目运算表达式是【3】 。ab?a:bif(ab)max=a;else max=b;5.25 以下程序输出的结果是【4】。0main() int a=5,b=4,c=3,d;d=(abc);printf(%dn,d);5.26 若从键盘输入58,则以下程序输出的结果是 【5】 。585858main()int a;scanf(%d,&a);if(a50)printf(%d,a);if(a40)printf(%d,a);if(a30)printf(%d,a

18、);5.29 以下程序的输出结果是【8】。 -1main() int x=100, a=10, b=20, ok1=5, ok2=0;if(ab)if(b!=15)if(!ok1)x=1;else if(ok2)x=10;else x=-1;printf(%dn, x);5.30 阅读下面的程序,当程序在执行时,如果输入的是A,则输出结果为 【9】 。 #include stdio.hmain()char a; a=getchar(); switch(a) case 65: printf(%c,A);case 66: printf(%c,B);default :printf(%sn,other

19、); ABother ( 因为没有break语句。)第3章 循环结构控制一、选择题1设有程序段 int k=10; while(k=0)k=k-1; 这下面描述中正确的是_c_. a)while循环执行10次 b)循环是无限循环 c)循环体语句一次也不执行 d)循环体语句执行一次2语句while(!E);中的表达式!E等价于_a_.a)E=0 b)E!=1 c)E!=0 d)E=13下面程序段的运行结果是_c_. int n=0; while(n+=2);printf(%d,n);a)2 b)3 c)4 d)有语法错4下面程序的运行结果是_b_. #include main() int num

20、=0; while(num=2) num+; printf(%dn,num); a)1 b)1 c)1 d)1 2 2 2 3 3 45以下程序段_c_. x=-1; do x=x*x; while(!x); a)是死循环 b)循环执行二次 c)循环执行一次 d)有语法错误6若有如下语句 int x=3; doprintf(%dn,x-=2);while(!(-x); 则上面程序段_b_.a)输出的是1 b)输出的是1和-2c)输出的是3和0 d)是死循环7下面程序的运行结果是_d_. #includemain() int y=10; doy-;while(-y); printf(%dn,y-

21、); a)-1 b)1 c)8 d)08以下正确的描述是_b_.a)continue语句的作用是结束整个循环的执行b)只能在循环体内和switch语句体内使用break语句c)在循环体内使用break语句或continue语句的作用相同d)从多层循环嵌套中退出时,只能使用goto语句二、填空题1.下面程序段是从键盘输入的字符中统计数字字符的个数,用换行符结束循环。请填空。 int n=0,c; c=getchar(); while(_c!=n_) if(_c=0&c=9_) n+; c=getchar(); 2下面程序的功能是用辗转相除法求两个正整数的最大公约数。请填空。 #include main() int r,m,

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1