C复习题(选择填空)
期末C程序考试复习题答案
29、设有程序段
int a=8;
while(a=0) a++;
则下面描述正确的是( C )。
A、while循环执行10次 B、循环是无限循环
C、循环体一次也不执行 D、循环体只执行一次
C、ch=‘7’+‘9’ D、ch=7+9
2、以下4组用户定义标识符中,全部合法的一组是 (A ) 。
A、s_5 B、If C、txt D、int
about -max REAL k_2
24、下列形式的常数中,C程序不允许出现的是( D )。
A、 0.98 B、 6e4 C、 77.6e-2 D、 E8
25、分析以下程序:
void main( )
{ int x=5,a=0,b=0;
if(x=a+b) printf("** **\n");
( A )
A、1 0 B、0 1 C、非0 非0 D、1 1
22、C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符( C )。
[转] 期末C程序考试复习题答案(选择题和填空题) 转载自 万洪超 转载于2010年06月18日 16:37 阅读(2) 评论(0)
分类: 转转 举报
一、单选题:
1、已知ch是字符型变量,下面不正确的赋值语句是( B )。
A、ch=‘\0’ B、ch=‘a+b’
A、1 B、2 C、-1 D、-2
5、已知:int i=5;执行语句i+=++i;后,i的值是( C )
C语言期末复习题
第一单元程序设计和C语言一、选择题1.C语言的基本构成单位是: A 。
A. 函数B. 函数和过程C. 超文本过程D. 子程序2.一个C语言程序总是从 B 开始执行。
A. 主过程B. 主函数C. 子程序D.主程序3.C语言的程序一行写不下时,可以。
A. 用逗号换行B. 用分号换行C. 在任意一空格处换行D. 用回车符换行4.以下叙述不正确的是: C 。
A. 在C程序中,语句之间必须要用分号";"分隔B. 若a是实型变量,C程序中a=10是正确的,因为实型变量中允许存放整型数C. 在C程序中,无论是整数还是实数都能正确无误地表示D. 在C程序中,%是只能用于整数运算的运算符5.以下不正确的C语言标识符是 D 。
A. ABCB. abcC. a_bcD. ab.c6.下列字符串是标识符的是: A 。
A. _HJB. 9_studentC. longD. LINE 17.以下说法中正确的是: C 。
A. C语言程序总是从第一个定义的函数开始执行B. 在C语言程序中,要调用的函数必须放在main()函数中定义C. C语言程序总是从main()函数开始执行D. C语言程序中的main()函数必须放在程序的开始部分8.不合法的常量是: D 。
A. ‘\2’B. ""C. ‘3’D. ‘\483’9.已知各变量的类型说明如下,则以下不符合C语言语法的表达式是: A 。
int k,a,b;unsigned long w=5;double x=1.422;A. x%(-3)B. w+=-2C. k=(a=2,b=3,a+b)D. a+=a=+(b=4)*(a=3)10.在C语言中,字符型数据在内存中以 D 形式存放。
A. 原码B. BCD码C. 反码D. ASCII码11.若有定义:int a=7; float x=2.5; y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是: A 。
C语言复习题--2015-10-3
C语言程序设计----复习题一、填空1.一个C源程序中至少应包含一个main函数。
2.a是整型变量,则执行表达式a=25/3%3后a的值为。
23.C语言中的数组必须先定义,然后使用。
4.如果需要从被调用函数返回一个函数值,被调用函数必须包含return语句。
5.一个C语言程序的执行起点是____ main函数(或主函数)_______。
6.设int x=3,y=5; 则执行printf("%d\n",x&&y);后输出___1___。
7.定出公式⎪⎪⎭⎫⎝⎛++xyxx521对应的C语言表达式_1.0/2*(x+sqrt(x+y)/(5*x))__。
8.若函数调用语句为f(a,b,f(a+b,a-b,b));,则函数f的参数个数是___3____。
9.设int a=2;,则执行a+=a*=15;后,变量a的值是___60____。
10.设double y[4][5];,则数组y中元素的个数是__20_____。
11.设int x=7,y=3; 则表达式x%y+x/y的值是____3____。
12.设char s[ ]={"apple"};,则执行printf("%d\n",strlen(s));后输出的值是__5_ 。
13.若有定义int a[3][5];则排列在数组中的第9个元素是(a[1][3] )。
14.strlen("How are you\n")的值是( 12 )。
15.C语言中字符串结束的标志是( '\0' )。
16.写出一个名为s的单精度实型一维数组,长度是6,所有元素初值均为0,其数组定义语句是( float s[6]={0}; )。
17.strcmp("how","How")的值是( 32 或>0 )。
18.若a=2.8+7%3*11%2/4,a的值是( 2.8 )19.若a= 5/2+5.0/2+7%6,a的值是( 5.5 )20.若a=12,a*=2+3 a的值是( 60 )21.若a=3,b=4,c=5,a+b>c&&b= =c 表达式的值是( 0 )22.设a=1,b=2,c=3,d=4,m=n=1,有表达式(m=a>b)&&(n=c>d),表达式后m,n的值是( m=0, n=1 )23.设int b=7;float a=2.5,c=4.7;求下面表达式的值是( 4.5 )a+(int)(b/2*(int)(a+c)/2)%4二、判断题1.若定义的函数没有参数,则函数名后的圆括号可以省略。
C语言复习卷带答案
姓名:__________________年级专业:__________________ 学号:__________________凡年级专业、姓名、学号错写、漏写或字迹不清者,成绩按零分记。
…………………………密………………………………封………………………………线…………………………《复习卷》试卷一、单选题(每题1分,共计30分) 1、下列选项中,不合法的变量是(D )。
A 、int x = 3; B 、char ch = 'c' C 、float f ; D 、case c;2、下列选项中,不合法的常量是(D )。
A 、2 B 、'\n' C 、'a' D 、'\483'3、关于#include<stdio.h>这句代码,下列描述中错误的是(C ) A 、"#"是预处理标志,用来对文本进行预处理操作 B 、include 是预处理指令 C 、一对尖括号可以去掉D 、stdio.h 是标准输入输出头文件4、假设a 、b 、c 、d 、m 、n 均为int 型变量,且a=5、b=6、c=7、d=8、m=2、n=2,那么逻辑表达式(m=a>b)&&(n=c>d)运算后,n 的值为( C )。
A 、0 B 、1 C 、2 D 、35、C 语言程序的三种基本结构是( A )。
A 、顺序结构,选择结构,循环结构 B 、递归结构,循环结构,转移结构 C 、嵌套结构,递归结构,顺序结构 D 、循环结构,转移结构,顺序结构6、关于下面的for 循环语句 int i,k; for(i = 0,k = -1;k = 1;i++,k++) printf(“*****”); 下列选项中,描述正确的是(B )A 、判断循环结束的条件非法B 、是无限循环C 、只循环一次D 、一次也不循环7、以下定义语句中,错误的是( D )。
c语言复习题
C语言复习题一、单项选择题(每小题2分)1. 对于一个正常运行的C程序,以下叙述正确的是_______。
A. 程序的执行总是从main()开始,在main()中结束。
B. 程序的执行总是从第一个函数开始,在main()中结束。
C. 程序的执行总是从main()开始,在最后一个函数中结束。
D. 程序的执行总是从main()开始,在最后一个函数中结束。
2. 下列数据中,为字符型常量的是_______。
A. "ab"B. "a"C.‘a’D. a3. int u=010,v=0x10,w=10; printf("%d,%d,%d\n",u,v,w);则输出结果是_______。
A. 8,16,10B.10,10,10C. 8,8,10D. 8,10,104. (a=3)&&(b=-3)的运算结果是_______。
A. -3B. 1C. 0D. 35. 在C语言中,字符串"\xaf\thello\65"的长度是_______。
A. 5 B.7 C. 8 D. 126. 设float x,由键盘输入:12.45, 能正确读入数据的输入语句是_________。
A.scanf("%5f",&x);B.scanf("%5d",&x);C.scanf("%f",x);D.scanf("%s",&x);7.int a=65,则printf("%d,%o,%x",a,a,a)的结果是_________。
A. 65,65,65B. 65,101,41C. A,101,41D. 65,41,1018. char c1=’a’,c2=’b’; c1=getchar(); c2=getchar();运行程序时,从键盘输入a<Enter键>,以下说法正确的是_________。
c语言复习题
A. 6 B. 7 C. 11 D. 12
(10) 合法的数组定义是( )。 A
A. char a[ ]= "string " ; B. int a[5] ={0,1,2,3,4,5}; C. char a= "string " ; D. char a[ ]={0,1,2,3,4,5}
A. int a[7]; B. #define N 5 long b[N]; C. char c[5]; D. int n,d[n];
(4) 对字符数组进行初始化,( )形式是错误。 B
A. char c1[ ]={'1', '2', '3'}; B. char c2[ ]=123; C. char c3[ ]={ '1', '2', '3', '\0'}; D. char c4[ ]="123";
2、若x和n都是int型变量,且x的初值为12,n的初值为5,则计算表达式x%=(n%=2)后x的值为 0 。
3、设 c='w',a=1,b=2,d=-5, 则表达式 'x'+1>c, 'y'!=c+2, -a-5*b<=d+1, b==a=2的值分别为 1 、 0 、 1 、 1 。
(8) 设有定义:char s[12] = "string" ; 则printf( "%d\n",strlen(s)); 的输出是( )。 A
A. 6 B. 7 C. 11 D. 12
(9) 设有定义:char s[12] = "string"; 则printf("%d\n ", sizeof(s)); 的输出是( )。 D
C语言复习题及答案
复习A:一、单项选择题1、如果要把常量327存入变量a中,a不能定义的类型是哪一个? ( )A)int B)char C)long D)float2、若x 为unsigned int 型变量,则执行下列语句后x值为()x = 65535;printf(“%d\n”,x);A)65535 B)1 C)无定值D)-13、有以下程序main(){int a=1,b=2,m=0,n=0,k;k=(n=b>a)||(m=a<b);printf(″%d,%d\n″,k,m);}程序运行后的输出结果是()A)0,0 B)0,1 C)1,0 D)1,14、在C语言中,如果下面的变量都是int类型,则输出的结果是()。
sum=pad=5; pAd=sum + + ,pAd + +, + + pAd;printf("%d\n",pad);A) 7 B) 6 C) 5 D) 45、以下程序的输出结果是()。
main(){ int a=4,b=5,c=0,d;d=!a&&!b||!c;printf("%d\n",d);}A)1 B)0 C)非0的数D)-16、当执行以下程序段时()。
x=-1;do{x=x*x;}while(!x);A)循环体将执行一次B)循环体将执行两次C)循环体将执行无限次D)系统将提示有语法错误7、全局变量的存储类型可以定义为()。
A)auto或static B)extern或registerC)auto或extern D)extern或static8、定义全局变量时,若变量的的存储类别缺省,则默认的存储类型是()。
A)auto B)registerC)extern D)static9、已知:int a, x; 则正确的赋值语句是()。
A)a=(a[1]+a{2})/2; B)a*=*a+1; C)a=(x=1, x++, x+2); D)a="good";10、已知:int a, *p=&a; 则下列函数调用中错误的是()。
C复习题
一、填空题(每空2 分,共 20 分)1.数据结构分为逻辑结构与()。
2.在面向对象方法中,对象之间进行通信的构造称为()。
3.衡量软件的模块独立性使用耦合性和内聚性两个定性的度量标准,其()是度量一个模块功能强度的一个相对指标。
4.一名学生只能住一间宿舍,一间宿舍可住多名学生,则实体“宿舍”与实体“学生”的联系属于()的联系。
5.数据模型包括数据结构、()和数据条件。
6.若有定义:int a=10,b=8,c=4;然后顺序执行下列语句后,变量a中的值是()。
c=(b-=(a-4));a=(c%2)+(b-1);1.C语言中,用关键字()定义基本整型变量,用关键字(),定义单精度实型变量,用关键字()定义字符型变量。
2.表达式3*20/4%10的计算结果是()。
3.复合语句是将多个语句用()括起来组成一个语句。
4.程序中使用putchar( )函数和getchar( )函数,在程序的开头必()。
5.C语言的预处理语句以()开头。
6.goto语句为(),当程序执行到该语句时,转向指定位置执行。
7.return语句的功能是使程序控制从被调用函数返回到()中。
1.一个算法应具有的特点有:()、()、有零个或多个输入、有一个或多个输出、有效性。
2.在程序执行过程中,其值不发生改变的量称为(),其值可变的量称为()。
3.若有定义:int m=5,y=2;则执行表达式y+=y-=m*=y后的y值是()。
4.在三种正规循环中,当条件表达式的值为()时,就结束循环。
5.C语言中函数的参数分为()和()。
1.程序的三种基本结构为()、()和()。
2.在C语言中,用()表示语句的结束。
3.语句printf("%%d%d",123);将输出:()。
4.逻辑运算的结果值是()或()。
5.数组 int a[3][4];共定义了()个数组元素。
6.在C语言中,正确的标识符是由()组成的,且由()开头的。
C语言复习题及参考答案
C语言复习题及参考答案一、单项选择1、以下叙述正确的是:__B__。
A)C语言的源程序不必通过编译就可以直接运行。
B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令。
C)C语言源程序经编译形成的二进制代码可以直接运行。
D)C语言中的函数不可以单独进行编译。
2、以下4个用户定义标识符中,全部合法的一组是__A__。
A)_main enclude sin B)if –max turbo C)txt REAL 3COM D)int k_2 _001 3、以下不能定义为用户标识符的是_D__。
A)scanf B)Void C)_3com D)int4、C语言中用于结构化程序设计的3种基本结构是__A__。
A)顺序结构、选择结构、循环结构B)if、switch、breakC)for、while、do-whileD)if、for、continue5、为解决某一特定问题而设计的指令序列称为__C__。
A)文档B)语言C)程序D)系统6、用高级程序设计语言编写的程序称为__C__。
A)目标程序B)可执行程序C)源程序D)伪代码7、能将高级语言编写的源程序转换成目标程序的是__B__。
A)编辑程序B)编译程序C)驱动程序D)链接程序8、下列叙述中,正确一条是__C__。
A)计算机语言中,只有机器语言属于低级语言。
B)高级语言源程序可以被计算机直接执行。
C)C语言属于高级语言。
D)机器语言是所用机器无关的。
9、以下符合C语言语法的实型常量是__C__。
A)1.2E0.5B)3.14159E C).5E-3D)E1510、下面叙述正确的是__A___。
A)C程序中注释部分可以出现在程序中任何合适的地方。
B)花括号“{”和“}”只能作为函数体的定界符。
C)构成C程序的基本单位是函数,所有函数名都可以由用户命名。
D)分号是C语句之间的分隔符,不是语句的一部分。
11、设有以下定义:int a=0; double b=1.25; char c=’A’;#define d 2则下面语句中,错误是__D__。
C语言填空题,复习题及答案
1.24L表示一个____类型的整数(从int、short、long选填)(1分)标准答案:long2.表达式(8+3)/(6+23)+27%4的值为____。
(1分)标准答案:33.若int a;char c;则a*c的数据类型为____(用英文填,如float 或int或double或char)。
(1分)标准答案:int4.已知:int num1=2,num2=3,num3;num3=7%num2*num1;则执行后num3的值是____。
(1分)标准答案:25.已知道无符号基本整型取数范围0--4294967295,现有程序段unsigned int a,b;a=65535;b=a+1;则程序运行后b的值为____。
(1分)标准答案:655366.设int a=2,则计算表达式a/=2的值为____。
(1分)标准答案:17.已知程序段:int a;a=97;printf("%c",a);则执行后输出的结果为____(注:已知字母a的ASCII 值为97)。
(1分)标准答案:a8.设unsigned number=1234;char c1;c1=number%10;则执行上述程序段后c1的值为____。
(1分)标准答案:49.0x568是用几进制表示的整数____(从十进制、八进制、十六进制选填)。
(1分)标准答案:十六进制10.C语言中,要获取变量的地址,应在变量名前加上____(不填中文)运算符。
(1分)标准答案:&11.循环语句for ( i=100 ; i ; i-=20 ) ; 的循环次数为次____(填阿拉伯数字)。
(1分)标准答案:512。
若指定将实数56.64按照指数形式输出,输出的结果为____(用大写的E,指数部分保留两位)。
(1分)标准答案:5.66E113.设int a=12,则计算表达式a*=(2+3)的值为____ 。
(1分)标准答案:6014.C语言中,字符指针是指向____(填英文关键字)型数据的指针变量。
C语言期末复习题(填空选择判断题)
一、单选题:1、已知ch是字符型变量,下面不正确的赋值语句是( B )。
A、ch=‘\0’B、ch=‘a+b’C、ch=‘7’+‘9’D、ch=7+92、以下4组用户定义标识符中,全部合法的一组是(A )。
A、s_5B、IfC、txtD、intabout -max REALk_2E2 turbo 3COM_0013、C语言中的简单数据类型包括( B )A、整型、实型、逻辑型B、整型、实型、字符型、枚举型C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型4、已知:int i=1,j;执行语句j=-i++;后,j的值是(C )A、1B、2C、-1D、-25、已知:int i=5;执行语句i+=++i;后,i的值是( C )A、10B、11C、12D、A、B、C答案都不对7、若x为int型变量, x=6;则执行以下语句后,x的值为( C )。
x+=x-=x*x;A、 36B、 60C、- 60D、-248、设d为字符变量,下列表达式不正确的是( D )。
A、d=’g’B、d=’a’C、d=97D、d=”g”9、若a=1,b=2,c=3,d=4;则条件表达式 a>b?a:c<d?c:d结果为( B )A、4B、3C、2D、110、printf函数中用到格式符"%8s",其中数字8表示输出的字符串占用8列。
如果字符串长度大于8,则按原字符长从左向右全部输出;如果字符串长度小于8,则输出方式为( B )。
A、从左起输出该字符串,右补空格B、右对齐输出该字符,左补空格C、按原字符长从左向右全部输出D、输出错误信息11、在嵌套的if-else语句中,else总是与( D )配对。
A、其之前最近的ifB、第一个ifC、缩进位置相同的ifD、其之前最近的且不带else的if12、一个C语言程序总是从( B )开始执行。
A、程序的第一个函数B、主函数C、子函数D、主程序13、设x=2.9,a=8,y=3.7,算术表达式x+a%3*(int)(x+y)%5/2的值是 ( A )A、3.9B、4C、4.2D、3.7514、程序片段执行后输出结果是 ( A )int x=5, y=8;printf ("% d", x<y ? x : (x, y));A、5B、8C、5,8D、编译出错15、下面能正确表示变量a在区间[0,8]或(4,10)内的表达式为:( D )。
C语言程序设计期末考试复习题及答案
C语言考试期末考试复习题及答案一、选择题(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是 ( D )A) ‘x’&&’y’B) x||y+z&&y-z C) x<=yD) !((x<y)&&!z||1)(3) 执行以下程序段后,i的值是 ( C )int i=10;switch(i+1){ case 10: i++; break;case 11: ++i;case 12: ++i; break;default : i=i+1;}A) 11 B) 13 C) 12 D) 14(4) 语句while(!e);中的条件!e等价于 ( A )A) e==0 B)e!=1 C) e!=0 D) 运行时出错(5) 用 int a[4]={1,2}; 对数组进行初始化后,数组元素a[3]的值是 ( B )A) 随机值B) 0 C) 1 D) F(6) 在执行char str[10]=“china\0”; strlen(str)的结果是 ( A )A)5 B) 6 D) 7 D 9(7) 若有定义,char *p=”computer”; 则语句printf(“%c”,*(p+2))运行结果是 ( B )A) 随机值B) m C)o D) omputer(8) 在以下函数调用语句中fun1(x,10,(x,10),fun2(y,10,(y,10)));函数fun1参数的个数为 ( B )A) 8 B) 4C) 5 D) 编译出错(9) 在说明一个结构体变量时系统分配给它的存储空间是( D )A)该结构体中第一个成员变量所需存储空间 B) 该结构体中最后一个成员变量所需存储空间C)该结构体中占用最大存储空间的成员变量所需存储空间D) 该结构体中所有成员变量所需存储空间的总和3. 以下定义语句中正确的是( C )A)char a='A'b='B'; float a=b=10.0;C)int a=10,*b=&a; D)float *a,b=&a;4.下列选项中,不能用作标识符的是( D )A)_1234_ B)_1_2 C) int_2_ D)2_int_5.在函数调用过程中,如果函数funA调用了函数 funB,函数funB又调用了函数funA,则( B )A)称为函数的直接递归调用 B)称为函数的间接递归调用C)称为函数的循环调用 D)C语言中不允许这样的递归调用6.以下叙述中正确的是 ( A )A)局部变量说明为static存储类,其生存期将得到延长B)全局变量说明为static存储类,其作用域将被扩大C)任何存储类的变量在未赋初值时,其值都是不确定的D)形参可以使用的存储类说明符与局部变量完全相同7.若变量已正确定义,要求程序段完成求5!的计算,不能完成此操作的程序段是( B)A)for(i=1,p=1;i<=5;i++) p*=i;B)for(i=1;i<=5;i++){ p=1; p*=i;}C)i=1;p=1;while(i<=5){p*=i; i++;}D)i=1;p=1;do{p*=i; i++; }while(i<=5);8.有以下程序(a)main(){ char a='a',b;printf("%c,",++a);printf("%c\n",b=a++);}程序运行后的输出结果是a)b,b B)b,c C)a,b D)a,c9.有以下函数定义:(c)void fun(int n, double x) { …… }若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是A) fun(int y,double m); B)k=fun(10,12.5) C)fun(x,n); D)void fun(n,x)10.已定义c为字符型变量,则下列语句中正确的是(c)A)c='97'; B)c="97"; C)c=97; D)c="a";11.以下能正确定义一维数组的选项是(b)A)int num[]; B) #define N 100 C)int num[0..100]; D) int N=100;int num[N]; int num[N];12.以下能正确定义数组并正确赋初值的语句是(d)A)int N=5,b[N][N]; B)int a[1][2]={{1},{3}};C)int c[2][]= {{1,2},{3,4}}; D)int d[3][2]={{1,2},{34}};13.有以下程序(a)main(){ int i;for (i=0; i<3; i++)switch (i){ case 1: printf("%d ", i);case 2: printf("%d ", i);default : printf("%d ", i); }}执行后输出结果是A)011122 B)012 C)012020 D)12014.有以下程序(d)main(){ int p[7]={11,13,14,15,16,17,18}, i=0,k=0;while(i<7 && p[i]%2) { k =k+ p[i]; i++; }printf("%d\n", k);}执行后输出结果是A)58 B)56 C)45 D)2415.以下叙述中正确的是(c)A)C语言比其他语言高级 B)C语言可以不用编译就能被计算机识别执行C)C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D)C语言出现的最晚,具有其他语言的一切优点16.下列叙述中正确的是(d)A)C语言中既有逻辑类型也有集合类型B)C语言中没有逻辑类型但有集合类型C)C语言中有逻辑类型但没有集合类型D)C语言中既没有逻辑类型也没有集合类型17.以下叙述中正确的是(a)A)C程序中注释部分可以出现在程序中任意合适的地方B)花括号"{"和"}"只能作为函数体的定界符C)构成C程序的基本单位是函数,所有函数名都可以由用户命名D)分号是C语句之间的分隔符,不是语句的一部分二)阅读程序,写出程序运行结果(1) #include<stdio.h>main(){ char ch=’A’;ch=(ch>=’A’&& ch<=’Z’)?(ch+32):ch;printf(“%c”,ch);}程序的运行结果是:(2) #include<stdio.h>main( ){ int sum=0,i=11;while (i<=10){sum=sum+i;i++;}printf(“%d”,sum);}程序的运行结果是:(3) #include<stdio.h>main(){ char str[ ]=”1a2b3c”;int i;for(i=0;str[i]!=’\0’;i++)if (str[i]>=’0’ && str[i]<=’9’) printf(“%c”,str[i]);}程序的运行结果是:(4) main(){ int a,b;a=5;b=8;p(a+b,a);}p(int x,int y){y=x+y;printf(“%d %d”,x,y);}程序的运行结果是:(5) #include<stdio.h>void main(){ int a[3][3]={{1,2,3},{4,5,6},{7,8,9}};int j,s=1;for(j=0;j<=2;j++)s=s*a[j][j];printf("%d",s);}程序的运行结果是:Key: (1) a (2) 0 (3) 123 (4) 5 13 13 18 (5) 45 三)改错题(每个程序只有一个错误,填入错误语句所在的行号以及修改后的语句)(1)下段程序的功能是先输入一个整数,然后将输入的整数输出。
C语言复习题 (1)
A. a/b/c*e*3
B. 3*a*e/b/c
C. 3*a*e/b*c
D. a*e/c/b*3
10. 在 C 语言中,要求运算数必须是整型的运算符是( )。
A. /
B. ++
C. !=
D. %
11. 若 x、i、j 和 k 都是 int 型变量,则执行下面表达式后 x 的值为( )。
x=(i=4,j=16,k=32)
scanf(“%d%d”,&a1,&a2);
scanf(“%c%c”,&c1,&c2);
A. 1020AB<回车>
B. 10 20<回车>AB<回车>
C. 10 20 AB<回车>
D. 10 20AB<回车>
21. 有输入语句:scanf(“%d%d%d”,&a,&b,&c);为使变量 a 的值为 1,b 为 3,
44. 以下程序的输出结果是( )。
main()
{
int x=2,y=-1,z=2;
if(x<y)
if(y<0) z=0;
else z+=1;
printf(“%d\n”,z);
}
A. 3
B. 2
C. 1
D. 0
45. 以下不正确的语句为( )。
A. if(x=y)&&(x!=0) x+=y;
B. if(x!=y) scanf(“%d”,&x); else scanf(“%d”,&y);
考试题型: 单项选择:1*40=40 分 填空题: 2*5=10 分 读程序:2*10=20 分 程序填空:2*10=20 分 编写程序:10 分(4+6)
C语言复习题
C语言复习题一、选择题1. 在每个C 程序中都必须包含有这样一个函数,该函数的函数名为 A 。
A. mainB. MAINC. nameD. function2. 在以下关于C 语言的注释的叙述中,不正确的是C 。
A .注释可用"/*"、"*/"形式表示,也可用"//"形式表示B .编译器在编译一个程序时,将跳过注释,不对其进行处理C .编译器在编译一个程序时,可发现注释中的单词拼写错误D .程序中注释的多少不会影响所生成的可执行文件的长度3. 以下叙述不正确的是。
A .在C 程序中,严格区分大小写字母B .一个C 源程序有且仅有一个main 函数C .在C 程序中,注释只能位于一条语句的后面D .一个C 程序总是从main 函数开始执行4. 下列合法的标识符为A. abde+B. #KDJFC. 67KDJD. DK3_5. 关于字符串和字符的关系正确的是A. “A ”与’A ’是相同的B. 字符串是常量,字符是变量C. “A ”与’A ’是不同的D. “A ”与“A ”是相同的6. 下面关于语句的说法正确的是A. 下面这两段程序的执行效果是一致的B. 空语句是只有一个分号的语句,它其实什么也不干C. 语句的构成不一定需要分号D. 语句的书写对程序的运行不起作用,因此可以随便写都可以7. 以下各标识符中,合法的用户标识符组为D 。
A. PAd ,P#d ,b-b ,abc ,_0123,ssipedB. cin ,a10,CPP ,float ,del_word ,signedC. void ,max ,hiy ,,list ,*jerif (x>y){z=x; s=z*z;}else{z=y;s=1/(z*z);}if (x>y) z=x; s=z*z; else z=y;s=1/(z*z);D.a,temp,_isw,INT,keep,wind8.字符串“\”EOF=-\61\””的长度是。
C复习题
一、选择题(每题3分,计60分)1、下面有关for 循环的正确描述是(D)。
A.for循环只能用于循环次数已经确定的情况B.for循环是先执行循环体语句,后判断表达式C. 在for循环中,不能用break语句跳出循环体D. for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来。
2、以下能正确地定义整型变量a,b和c并为其赋初值5的语句是(C)A. int a=b=c=5;B. int a,b,c=5;C. int a=5,b=5,c=5;D. a=b=c=5;3、逻辑运算符两侧运算对象的数据类型(D)A. 只能是0和1B. 只能是0或非0的正数C. 只能是整型或字符型数据D. 可以是任何类型的数据4、下列运算符中优先级别最高的是(B)A. <B. +C. &&D. =5、为了避免嵌套的if…else语句的二义性,c语言规定else总是与(C )组成配对关系。
A. 缩排位置相同的ifB. 在其之前未配对的ifC. 在其之前未配对的最近的ifD. 同一行上的if6、程序段如下:则以下说法中正确的是:(D)。
int k=5;do{k--;}while(k<=0);A. 循环执行5次B. 循环是无限循环C. 循环体语句一次也不执行D. 循环体语句执行一次7、判断char型变量c1是否为小写字母的正确表达是(D)A. ‘a’<=c1<=’z’B. (c1>=a)&&(c1<=z)C. (‘a’>=c1)||(‘z’<=c1)D. (c1>=’a’)&&(c1<=’z’)8、C语言中,char类型数据占(A)A. 1个字节B. 2个字节C. 4个字节D. 8个字节9、以下关于数组的描述正确的是(C)。
A. 数组的大小是固定的,但可以有不同的类型的数组元素。
B. 数组的大小是可变的,但所有数组元素的类型必须相同。
c语言复习题
44.以下数组的定义形式正确的是()。
A)int k=5,a[k]; B)int a[ ]; C)char c[]={'a'}; D)char a(10);
45.以下一维数组的定义及初始化中,错误的是()。
A)int a[3]={0}; B)int a[3]={1,1,1};
21. A 22. D 23. B 24. C 25. C 26. B 27. B 28. A 29. D 30. A
31. C 32. A 33. B 34. A 35. C 36. D 37. B 38. D 39. A 40. C
41. B 42. D 43. C 44. C 45. D 46. D 47. D 48. C 49. D 50. C
51. A 52. B 53. B 54. A 55. C 56. A 57. B 58. A 59. B 60. C
61. D 62. C 63. C 64. A 65. B 66. C
1.下列关于C程序的说法错误的是()。
A)一个程序必须有一个main函数B)函数首部后面必须有分号
C)可以使用“/* */”来注释一段代码D)每个语句的末尾必须有分号
{ x=10; y=20; }
void main( )
{ int a=1, b=2;
fun(a, b);
printf("%d, %d\n", a,b);
}
A)1,2 B)10,20 C)10,2 D)1,20
40.执行函数调用“fun('5')”得到的返回值为()。
int fun(char ch)
{ return(ch>='0'&&ch<='9'); }
C语言期末复习填空题部分(含答案)
C语言期末复习填空题部分(含答案)work Information Technology Company.2020YEAR期末复习填空题部分一、填空题1 设x为int型变量,写出描述“x是偶数与y是奇数”的表达式是 x%2==0 && y%2==1 。
2 以下程序的输出结果是 -27 。
#include<stdio.h>void main(){ char c;c=0345;printf("%d\n",c);}3 设有语句int a=3;,则执行了语句 a+=a-=a*a后,变量a的值是 -12 。
4 若float x;以下程序段的输出结果是 5.142000x=3.1415926;printf("%f\n",(int)(x*1000+0.5)/(float)1000);5 下面的程序运行时从键盘上输入1234567890<回车>,程序的输出结果是a=123,b=456.0,c=789。
#include<stdio.h>void main(){int a;float b,c;scanf("%3d%3f%3f",&a,&b,&c);printf("a=%d,b=%.1f,c=%.0f",a,b,c);}6 若输入字符串:abcdefg<回车>,则以下while循环体将执行 0 次。
while((ch=getchar())=='g') printf("*");7 下面程序的输出结果是_67,D__。
main(){ char ch1,ch2;ch1='A'+'5'-'3'; ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}8 执行下面的语句:printf("%d\n",(a=3*5,a*4,a+5));,输出是 20 。
《VC程序设计》期末复习题集(学生用)
《VC程序设计》期末复习题集(学生用)《程序设计(VC++)》考试试卷一选择题(在A、B、C、D中选择一个正确的,每题1分,共30分。
用答题纸答题,二、填空题(每个空格1分,共30分。
请将答案填写在答题纸的相应答题号内,每个答案只占一行)●基本概念题,共5分1.执行语句cout<2.用new运算符申请动态对象时,系统将自动调用该对象的构造函数。
3.定义内联函数的方法是在函数的返回值类型之前增加关键字inline4.在多重继承时,若欲使公共基类只在派生类中产生一个拷贝,则应在派生类中将该基类用关键字virtual5.在C++的I/O流类库中,预定义了4个流,即cin、cout、cerr和clog,其中cerr和clog不可重定向。
●阅读程序题,共13分6.[程序](2分)#includeintm[3][3]={{1},{2},{3}},n[3][3]={1,2,3};voidmain(void){cout<7.[程序](2分)#includeintf(char某){char某p=;while(某p)p++;returnp-;}voidmain(void){cout<程序的输出是6,函数f的功能是求字符串的长度8.[程序](2分)#includevoidf(int某){taticintj;do{[j]+=[j+1];}while(++j<2);}voidmain(void){intk,a[10]={1,2,3,4,5};for(f(a),k=0;k<5;k++)cout<程序输出的第一行是35345,程序输出的第二行是357459.[程序](3分)#includeintk=1;voidf(intm){m+=k;k+=m;{chark=B;cout<<k-A<voidmain(void){inti=4;f(i);cout<程序的输出第一行是1,第二行是5,6,第三行是4,610.[程序](2分)#includeclaA{protected:int某;public:int&Acce(){return某;}};claB{protected:int某;public:int&Acce(){return某;}};claC:publicA,publicB{inty;public:C(inta,intb,intc){A::某=a;B::某=b;y=c;}int&Accey(){returny;}};claD:publicC{intz;public:D(inta,intb,intc,intd):C(a,b,c){z=d ;}int&Accez(){returnz;}};共7页,第1页。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
16、为了判断两个字符串s1和s2是否相等,应当使用____C______。
A)if (s1==s2)
B)if(s1=s2)
C)if (strcmp(s1,s2)==0)
D)if (strcmp(s1,s2))
19、以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误原因是______D____。
main()
{
int *p,*q,a,b;
p=&a;
printf("input a:");
scanf("%d",*p);
…
}
A)*p表示的是指针变量p的地址
B)*p只能用来说明p是一个指针变量
C)*p表示的是指针变量p的值
C)函数的定义和函数的调用均不可以嵌套。
D)函数的定义和函数的调用均可以嵌套。
12.以下正确的函数形式是____D______。
A)double fun(int x,int y) { z=x+y;return z;}
B)fun(int x,y) { int z; return z;}
C)fun(x,y) { int x,y; double z; z=x+y; return z;}
10.设有定义:int a=1,*p=&a; float b=2.0; char c='A';以下运算不合适的是___A_______。
A)p++;B)a--;C)b++;D)c--;
11.以下正确的描述是__B________。
A)函数的定义可以嵌套,但函数的调用不可以嵌套。
B)函数的定义不可以嵌套,但函数的调用可以嵌套。
16、表达式float(25)/4和int(14.4)%5的值分别为__________和_________。
19、与十六进制数BB等值的十进制数是_______。
20、假定a是一个一维数组,则a[i]的对应的存储地址(以字节为单位)为_________
21.已知文件fileA.c中的一些函数需要访问在另一个文件fileB.c中定义的全局整型变量var,则在文件fileA.c的首部对变量var应声明为__________
D.if(x<y){x++;y++;};
29、对for (表达式1 ; ;表达式3 )可理解为_____B_____
A. for(表达式1;0;表达式3 );
B. for(表达式1;1;表达式3);
C. for(表达式1;表达式1;表达式3);
D. for(表达式1;表达式3;表达式3);
30、以下能对二维数组a正确初始化的语句是___B______
4、执行下面的程序片段后,x的值是___________。
i=10; i++; x=++i;
5、执行“typedefintDataType;”语句后,在使用int定义整型变量的地方都可以使用__________来定义整型变量。
6、对于在所有函数之外定义的变量,若没有被初始化则系统隐含对它赋予的初值为__________。
26、以下叙述正确的是:____C______
A.在C语言程序中, main函数必须位于程序的最前面;
B.程序的每行中只能写一条语句;
C. C语言本身没有输入输出语句;
D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误;
27、执行下段代码,退出for循环时sum=______A________;
A)int a=5;B)auto shortb;
C)register char c;D)static doubled;
9.下面能正确进行字符串赋值操作的语句是C
A) char s[5]={“ABCDE”};B) char s[5]={“a”,’b’,’c’,’d’,’e’};
C) char *s;s=“ABCDEF”;D) char *s;scanf(“%c”,s);
D)*p表示的是变量a的值,而不是变量a的地址
20、若有以下说明和语句:
struct worker
{
int no;
char *name;
}work, *p=&work;
则以下引用方法不正确的是__A_______。
A. work->no B. work.no C. p->no D. (*p).no
21、设有程序段如下:
23、在TC中,定义一个一维数组为“char*a[8] ;”,则该数组所含元素的个数为_______,所占存储空间的字节数为_______。
24、设有下面的定义int Nhomakorabea[10]={1,2,3,4,5,6,7,8,9,10};
int sum=0,j;
请完善下面的语句实现求数组s的所有元素之和,并保存在变量sum中:
A)4B)16C)32D)52
24、给出以下定义:
char x[]="abcdefg";
char y[]={'a','b','c','d','e','f','g'};
则正确的叙述为____B______。
A)数组x和数组y等价B)数组x的长度大于数组y的长度
C)数组x和数组y的长度相同D)数组x的长度小于数组y的长度
A)int a[][]={2,3,0,0,4,0,5,0,0,0,0,0};
B)int a[][4]= {2,3,0,0,4,0,5,0,0,0,0,0};
C)int a[3][4]= {{2,3},{4,,5}};
D)int a[][]={{2,3,0,0},{4,0,5,0},{0,0,0,0}};
sum=0; for( i=1;i<=10;i++)
{ k=1;
while (k<=10){ sum=sum+i; k+=2; }
}
A.275B.550C.250D.500
28、以下不正确的if语句形式是____C______
A.if(x>y&&x!=y);
B.if(x==y)x+=y;
C.if(x!=y)scanf(“%d“,&x)elsescanf(“%d”,&y);
for(i=1,s=0;i<11;i+=2)s+=i;
10、执行下面程序段后,输出结果是__________。
char str1[10]="ABCD", str2[10]="XYZ";
if (strcmp(str1,str2)>0)
printf("%s\n",str1);
else
printf("%s\n",str2);
16-24C,D,B,D,A,C,B,C,B
26-36C,A,C,B,B,C,D,D,D,A,C
第二部分填空题
1.进行逻辑与运算的运算符是___&&________。
2、算术表达式 对应的C表达式为:_(X*Y*Y)__________。
3、逻辑表达式x<=y||x==10的相反表达式为__________。
7、假定p所指对象的值为46,p+1所指对象的值为25,则执行“*(p++);”语句后,p所指对象的值为__________。
8、假定一个结构体类型的定义为:
struct A
{
int a;
char *b;
};
则该类型的大小为__________字节。
9、下面程序片段中循环体的执行次数是__________次。
17、如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是______D____。
A)该变量为非法变量
B)该变量在本程序范围内均有效
C)该变量在该函数中有效
D)该变量只在该复合语句中有效
18、要定义一个int型二维数组a,并使其各元素具有初值:
2300
4050
0000
则正确的定义语句是__B________。
7.已知一个运行正常的的程序中有下面两个语句:
int *p1, *p2=&a;
p1=b;
由此可知,变量a和b的类型分别是_____B_____。
A)int和intB)int和int *
C)int *和intD)int *和int *
8.已知一函数中有下列变量定义,其中属于静态变量的是____D______。
A. int a[2][ ]={{1,0,1},{5,2,3}};
B. int a[ ][3]={{1,2,3},{4,5,6}};
C. int a[2][4]={{1,2,3},{4,5},{6}};
D. int a[ ][3]={{1,0,1},{ },{1,1}};
31、以下说法正确的是____C______
11、假定a是一个二维数组,则a[i][j]的指针访问方式为__________。
12、已知函数f的定义是:
int f(int n) { n*=2; return n+1; }
则执行
int m=5, n=3;
m=f(n);
后,变量m的值是__________,n的值是__________。
15、十进制数28和3.26的类型分别为__________和_________。