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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

C程序设计参考题型.docx

1、C程序设计参考题型C语言程序设计参考题型说明: 本套练习题仅反映考试的题型,作为考前复习和参考。 不要死记硬背,而是通过题目掌握其涉及的知识点和程序所涉及的重要算法。一、单选题1. C程序的基本构成单位是 【C 】A)文件 B)命令 C)函数 D)语句2. 在C语言中,a是 【 B 】A)字符串常量 B)字符常量 C)变量 D)函数3. 在C语言中,“a=b=c=5”属于哪种表达式? 【 B 】A)关系 B)赋值 C)逻辑 D)非法4. 设a、b为整型,则表达式(a=2,b=5,b+,a+b)的值是 【 D 】A)2 B)6 C)7 D)85. 若有以下变量定义:int b=2;float a

2、=5;则表达式“ab”之值为 【 A】A)2.5 B)2 C)3 D)5/26. 若j=3,则表达式(+j)+(j+)的值为 【 C 】A)6 B)7 C)8 D)107. 以下只能输入单个字符的函数是 【 C 】A)printf( ) B)puts( ) C)getchar( ) D)putchar( )8. 若a的原值为4,则表达式“a*=a-=3”运算后,a的值是 【 D 】 A)13 B)4 C)3 D)19. 若a=5、b=3、c=1,则表达式“abc”的值为 【 A 】 A)0 B)1 C)3 D)510. 若有代数式: 以下错误的C语言表达式是 【 C 】A)a/b/c*e*3

3、B)3*a*e/b/c C)3*a*e/b*c D)a*e/c/b*311. 下列能输出字符数组str中字符串的语句是 【B】 A)printf(%c,str0); B)printf(%s,str);C)printf(%s,str); D)putchar(str);12. 若p=&x,则下列关系表达式之值为1的是 【 B 】 A)p=x B)*p=x C)&p=x D)*x=p13. C语言中最基本的数据类型包括 【 B 】 A)整型、实型、逻辑型 B)整型、实型、字符型C)整型、逻辑型、字符型 D)整型、实型、字符串型14. C语言中,要求运算对象必须是整型数据的运算符是 【 A 】 A)%

4、 B)/ C) D)&15. 表示数学关系“xyz”的C语言表达式是 【 C 】 A)x=y=z B)x=y | y=z C)x=y&y=z D)xyz16. 以下说法中正确的是 【 C 】 A)C程序总是从文件中第一个函数开始执行B)C程序中,只有main( )函数才可以调用其他函数C)C程序总是从main( )函数开始执行D)C程序中的main( )函数必须放在程序的开头17. 若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值为 【 A 】 A)2.5 B)2.75 C)3.5 D)018. 设变量a是整型,f是实型,i是双

5、精度型,则表达式10+a+i*f值的数据类型为 【 C 】 A)int B)float C)double D)不确定19. 有输入语句:scanf(%d,%d,&a,&b);为使变量a、b分别为5和3,从键盘输入数据的正确形式为 【 B 】 A)5 3 B)5,3 C)a=5 b=3 D)a=5,b=320. 定义如下变量和数组: int j; int x33=1,2,3,4,5,6,7,8,9; 则下面语句的输出结果是 【 C 】 for(j=2; j=0; j-) printf(%2d,xj2-j); A)1 5 9 B)1 4 7 C)7 5 3 D)3 6 921. 执行下面程序后,a

6、的值是 【 B 】 #define SQR(x) x*x void main( ) int a=10,k=2,m=1; a=SQR(k+m); printf(%dn,a); A)10 B)5 C)2 D)122. 以下叙述不正确的是 【 C 】 A)在函数内部定义的变量是局部变量B)函数中的形式参数是局部变量C)全局变量的作用范围仅限于其所在的整个文件D)局部变量的作用范围仅限于本函数23. 设a=3,b=4,c=2,d=1,则表达式“ab?a:cd?c:d”的值为 【 C 】A)4 B)3 C)2 D)124. 有以下程序段:x=-1;dox=x*x;while(!x);执行时,循环体执行的

7、次数为 【 B 】A)0 B)1 C)2 D)不确定25. 以下不正确的if语句形式是 【 C 】 A)if(xy&x!=y);B)if(x=y) x+=y;C)if(x!=y) scanf(%d,&x) else scanf(%d,&y);D)if(xy) x+;y+;26. 以下程序的输出结果是 【 C 】void main( ) int x=2,y=-1,z=2; if(xy) if(y0) z=0; else z+=1; printf(%dn,z);A)0 B)1 C)2 D)327. 以下能正确计算12310的程序段是 【 A 】A) i=1,s=1; B) s=1;i=1; do

