




已阅读5页,还剩13页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
C程序设计复习题1一、选择题1组成C程序的基本单位是_。A)表达式与语句B)若干文件C)函数D)main函数2C程序中能直接让机器执行的文件是_C_。A)编辑后的.c源文件B)通过编译的.obj文件C)通过连接的.exe文件D)正在编辑的源文件存盘为后缀为exe的文件3有关以下函数的哪些说法是正确的_。 int add( int x;int y) z=x+y; return z; A)此函数能单独运行B)此函数存在语法错误C)此函数通过main函数能调用D)此函数没有语法错误4在C语言中,正确的int类型的常数是_。A)2UB)059C)3aD)0xAF5下列变量定义正确的是_。A)int x_1 ; y;B)int x=y=5 ;C)int for=4;D)int printf=2,x_y=2;6下列数据中,为字符的是_。A)ABB)AC)HowD)A2 7有程序段如下,不能表示为地址的是_。int x=2,*p; p=&x; x=x+1; A)&xB)pC)&pD)x8下列表达式没有错误的是_。int x,*p;A)5.0%2B)x+1=5C)&xD)&(x+1)9下列错误的语句是_。A)int k,*p=&k; scanf(“%d”,&k);B)int k,*p=&k; scanf(“%d”,p);C)int k,*p; *p=&k; scanf(“%d”,p);D)int k,*p ; p=&k; scanf(“%d”,p); 10任何复杂的程序,都是由_构成的。A)分支结构、顺序结构、过程结构B)循环结构、分支结构、过程结构C)顺序结构、循环结构、分支结构D)循环结构、分支结构11以下说法中正确的是_。A)程序总是从第一个定义的函数开始执行B)在程序中,要调用的函数必须在main函数中定义C)程序总是从main函数开始执行的D)程序中的main函数必须放在程序的开始部分12在语言类型说明中,int、char、short等类型的长度是_B_。A)由用户自己定义的B)与机器字长有关的C)固定的D)任意的13以下字符中,不正确的C语言转义字符分别是_。A)B)011C)D)xaa14以下选项中,合法的语言关键字是_。A)integerB)CharC)shortD)Long15若一个外部变量的定义形式为static int x ; 其中static的作用是_D_。A)将变量存放在静态存储区,使x的值可以永久保留B)使变量x可以由系统自动初始化C)使x只能在本文件内引用D)使x的值可以永久保留16若a为整型变量,则以下语句_。 a=-2; printf (“%dn”,a);A)赋值不合法B) 输出值为-2C)输出为不确定值D)输出值为217若有说明语句:int y4=0,0,0,0,0,0; 则正确的叙述是_。A)数组y的每个元素都可得到初值0B)二维数组y的行数为1C)该说明等价于int y04=0;D)有元素y00至y05可得到初值,其余元素均得不到初值018若short int 类型数据占两个字节,则下列语句的输出为_D_。int k=-1;printf(“%d,%un”,k,k); (%u 表示以无符号数输出,考察二进制知识)A)-1,-1B)-1,32767C)-1,32768D)-1,6553519已知:char a; int b; float c; double d; 执行语句c=a+b+c+d;后,变量c的数据类型是_D_。A)intB)charC)doubleD)float20假设定义变量如下:int x;float y;以下输入语句中_是正确的。A)scanf(“%f%f”,&y,&x);B)scanf(“%f%d”, y, x);C)scanf(“%f%d”,&y,&x);D)scanf(“%5.2f%2d”,&y,&x);21若有以下变量说明和数据的输入方式,则正确的输入语句为_。变量说明:float x1,x2;数据的输入方式:4.52 3.5A)scanf(“%f,%f”,&x1,&x2);B)scanf(“%f%f”,&x1,&x2);C)scanf(“%3.2f,%2.1f”,&x1,&x2);D)scanf(“%3.2f%2.1f”,&x1,&x2);22若变量已正确定义,与语句 if(ab)k=0;else k=1;等效的是_。A)k=(ab)?1:0?B)k=ab;C)k=a=b;D)a=b?0:1;23若有定义:int x,*pb;则正确的赋值表达式是_。A)pb=&xB)pb=xC)*pb=&xD)*pb=*x24已知:int a,*p=&a; 则为了得到变量a的值,下列错误的表达式为_。A)p0B)*pC)&*aD)*&a25在语言中,引用数组元素时,其数组下标的数据类型允许是_。A)整型常量B)整型表达式C)整型常量或整型表达式D)任何类型的表达式26若有定义:int b5;则以下对b 数组元素的正确引用是_。A)*&b5B)b+2C)*(*(b+2)D)*(b+2)27设有定义语句“char s=”123”;”,则表达式“s3”的值是_。A)1B)3C)0D)语法出错28语句if (!i ) i+; 中的条件表达式 !i 等价于_A_。A)i=0B)i!=1C)i!=0D)-i29设有int x,y; 以下语句判断x和y是否相等,正确的说法是该语句_。if (x=y) printf( x is equal to y.); A)语法错B)不能判断x和y是否相等C)编译出错D)能判断x和y是否相等30C语言中规定,if语句的嵌套结构中,else总是与_配对。A)与最近的if 配套B)与第一个if 配套C)按缩进位置相同的if配套D)与最近的且尚未配对的if 配套31以下有关switch语句的正确说法是_。A)break语句是语句中必须的一部分B)在switch 语句中可以根据需要使用或不使用break语句C)break语句在switch 语句中不可以使用D)在switch 语句中的每一个case都要用break语句 33当执行以下程序时,_。#includevoid main()int a; while(a=5)printf(%d ,a-); A)循环体将执行5次B)循环体将执行0次C)循环体将执行无限次D)系统会当机。34以下函数的类型是_。int sum(double x, double y)double s;s=x+y;return s;A)字符型B)不确定C)整型D)实型35以下叙述不正确的是_A_。A)一个C源程序文件必须包含一个main( )函数B)一个C源程序文件可由一个函数组成C)一个C源程序文件是一个编译单位D)一个C源程序文件可由多个函数组成注意:若要执行则必须包含一个main()函数36若用数组名作为函数调用时的参数,则实际上传递给形参的是_。A)数组元素的个数B)数组的第一个元素值C)数组中全部元素的值D)数组首地址37一个共用体变量所占内存是_。A)该共用体第一个成员所占的内存量B)该共用体最后一个成员所占的内存量C)该共用体占内存最多成员所占的内存量D)该共用体所有成员所需内存量的总和38C语言中结构体类型变量在程序执行期间_。A)所有成员一直驻留在内存中B)只有一个成员驻留在内存中C)部分成员驻留在内存中D)没有成员驻留在内存中39简单变量做实参时,实参与其对应的形参之间的数据传递方式是_。A)双向值传递方式B)地址传递方式C)单向值传递方式D)用户指定传递方式40C语言允许函数值类型的缺省定义,此时该函数值隐含的类型是_。A)long 型)float 型C)double型D)int型41以下叙述正确的是_。A)函数的定义和函数的调用均不可以嵌套B)函数的定义和函数的调用均可以嵌套C)函数的定义可以嵌套,但函数的调用均不可以嵌套D)函数的定义不可以嵌套,但函数的调用均可以嵌套42如果在一个函数中的复合语句中定义一个变量,以下正确的叙述是_。A)该变量在该函数中有效B)该变量只在该复合语句中有效C)该变量为不合法的变量D)该变量在本程序范围内有效43凡是在函数中未指定存储类别的局部变量,其隐含的存储类别是_C_。A)静态(static)B)外部(extern)C)自动(auto)寄存器(register)44若有定义char x = 12345; char y = 1, 2, 3, 4, 5;则 。A)x数组与y数组的长度相同B)x数组长度大于y的长度C)x 数组长度小于y数组长度D)x数组等价与y 数组45若在一个源程序文件中定义了一个允许其他源文件引用的实型外部变量x,则在另一文件中可以使用的引用说明是_。)extern float x;B)float x;)extern auto float x;D)extern static float x;46以下有关宏替换的叙述不正确的是_A_。A)宏名必须用大写字母表示B)宏替换不占用运行时间C)宏名不具有类型D)宏替换只是字符替换47C语言的编译系统对宏命令的处理是_B_。A)在程序连接时进行的B)在对源程序中的其它语句编译之前进行的C)在程序运行时进行的D)和C程序中的其它语句同时进行的48若p1、p2都是整型指针,p1已经指向变量x,要使p2也指向x,_ _是正确的。A)p2=p1B)p2=*p1C)p2=&p1D)p2=*p149下列对字符串的定义中,错误的是_ _ 。A)char str5= abcdeB)char str = abcdeC)char *str =abcdeD)char str = a, b, c, d, e, 050已知:int a8=0,1,2,3,4,5,6,7,*p=a; 则不能表示数组a中元素的表达式是_。A)*pB)a8C)*a D)ap-a二程序阅读题1描述以下程序的功能。#includevoid main()int x,y; printf(Please input x,y:); scanf(%d%d,&x,&y); if (x0) x=-x; if (y0) y=-y; printf(n%dn,x+y); 2写出以下程序的输出结果。#include void main()int num=0; while (num+=2); printf(%d ,num); 3写出以下程序的输出结果。#includevoid main()int x=10; do printf(%d ,x-=9); while(!(-x); 4写出以下程序的输出结果。#includevoid main()int a =1,3,5,7,9; int y=1,x,*p; p=&a1; for(x=0; x3; x+) y+=*(p+x); printf(%dn,y); 5写出以下程序的输出结果。#includevoid main()int y=5; for( ; y0; y-) if(y%2=0)continue; printf(%d, y); 6若输入为3 5 9,写出该程序的输出结果。#includevoid main()int a,b,c,x,y; printf(input three numbers: ); scanf(%d%d%d,&a,&b,&c); if(ab)x=a; y=b; elsex=b; y=a; if(xc) y=c; printf(%d,%d,x,y); 7阅读以下程序,写出程序的功能。#includevoid main()int a10=2,4,0,-5,10,6,-8,9,6,7; int i,s=0,count=0; for(i=0; i0) s+=ai,count+; else continue; printf (s= %d , count=%dn, s ,count); 8阅读以下函数,写出此函数的功能。float fun1(float a,int n) int i=1; float result=a0; for( ; iai) result=ai; return result; 9阅读以下函数,写出此函数的功能。void fun(char A ,int n)char tmp; int k; for (k=0; kn/2; k+)tmp=Ak; Ak=An-k-1; An-k-1=tmp; 10阅读以下程序,写出程序的运行结果。#include#define N 6void main()int aN=4,5,8,3,6,1; int j,t; for(j=0; jaj+1)t=aj; aj=aj+1; aj+1=t; for(j=0; jN; j+)printf(%5d,aj); 11阅读以下程序,写出此程序的功能。#includevoid main()char ch; int c=0,s=0,n=0,other=0; while (ch=getchar()!=n)if (ch=a&ch=A&ch=0&ch=9) n+; else other+; printf(Char:%dnSpace:%dnNumber:%dnOther:%dn,c,s,n,other); 12阅读以下程序,写出此程序的功能。#define N 10#includevoid main()int k,i,p,t,aN+1; for (i=1; i=N; i+)scanf(%d,&ai); for (k=1; kN; k+)p=k; for (i=k+1; i=N; i+)if (apai) p=i; t=ap; ap=ak; ak=t; for (i=1; i=N; i+) printf(%d ,ai); printf(n); 13下列程序有2个文件组成,写出运行结果。(可以做修改后的13题)/* file 1 */#include int x=20;int y=20;void func_add(void)y=10+x;x*=2;void main()extern void func_sub(); /* 声明一个外部函数 */x+=5;func_add();func_sub();printf( x=%d; y=%dn, x, y);/* file 2 */extern int x; /* 声明一个外部变量 */void func_sub()x-=5;修改后的13题#include int x=20;int y=20;void func_add(void)y=10+x;x*=2;void main()x+=5;func_add();func_sub();printf( x=%d; y=%dn, x, y);void func_sub()x-=5;14阅读下面的程序,写出它的运行结果。#includelong func(int m)long s;if (m=1) s=1;else s=m+func(m-1); return(s);void main() long y;y=func(4);printf( %2d,y);15写出以下函数的功能。 void fun(char str1 ,char str2 ) int i=0; while (str1i=str2i)!=0) i+;16阅读以下程序,写出此程序的结果。#includevoid increment()int x=0;x+=1;printf(%d,x);void main()increment();increment();increment();17写出以下程序的运行结果。(不做)#includevoid increment() static int x=0;x+=1;printf(%d,x);void main()increment();increment();increment();18阅读以下程序,写出此程序的结果。#includeint add(int a,int b) int c;c=a+b;return c; void print(int t) printf(z=%dn,t);void main()int x,y,z;void print(int t);x=5,y=10;z=add(x,y); print(z); 19阅读以下程序,写出程序运行的结果。#includeint f(int x,int y);void main()int a=1,b=2,c;c=f(a,b);printf(%dn,c);int f(int x, int y)int z;z=(xy)?x:y ;return(z);20若输入一个整数10,写出以下程序的运行结果。#include int sub(int a);void main()int a,e10,c,i=0;scanf(%d,&a);while (a!=0)c=sub(a);a=a/2;ei=c;i+;for(;i0;i-) printf (%d, ei-1);int sub(int a)int c;c=a%2;return(c);21写出以下程序的运行结果。#includesub(int n)int a;if (n=1) return(1);a=n+sub(n-1);return(a);void main()int i=5;printf(%dn,sub(i);22写出下面程序的运行结果。#include func(int a3) int i,j,sum=0;for (i=0;i3;i+)for(j=0;j3;j+)if(i=j) sum=sum+aij;return(sum);void main()int a33=1,3,5,7,9,11,13,15,17,sum;sum=func(a);printf(sum=%dn,sum);23写出下面程序的运行结果。#include void sort(int a )int i,j,t;for(i=0;i4;i+)for(j=0;jaj+1)t=aj;aj=aj+1;aj+1=t;void main()int a5=5,10,-7,3,7,i,t,j;sort(a);for(i=0;i=4;i+) printf(%5d,ai);printf(n);24写出下面程序的运行结果。#includevoid sort(int a) int i,j,t,p;for(j=0;j=4;j+)p=j;for(i=j;i=4;i+) if(aiap) p=i;t=ap;ap=aj;aj=t;void main()int a5=9,6,8,3,-1,i;sort(a);for(i=0;i=4;i+) printf(%d ,ai);printf(n);25写出以下程序的运行结果。#includeint a=5;int b=7;int plus(int x,int y)int z;z=x+y;return(z);void main()int a=4,b=5,c;c=plus(a,b);printf(a+b=%dn,c);26写出以下程序的运行结果。#includeint a=3,b=5;int max(int a,int b)int c;c=ab?a:b;return(c);void main()int a=8;printf(%dn,max(a,b);27写出以下程序的运行结果。#includeint x;void cude()x=x*x*x;void main()x=5;cude();printf(%dn,x);28写出以下程序输出结果。#include void main()int *p;int a6=1,2,3,4,5,6;p=a;for (;pa+6;p+)printf(%d ,*p);printf(n);29写出以下程序输出结果。#include void main() char str = this a program,*str1;str1=str; /* 指针变量str1指向字符串 */printf(%sn,str); /* 输出str所指向的字符串 */for(;*str1!=0;)printf(%c, *str1+);printf(n);str1-=7; /* 使str1指向字符p(包含空格第八个字符) */printf(%sn,str1);30阅读以下程序,写出运行结果。#includevoid main( )int a =0,1,2,3,4,5
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度生态环保型碎石料购销合同范本下载
- 2025版建筑垃圾清运与资源回收利用服务合同
- 2025版水利枢纽工程土石方工程居间服务协议书
- 2025版前期物业管理服务合同操作细则与实施
- 海南省昌江黎族自治县2025年上半年公开招聘村务工作者试题含答案分析
- 2025年度并购项目尽职调查顾问服务合同
- 贵州省长顺县2025年上半年公开招聘城市协管员试题含答案分析
- 贵州省沿河土家族自治县2025年上半年公开招聘城市协管员试题含答案分析
- 2025年二手房物业交接及业主权益保障与纠纷处理服务协议
- 2025版无线通信网络优化施工合同样本及实施细则
- (标准)棋牌室转让合同协议书
- 幼儿园膳食委员会组织机构及职责
- 高压防护架搭设方案
- 手术室护理实践指南:院感控制管理
- ERP方案设计与研究
- 高二语文秋季开学第-课:笔墨山河待君行
- 洗车实习个人总结
- 阆中古镇管理办法细则
- 幼儿园教师安全管理培训
- 2025年湖南省长沙市中考历史试卷(含解析)
- 公共邮箱使用管理办法
评论
0/150
提交评论