已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C语言期末复习练习题一、选择题1). 能直接执行的程序是机器语言程序,在机器内部以 形式表示。 A) 条形码 B) 拼音码 C) 内码 D) 二进制码2). 以下叙述中不正确的是_。A)在函数中,通过return语句传回函数值 B)在函数中,可以有多个return语句C)在C中,函数的调用必需在一条独立的语句中完成 D)在C中,main后的一对圆括号中也可以带有形参3). 若一个外部变量的定义形式为static int x ; 其中static的作用是_。A)将变量存放在静态存储区,使x的值可以永久保留B)使变量x可以由系统自动初始化C)使x的值可以永久保留D)使x只能在本文件内引用4).已知:int x; float y;所用的scanf调用语句格式为: scanf(“x=%d;y=%f”,&x,&y); 则为了将数据10和66.6分别赋给x和y,正确的输入应当是: A)x=10;y=66.6 B) x=10,y=66.6C)10 66.6 D) x=10 y=66.6 5). 语句if (!i ) i+; 中的条件表达式 !i 等价于_。A)i=0B)i!=1C)i!=0D)-i6).下面程序的运行结果是: main() int x=10,y=10; printf(“%d %dn”,x-,-y); A) 10 9 B) 9 10 C) 10 10 D) 9 97).执行下面的程序段后,变量k中的值为: int k=3, s2; s0=k; k=s1*10;A) 不定值 B) 33 C) 30 D) 108).已知英文字母a的ASCII代码值是十六进制数61H,那么字母d的ASCII代码值是: A)34H B) 54H C) 24H D) 64H9) 若有以下说明: int a12=1,2,3,4,5,6,7,8,9,10,11,12; char c=a,d,g;则数值为4的表达式是: A) ag-c B)a4 C)ad-c D)ad-c10). 给出以下定义:char x=abcdefg;char y=a,b,c,d,e,f,g;则正确的叙述为: A)数组X和数组Y等价 B)数组x和数组Y的长度相同C)数组X的长度大于数组Y的长度 D)数组X的长度小于数组Y的长度11). C语言中规定,if语句的嵌套结构中,else总是与_配对。A)与最近的if 配套B)与第一个if 配套C)按缩进位置相同的if配套D)与最近的且尚未配对的if 配套12).若用数组名作函数参数,则传递的是: A) 数组的首地址B) 数组中第一个元素得值 C) 数组中全部元素的值D) 数组元素的个数13). 当执行以下程序段时_。x=-1; do x=x*x; while(!x); A)循环体将执行一次B)循环体将执行两次C)循环体将执行无限次D)系统将提示有语法错误14).一个源文件中定义的外部变量的作用域: A) 本文件的全部范围。 B) 本程序的全部范围。C) 本函数的全部范围。 D)从定义该变量的位置开始至本文件结束。15).C语言规定,调用一个函数,实参与形参间数据传递方式: A) 地址传递 B) 值传递 C)双向传递 D)由用户指定传递方式16).若有说明:int i, j=7,*p=&i;则与;等价的语句是: A) *p; B) *p=*&j; C) i=&j; D) i=*p;17).下面程序段的运行结果是_. char *s=abcde; s+=2;printf(%d,s); A)cde B)字符c C)字符c的地址 D)无确定的输出结果18)设p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确的执行的赋值语句是_.A)c=*p1+*p2; B)p2=c C)p1=p2 D)c=*p1*(*p2);19)若有说明语句 char a=It is mine; char *p=It is mine; 则以下不正确的叙述是_. A)a+1表示的是字符t的地址 B)p指向另外的字符串时,字符串的长度不受限制 C)p变量中存放的地址值可以改变 D)a中只能存放10个字符20)设有如下定义: struct sk int n; float x; data ,*p; 若要使p指向data中的n域,正确的赋值语句是_. A)p=&data.n; B)*p=data.n; C)p=(struct sk *)&data.n; D)p=(struct sk *)data.n;21). 以下不是c语言规定保留字的是( )。A)float B)integer C)signed D) unsigned22). 下述程序执行后的输出结果是( ) include main() int x=f; printf(%cn,a+(x-a+1); A)g B)h C)i D)j23). 设有程序#include main() int i,j; for (i=0,j=1;i=j+1;i+=2,j-) printf(%dn,i); 在运行上述程序时,for语句中循环体的执行次数是( )A)3 B)2 3)1 D)024)、错误的说明语句是:_A) char word=T, u, r, b, o, 0;B)char word=“Turbo0”;C) char word= “Turbo0”;D) char word= Turbo0;25)已知:int b5;则对b数组元素的正确引用是:_A) b5B) b3.5C) b(3)D) b10-1026)、在一个C源程序文件中,若要定义一个只允许在该源文件中所有函数使用的变量,则定义为: A) Auto B) staticC)externD)register 27). 假定a和b为int型变量,则执行下述语句组后,b的值为( )。 a=1; b=10; do b-=a; a+; while (b-0); A)9 B)-2 C)-1 D)828).在C语言中,以下描述正确的是: A) 函数的定义可以嵌套,但函数的调用不可以B) 函数的定义不可以嵌套,但函数的调用可以C) 函数的定义和调用都不可以嵌套 D) 函数的定义和调用均可嵌套29)下述程序代码中有语法错误的行是( )。 int i,ia10,ib10; /*第一行*/ for (i=0;i=9;i+) /*第2行*/ iai=0; /*第3行*/ ib=ia; /第4行*/ A)第1行 B)第2行 C)第3行 D)第4行30)若已定义 int a9,*p=a; 并在以后的语句中未改变p的值,则不能表示a1地址的表达式是( )。A)p+1 B)a+1 C)a+ D)+p31)若有定义:int a23,则对a数组的第i行j列元素地址的正确引用为_. A)*(ai+j) B)(a+i) C)*(a+j) D)ai+j32)执行下述程序后的输出结果是( )。#include void main()int f(int); int a=2,i; for(i=0;iage D)(*p).age35)以下程序for语句循环体中printf语句执行次数是( )。 #include #define N 2 #define M N+1 #define NUM (M+1)*m/2 main() int i; for (i=1;ib?a:(b+1)的值是:_ _3) 若定义:char ch;使指针指向变量ch的定义语句是:_ 通过指针p给变量ch赋值字符A的语句是:_ 通过指针p输出变量ch中字符的语句是:_ 4) 循环语句for(x=0,y=0;(y!=123)&(x4);x+)执行的循环次数是:_ _次。5) fp = fopen(“file1”,”r”)实现的操作是:_ 6)若x=2,y=3,则x&y的结果是_ _.7)C语言规定标识符只能有_ _三种字符组成,且第一个字符必须为_ _8)假设m是一个三位数,从右到左用a、b、c表示各位数字,则从左到右各个数字是bac的三位数的表达式是:_ 3)main()printf(“*%f,%4.3f*”,3.14,3.1415);输出结果:_ 5) 设有数组定义: char array =China; 则数组 array所占的空间为:_ _个字节三、程序阅读题1以下程序的输出结果是_。main ( ) int i=010,j=10,k=0x10;printf (“%d,%d,%dn”,i,j,k);2写出以下程序的功能。#include void main() int a,b,s; scanf(%d%d,&a,&b); s=a-b; if (ab) s=b-a; printf(%dn,s); 3以下程序的运行结果是 。#include void f(int a) int i=0;while (ai=10)printf(%3d,ai);i+;void main()int a=12,5,10,9,13,4;f(a+2);4写出以下函数的功能。#include int f(char *s)char *p=s;while(*p!=0) p+;return(p-s);5下面程序的运行结果是:_#include “stdio.h” main() char a=“Program”,*p; for(p=a ; pa+7 ; p+=2) putchar(*p);6以下程序的运行结果是_. struct n int x; char c; ;main() struct n a=10,x; func(a); printf(%d,%c,a.x,a.c); func(struct n b) b.x=20; b.c=y; 7以下程序输出的结果是_。 #includevoid main()int n; for(n=1; n=10; n+)if (n%2) continue; printf(%dt,n); 8阅读以下函数,写出此函数的功能。float fun1(float a,int n) int i=1; float result=a0; for( ; iai) result=ai; return result; 9以下程序的运行结果是 。#includeint a=8 , b=5;int max(int a,int b)int c;c=ab?a:b;return(c);void main()int a=2;printf(%dn,max(a,b);10运行以下程序,若输入:5 7时,写出程序的输出结果。#includevoid fun(int *p1, int *p2)int t;t=*p1;*p1=*p2;*p2=t;void main()int x,y;int *p1,*p2;scanf(%d %d,&x,&y);p1=&x; p2=&y;if(xy) fun(p1,p2);printf(x=%d,y=%d, x, y);11写出以下函数的功能。#include main() int a5=1,5,2,4,3,i,j,t; for(j=1;j=4;j+) for(i=0;i=4-j;i+) if(aiai+1) t=ai; ai=ai+1; ai+1=t; for(i=0;i5;i+)printf(%d,ai); 12下面程序的运行结果是_. main() struct cmplxint x; int y; cnum2=1,3,2,7; printf(%dn,cnum0.y/cnum0.x*cnum1.x);四、程序填空1) 以下函数从数组an中查找最大值并把该最大值作为函数的返回值。 findmax(int a,int n) int *p ,*s;for(p=a ,s=a ; p-a10 ; p+) if( ) s=p;return(*s);2)有以下程序段: s=1.0; for(k=1;k=n ;k+) s=s+1.0/(k*(k+1); printf(“%fn”,s); 请填空,使下面程序段的功能完全与之等同。 s=0.0; ; k=0; do s=s+d; ; d=1.0/(k*(k+1); while( ); printf(“%fn”,s);3)以下程序用来求数组全部元素的和,请填写缺少的语句。#includevoid main( )int a =0,1,2,3,4,5,6,7,8,9;int s=0 , i, *p;p= ;for (i=0; i10; i+) ;printf(sum=%d, s);4) 以下程序的功能是求出输入整数的个位数、十位数和百位数(1000以下的正整数)。请填空。#includevoid main()int x,a,b,c; doprintf(输入一个1000以下的正整数:); ; printf(n); while( ); if(x0) x=-x;a=x/100; b=(x-a*100)/10; c= ; printf(%d的个位数是%d,十位数是%d,千位数是%dn,x,c,b,a); 5) 以下函数的功能是返回b的e次幂。例如,intPow(2,3)的值为2*2*2。假定e是非0整数,b是整数。请填空。 int intPow(int b,int e)int result,n; for(n=0; ne; n+) ;return result; 五、编程题1下面的程序是用选择法对数组中10个整数按由小到大排序。请定义该程序中的sort函数。#include void main() void sort(int ,int ); int ,; printf(enter th
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 四川邮电职业技术学院《生物医学工程课程设计》2024-2025学年第一学期期末试卷
- 社会心理行业市场分析
- 止水带压缩永久变形试验记录
- 大学生职业生涯规划与就业创业指导(实践版)笔试题库 数字推理题;图形推理题
- 第三章 指数运算与指数函数(高效培优单元测试-强化卷)数学北师大版2019必修第一册(解析版)
- 本科生毕业论文(设计)题目审批表1
- 本科毕业论文导师评语(标准版)
- 论文选题指导老师意见
- 学术论文题名、署名和单位地址格式规范标准
- 浅谈汉语汉字对越南语言文字的影响
- 2024妊娠期心肺复苏中国急诊专家共识
- 建设单位安全生产教育培训计划
- 医院培训课件:《护理安全之警示教育》
- 眼耳鼻喉科护理质量提升工作计划
- 道路运输安全生产制度范本
- 2025年及未来5年中国人工智能医疗行业发展监测及市场发展潜力预测报告
- 制药企业安全生产培训
- 辽宋夏金元历史课件
- 危重症患者体温管理护理查房
- 宗教政策法规培训班课件
- 趋势洞察2025年教育行业信息化发展趋势及解决方案方案
评论
0/150
提交评论