8、while(i=10) s=s*i;i+; s=s*(+i); while(i11);C) for(i=1,s=0;i=10;i+) D)for(i=1,s=1;i+) s=s*i; s=s*i;28. 若j为整型变量,则以下循环执行次数是 【 C 】 for(j=0;j=0;) printf(%d,j-); A)无限次 B)0次 C)1次 D)2次29. 若有说明:int a10;则对a数组元素的正确引用是 【 C 】 A)a3.5 B)a(8) C)a6-5 D)a1030. C语言规定,变量做实参时,它和对应形参之间的数据传递方式是 【 B 】A)地址传递 B)单向值传递 C)双向值传递

9、 D)由用户指定传递方式31. C中,一个float类型的数据在内存中占用的字节数是 【 C 】A) 1 B) 2 C) 4 D) 832. 设有程序段:int k=5;while (k=0)k-;则下列描述中正确的是 【 C 】A) while循环执行5次 B) 循环是无限循环 C) 循环语句一次也不执行 D) 循环体语句执行一次33. 下面程序段的运行结果是 【 B 】char c5= a, b, 0, c, 0 ; printf(“%s”, c);A) ab B) ab C) Abc D) abc34. 以下不正确的字符串赋值语句是 【 C 】A) char *s; s=abcde; B

10、) char s =abcde;C) char s10; s=abcde; D) char *s=abcde;35. 设p1、p2是指向int型一维数组的指针变量,k为int型变量,以下错误的语句是 【 B 】A) k=*p1+*p2; B) p2=k; C) p1=p2; D) k=p2-p1;36. 下面程序的输出结果是 【 A 】void main( ) char s = ABCD; char *p; for (p=s;pbc”属于哪种表达式? 【A】A) 关系 B) 赋值 C) 逻辑 D) 非法43. 以下不合法的C表达式是 【C】A) 10 | 8 B) 12=9+1 C) +5 D

11、) x!=y44. 给定以下程序段:int n=10;while (n6) n-;printf(“%3d”,n);以上程序段输出结果是 【D】A) 10 9 8 B) 9 8 7 C) 10 9 8 7 D) 9 8 7 645. 若i,j已定义为int型,则以下程序段中内循环总的执行次数是 【C】for (i=5; i0; i-)for (j=1; j6; j+)A) 30 B) 24 C) 25 D) 2046. 若已定义:float *p, m=3.14159; 则使p指向m正确的赋值语句是 【B】A) p=m; B) p=&m; C) *p=m; D) *p=&m;47. 若已定义:c

12、har s10; 则下面表达式中不能作为s1地址的是 【A】A) s+ B) s+1 C) &s0+1 D) &s148. 已知:int a=3, b=5, t; 要将a和b中的数值进行交换,错误的程序段是 【 C 】A. a=a+b; b=a-b; a=a-b; B. t=a; a=b; b=t;C. t=a; b=a; a=t; D. t=b; b=a; a=t;49. 关于C程序中的#include ,错误的描述是 【D 】A. 它是C语言的预编译命令 B. 在程序中该行尾部不需要分号C. 用于将math.h包含进来 D. math.h是一个函数50. 下列C程序段的输出结果是 【 C

13、】int a=0;switch(a) case 0: printf(“a=0”); case 1: printf(“a=1”); default: printf(“default”);A. a=0 B. a=0default C. a=0a=1default D. default51. 已知:int a, x, y; 有语法错误的C语句是 【 B 】A. while(x) y+; B. while(x+y=0) a+;C. while(xy); D. while(y=5) +x;52. 对于do while( )语句,错误的说法是 【 C 】 A. 用条件控制循环体的重复执行 B. 循环体至少

14、要执行一次 C. 循环体有可能一次也不执行 D. 循环体中可以包含若干条语句53. 已知:int a, x, y; 有语法错误的C语句是 【同51 ,B 】A. while(x) y+; B. while(x+y=0) a+;C. while(xb | c的值为_1_。4. 整数m既能被3整除又能被4整除的逻辑表达式为_ m%3=0& m%4=0_。5. 若有定义:double a105; 则数组a中行下标最大值为_9_,列下标最大值为_4 _。6. 若有定义:int a 1,4,6,5,8,9; 则 *(a+5) 的值为_9_。7. 设有如下定义int a56,*p; 取数组元素a42的地址

15、放到p中的语句为_ p=&a42_。8. 未加特别说明(说明为静态的)的全局变量是外部的,能被其它文件中的函数使用,而在引用它的文件中,需要用关键字_ extern _说明。9. 已知a=10,b=20,则表达式!ab的值为_0_。10. 写出0x1的C逻辑表达式_0x & x=a & c=A & c=Z。12. 实现变量a和b交换的语句或语句序列是t=a; a=b; b=t; 或 a=a+b; b=a-b; a=a-b;。13. 若有定义:int a10,*p=a; 则元素a5的值用p表示的形式是_*(p+5)_。14. 若有定义:int *p4; 则标识符p表示_指针数组名_。15. 凡是

16、函数中未指定存储类型的局部变量,其默认的存储类型为_ auto _。三、程序填空1. 下面程序的功能是:从键盘输入一个字符,若是大写字母,则转换为小写字母并输出,若为小写字母则直接输出,请在_处填上合适内容,使程序完整。include void main( ) char ch; ch=getchar( ); if (_ch=A & ch=Z_) ch+=32; printf(“%c”, ch);2. 下面程序的功能是:求1100间的偶数和,请在_处填上合适内容,使程序完整。#include void main( ) int num, sum=0; for (num=2; num=100; nu

17、m=num+2) _ sum+=num _; printf(1-100间的偶数和是:%dn, sum);3. 下面程序段是求n!的递归函数,请将函数补充完整。double fac(int n) double result; if (n= =1) result=1; else result=_ fac(n-1)*n _; _ return result _;4. 以下程序的功能是:输入一整数n,判断是否为素数。 #include void main( ) int i, n;scanf(“%d”,&n);for (i=2; _i=n_)printf(“%d is a prime number.n”

18、, n);elseprintf(“%d is not a prime number.n”, n);5. 如下程序实现字符串逆序 #include #include void main() char *p1, *p2, c, s50; scanf(“%s”, s); p1=s;p2=s+strlen(s)-1; for(; p1p2 ; p1+, p2-) c=*p1; *p1=*p2; *p2=c; printf(“The new string is %sn”, s);四、阅读程序1. include void main( ) char ch; int cnt1=0,cnt2=0; while

19、 (ch=getchar( )!=n) if (ch=a&ch=z) cnt1+; else cnt2+; printf(COUNT=%dn,cnt1); 若输入“This is a C program.”,运行结果:_ COUNT=13_2. #include void main( ) int i, j, temp; int a=0,1,2,3,4,5,6,7,8,9; for(i=0, j=9; ij; i+, j-) temp=ai; ai=aj; aj=temp; for(j=0; j10; j+) printf(%2d, aj); 运行结果:9 8 7 6 5 4 3 2 1 0 3

20、. #include #include void main( ) char str1=good,str2=morning; int i, j; for(i=strlen(str1),j=0;str2j!=0; i+, j+) str1i=str2j; str1i=0; printf(string1=%s,str1); 运行结果:_ string1=goodmorning _4. #include void main( ) int i, j, pos; float val, a10; for(i=0; i10 ;i+) scanf(%f, &ai); val=a0; for(j=0; jval)

21、 val=aj; pos=j; printf(Max=%f,position:%d, val, pos);本程序的功能是:_从键盘输入的十个实数中,求出最大数及其位置序号并输出。5. #include float average(int x, int n) int i; float sum=0; for(i=0;in;i+) sum+=xi; return(sum/n); void main( ) int a5=2,4,6,8,10; float rst; rst=average(a,5); printf(result=%fn,rst); 运行结果:_ result=6.000000 _6.

22、给定如下程序: #include void main( ) char grade;scanf(“%c”, &grade);switch (grade) case A: printf(85100n); break;case B: printf(7084n); break;case C: printf(6069n); break;case D: printf(60n); break;default: printf(errorn);当程序运行时,从键盘输入“b”,输出的结果是:_7084_。7. 给定如下程序:#include void main( ) int a5=2,5,3,7,6, i, j, t; for (i=0; i4; i+) for (j=0; jaj+1) t=aj; aj=aj+1; aj+1=t; for (i=0;

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

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