c语言复习1
以下叙述中错误的是A) 算法正确的程序可以有零个输入B) 算法正确的程序最终一定会结束C) 算法正确的程序可以有零个输出D) 算法正确的程序对于相同的输入一定有相同的结果参考答案:C【解析】算法的特征:①有穷性。②确定性。③可行性。④输入。⑤输出。所以C选项错误。
有以下程序#include <stdio.h>main(){ int a=0, b=0;/* 给a赋值a=10;b=20; 给b赋值*/printf("a+b=%d\n",a+b); /* 输出计算结果*/}程序运行后的输出结果是A) 出错B) a+b=30C) a+b=10D) a+b=0参考答案:D【解析】注释语句可以在一行也可以在多行,用/*……*/或//表示,。
它不参与程序的运行,所以a与b的值仍然为0,所以打印的结果为a+b=0。对于一个正常运行的C程序,以下叙述中正确的是A) 程序的执行总是从main函数开始,在程序的最后一个函数中结束B) 程序的执行总是从程序的第一个函数开始, 在main函数结束C) 程序的执行总是从main函数开始D) 程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束参考答案:C【解析】任何一个C程序都是从主函数main开始,至主函数main结束,所以选择C选项。C语言规定标识符只能由字母、数字和下划线3种字符组成,且第一个字符必须为字母或下划线合法的标识符:如sum,average, _total, Class, day, BASIC, li_ling不合法的标识符:M.D.John,¥123,#33,3D64,a>bC语言中标识符的定义中区分大小写阅读以下程序#include <stdio.h>main(){ int case ;float printF;printf("请输入2个数:");scanf("%d %f",&case,&printF );printf("%d %f\n",case,printF );}该程序在编译时产生错误,其出错原因是A) 定义语句出错,case是关键字,不能用作用户自定义标识符B) 定义语句出错,printF不能用作用户自定义标识符C) 定义语句无错,scanf不能作为输入函数使用D) 定义语句无错,printf不能输出case的值参考答案:A【解析】C语言中标识符的定义中区分大小写,所以printF与printf不一样,可以作为标识符。
而case是C语言中的关键字,不能作为变量名。scanf是标准的输入函数,printf是标准的输出函数,所以选择A。以下选项中不属于C语言标识符的是A) 常量B) 用户标识符C) 关键字D) 预定义标识符参考答案:A【解析】常量是指在程序运行过程中其值不能被改变的量,如5、1.0、字符'a'等。
C语言的标识符分为3类:关键字、预定义标识符和用户标识符。常量不属于标识符,所以选择A。有以下程序#include <stdio.h>main(){printf("%d\n", NULL );}程序运行后的输出结果是A) 0B) 变量无定义,输出不确定C) -1D) 1参考答案:A【解析】NULL是在stdio.h头文件中定义的预定义符,NULL的代码值为0,如果以整型格式输出则输出0。
A选项正确。
以下选项中不能作为C语言合法常量的是A) 0.1e+6B) 'cd'C) "\a"D) '\011'参考答案:B【解析】要想表示字符串常量应该用双引号表示,即"cd",单引号用于表示字符常量,所以B选项中的表示方法错误。关于C语言的变量,以下叙述中错误的是A) 变量所占的存储单元地址可以随时改变B) 所谓变量是指在程序运行过程中其值可以被改变的量C) 程序中用到的所有变量都必须先定义后才能使用D) 由三条下划线构成的符号名是合法的变量名参考答案:A【解析】一个变量实质上是代表了内存中的某个存储单元,必须先定义后使用,且在定义时为之分配存储单元,不能随时改变,所以选择A选项。小数形式:如1.12、0.89、0.0、.0等指数形式:如2.3026可以表示为0.23026E1、 2.3026e0、 23.026e-1C语言的语法规定,字母e或E前面必须有数字,且字母后面必须是整数,如e3、0.5e0.6等都是非法的指数形式C语言中double 类型数据占字节数为A) 4B) 8C) 12D) 16参考答案:B【解析】double型数据在内存中占8个字节,float型数据占4个字节,int型数据占2个字节,char型数据占1个字节。所以选择B。有以下程序:#include <stdio.h>main(){ int s,t,A=10; double B=6;s=sizeof(A); t=sizeof(B);printf("%d,%d\n",s,t);}在VC6.0平台上编译运行,程序运行后的输出结果是( )。
A) 10,6B) 4,4C) 2,4D) 4,8参考答案:D【解析】C语言中利用sizeof()函数判断数据类型长度,在VC6.0平台中,整型int占有4个字节,double型数据占有8个字节。
以下叙述中正确的是A) 在C程序中的八进制和十六进制,可以是浮点数B) 整型变量可以分为int型、short型、long型和unsigned型四种C) 八进制数的开头要使用英文字母o,否则不能与十进制区分开D) 英文大写字母X和英文小写字母x都可以作为二进制数字的开头字符参考答案:B【解析】C程序中的实型常量只有十进制一种数制,所以A错误。八进制数以0打头,所以C错误。C语言中整数只有十进制、八进制、十六进制三种没有二进制数制,所以D错误。C运算符(1) 算术运算符(+ - * / % ++ --)(2) 关系运算符(><==>=<=!=)(3) 逻辑运算符(!&&||)(4) 位运算符(<<>> ~ | ∧ &)(5) 赋值运算符(=及其扩展赋值运算符)(6) 条件运算符(?:)(7) 逗号运算符(,)(8) 指针运算符(*和&)(9) 求字节数运算符(sizeof)(10) 强制类型转换运算符( (类型) )(11) 成员运算符(.->)(12) 下标运算符([])(13) 其他(如函数调用运算符())基本的算术运算符:+ :正号运算符(单目运算符)- :负号运算符(单目运算符)* :乘法运算符/ :除法运算符% :求余运算符+ :加法运算符- :减法运算符设有定义:int x=2;,以下表达式中,值不为6的是( )。
A) 2*x,x+=2B) x++,2*xC) x*=(1+x)D) x*=x+1参考答案:A【解析】A选项中逗号表达式先计算第一表达式2*x,然后计算表达式x+=2的值,即x=x+2即4,整个逗号表达式为第二个表达式的值4,所以选A。
B选项中首先计算逗号表达式中第一表达式x++,此时x为3,在执行第二个表达式2*x=2*3=6,所以逗号表达式为第二个表达式的值6。
C选项的赋值表达式可以表示为x=x*(1+x)=2*(1+2)=6。
D选项中的表达式可以表示为x=x*(x+1)=2*3=6。
若有定义语句:int a=12;,则执行语句:a+= a-= a*a;后,a的值是A) -264B) 552C) 144D) 264参考答案:A【解析】赋值运算结合性为自右向左,a+=a-=a*a相当于a=a-a*a,a=a+a;自右向左计算过程为a=a-a*a=-132,a=a+a=-264,A选项正确。
有以下程序#include <stdio.h>main(){int sum, pad, pAd;sum = pad = 5;pAd = ++sum, pAd++, ++pad;printf("%d\n", pad );}程序的输出结果是A) 5B) 6C) 7D) 8参考答案:B【解析】C语言区分大小写,pad与pAd是两个不同的变量。首先将5赋值给两个变量,由于赋值运算符的优先级高于逗号运算符,所以计算pAd=++sum,此时pAd 为6,sum也为6,然后计算pAd++,pAd的值变为7,++pad,pad的值变为6,所以选择B。有以下程序:#include <stdio.h>main(){ int x,y,z;x=y=1;z=x++,y++,++y;printf("%d,%d,%d\n",x,y,z);}程序运行后的输出结果是( )。
A) 2,3,3B) 2,3,2C) 2,3,1D) 2,2,1参考答案:C【解析】z=x++,y++,++y;因为赋值运算符的优先级高于逗号运算符的优先级,所以可以将上式表示成(z=x++),(y++),(++y)。
然后从左向右先计算表达式z=x++,因为x++先使用后自增,所以z的值为1,x的值为2。
再计算逗号表达式第二个表达式y++,此时y的值为2,最后计算第三个表达式++y,y的值为3。
有以下程序#include <stdio.h>main(){ int c,d;c = 10 | 5;d = 10 + 5;printf("%d,%d\n", c, d);}程序的运行结果是A) 15,15B) 10,15C) 5,15D) 105,15参考答案:A【解析】由于按位或"|"优先级高于赋值"=",10=1010B,5=0101B,按位或结果为1111B=15,故c=15,d=15,A选项正确。
若有定义语句:int x=10;,则表达式x-=x+x的值为( )。
A) 0B) -20C) -10D) 10参考答案:C【解析】算术运算符+的优先级高于-=,且-=的结合方向为自右向左,所以表达式x-=x+x可以表示成x=x-(x+x)=10-(10+10)=-10,选择C)。
若变量已正确定义,以下选项中非法的表达式是A) a!=4||'b'B) 'a'=1/2*(x=y=20,x*3)C) 'a' % 4D) 'A' + 32参考答案:B【解析】B选项中'a'即表示a为字符常量,再给'a'赋值1/2*(x=y=20,x*3),是不正确的。
C语言程序设计第1至8章复习知识点总结
printf("max=%d\n",c);
/*输出c的值*/
}
int max(int x, int y) {
int z; if (x>y) z=x; else z=y; return (z); }
/*定义max函数,函数值为整型,x、y为形参,整型*/
/*定义内部变量z*/ /*比较x,y的大小,如果x大于y,则执行z=x*/ /*否则执行z=y*/ /*将z的值返回,通过max带回调用处*/
整理课件
c语言第一至八章总结
2 基本数据类型
1、整型
2、实型
3、字符型
实型
小数形式 :3.14 指数形式:3.14*103 =3.14e003
标准化指数形式:3.14*103
对应 只有一个大于0的整数
字符
ASCII表
例:以下选项中,不能作为合法常量的是( B ) A) 1.234e04 B)1.234e0.4 C) 1.234e+4 D)1.234e0
long
注意:每一步运算都要先
unsigned
转换为同一类型 例:
低
int a=3,b=4;
int
char,short float c=3.0/4,d=b/a;
printf("%f,%f",c,d);
整理课件
c语言第一至八章总结
数据类型的强制转换
例2.8强制类型转换 #include<stdio.h> void main() {
程序设计语言 机器语言 机器语言
可执行
不可以
不可以
可以
文件名后缀
.c 整理课.o件bj
.exe
C语言程序设计复习题(一)1的阅读程序部分
} case 2: printf("third\n"); } } 结果:first third 4.下列程序运行结果是【 -1 】 。 #include<stdio.h> main( ) { int n=4; do n--; while (n); printf("%d\n",--n); } 5.下列程序运行结果是【 】 。 #include<stdio.h> dec( ) { static int x=5; x--; printf("%d",x); } main( ) { int k; for(k=0;k<3;k++) dec( ); } 结果:4 3 2 五.程序填空(请依题意,将程序中括号部分补充完整。每题 3 分,共 15 分) 1. 一个正整数与 3 的和是 5 的倍数,与 3 的差是 6 的倍数,编写一个程序求符合条件的最 小数。 #include <stdio.h> main() { int n; n=1; while (1) { n=n+1; if 【 (1) (n+3)%5==0&&(n-3)%6==0 】break; } printf("n=%d",n); } 2.将两个字符串合并成一个字符串。 #include <stdio.h> main() { char s1[20],s2[20],s3[40]; int i,j; printf("String1:"); gets(s1); printf("String2:》复习题(二)
一.单选题(在本题的每一小题的备选答案中,只有一个答案是正确的,请把你认为正确答 案的题号,填入题中的括号内。多选不给分。每题 1 分,共 20 分) 1.在 C 语言中,不同类型数据混合运算时,要先转换成同一类型后进行运算。设一表达式 中包含有 int、 long、 unsigned、 char 类型的变量和数据, 则表达式最后的运算结果是 【 ④ 】 类型数据。 ① int ② char ③ unsigned ④ long 2.若 int 型数据占 2 个字节,则以下语句的输出为 【 ④ 】 。 int k=-1; printf(“%d,%u\n”,k,k); ① -1,-1 ② -1,32767 ③ -1,32768 ④ -1,65535 3.设 x 和 y 均 为 int 型 变 量 , 则 执 行 以 下 语 句 后 的 输 出 为 【 ① 】 。 x=1 5; y=5 ; pri ntf( “ %d\n ” ,x%= (y%= 2)); ① 0 ② 1 ③ 6 ④ 12 4.若 x 为 uns igned in t 型 变 量 , 则 执 行 以 下 语 句 后 的 x 值 为 【 ④ 】 。 x=6 5535; pri ntf( “ %d\n ” ,x); ① 65535 ② 1 ③ 无定值 ④ -1 5 . 判断 char 型变量 c1 是否为小写字母的最简单且正确的表达式为【 ④ 】 。 ① ’a’<=c1<=’z’ ② (c1>=a)&&(c1<=z) ③ (‘a’<=c1)||(‘z’>=c1) ④ (c1>=’a’)&&(c1<=’z’) 6 . 以下不正确的 if 语句是【 ③ 】 。 ① if (x>y); ② if (x= =y) x+=y; ③ if (x!=y)scanf(“%d”,&x) else scanf(“%d”,&y); ④ if (x<y) {x++;y++;} 7 . C 语言对嵌套 if 语句的规定是:else 总是与【 ④ 】 配 对 。 ① 其 之 前 最 近 的 if ② 第 一 个 if ③ 缩 进 位 置 相 同 的 if ④ 其 之 前 最 近 且 不 带 else 的 if 8 . 设有说明语句:int a=2,b=7,c=5;则执行以下语句后,输出为【 ② 】 。 switch(a>0) { case 1: switch(b<0) { case 1: prin tf(“@”); break; case 2: p rintf(“!”); b reak; } case 0: switch(c==5) { case 0: prin tf(“*”); break; case 1 : p rintf(“#”); b reak; default:printf(“$”); break; } defau lt: p rin tf(“&”); } ① @#& ② #& ③ *& ④ $& 9 . 若有说明语句:int w=2,x=3,y=3,z=4;则表达式 w>x?w:z>y?z:x 的值是 【 ① 】 。 ① 4 ② 3 ③ 2 ④ 1 10.下面有关 for 循环的正确描述是【 ④ 】 。 ① for 循环只能用于循环次数已经确定的情况 ② for 循环是先执行循环体语句,后判定表达式
C语言复习题[1]
试题类型:选择题60分;判断题10分;程序分析:15分;编程:15分。
一.单项选择题1.组成C程序的基本单位是________。
A)表达式与语句 B)若干文件C)函数D)main函数2.C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符。
A)必须为字母或下划线。
B)必须为下划线。
C)必须为字母D)可以是字母、数字和下划线中的任一种字符。
3.以下用户标识符中,合法的是()。
A. intB. nitC. 123D. a+b4.不是C语言提供的合法关键字是()。
A.switchB.cherC.caseD.default5.以下选项中,合法的C语言关键字是________。
A)integer B)Char C)short D)Long6.在C语言中,正确的int类型的常数是________。
A)-2U B)059 C)3a D)0xAF7.C语言中int型数据在内存中占两个字节,则unsegned int取值范围是。
A)0 ~ 65535 B)0 ~ 32767C)-32767 ~ 32768 D)-32768 ~ 3276878.下列变量定义正确的是________。
A)int x_1 ; y; B)int x=y=5 ;C)int for=4; D)int printf=2,x_y=2;9.以下能正确定义整型变量a, b, c,并为他们赋初值5的语句是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;10.C 语言中,要求运算对象只能为整数的运算符是()。
A. %B. /C. >D. *11.设a 为整型变量,不能正确表达数学关系:10<a<15的C 语言表达式是( )。
A. 10<a<15B. a= =11|| a= =12 || a= =13 || a= =14C. a>10 && a<15D. !(a<=10) && !(a>=15)12.下列表达式没有错误的是________。
C语言1-5章复习题和参考答案.doc
1、若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是()。
A .-3 B.9 C.-12 D.62、若有定义:int a=8, b=5, c;执行语句c=a/b+0.4;后,c的值为()。
A .1.4 B.l C.2.0 D.23、有如下程序:void main(){int i,sum;for(i=l;i<=3;sum++)sum+=i;printf("%d\n",sum);}该程序的执行结果是()。
A .6 B.3 C.死循坏D.O4、下列关于表达式的描述屮,错误的是()0A.常量和变量都是表达式。
B.运算符类型对应表达式的类型。
C.每一个表达式都有自己的值。
D.表达式必须以分号结尾。
5、C语言中,合法的长整型常数是()。
A.'\t'B."A"C.65D.a6、若已定义x和y为double类型,则表达式x=l;y= (x+3) /2的值是()。
A.lB.2C.2.00000D.2.500007、表达式:10!二9的值是()oA.trueB.非零值C.OD.l8、以下程序的输出结果是()。
#include<stdio.h>void main(){printf("%d\n", NULL);}A.不确定的B.OC.-lD.l9、请选出合法的C语言赋值语句。
()A . a=b=58 B.i++; C. a=58,b=58 D. k=int(a+b);10^假设int b=2;表达式(b»2)/(b»l)的值是()。
A .0 B.2 C.4 D.811>关于语句printf("hello world\rT);,下列描述中错误的是()。
A . printf()是格式化输出函数,用于输出信息。
B.printf()括号屮的内容为函数的参数。
C.printf()括号中的内容会全部输出到控制台上。
C语言复习提纲(全)
C语言复习提纲:第一章 C语言程序设计概述一、Visual C++6.0开发环境1、了解Visual C++6.0的安装过程;2、了解Visual C++6.0的工作界面,菜单和工具栏的使用;▲二、掌握C语言程序运行的过程1、编辑:是指把按照C语法规则编写的程序代码通过编辑器(Visual C++ 6.0,Turbo C 3.0)输入计算机,并存盘。
在存盘时,C源文件的扩展名为 .c2、编译:将C语言源程序编译成目标程序,即对源程序进行编译,并将源程序转换为扩展名为.obj的二进制目标代码(即把已经编辑好的源程序翻译成二进制目标代码的过程)。
3、连接:将用户程序生成的目标代码文件(.obj)和系统提供的库文件(.lib)中的某些代码连接在一起,生成一个可执行文件(.exe)。
4、执行:执行生成的可执行代码,并输出结果。
5、调试:是将编制的程序投入实际运行前,用手工或编译程序等方法进行测试,修正语法错误和逻辑错误的过程。
▲三、结构化程序设计的基本概念1、概念以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块,将原来较为复杂的问题化简为一系列简单模块的设计,任何模块都可以使用一些基本的结构来实现,任何复杂的程序,都可以使用这些基本结构按一定的顺序组合起来,这些基本结构的特点都是只有一个入口、一个出口,这样的程序设计方法称为结构化程序设计。
2、基本思想结构化程序设计的基本思想是采用"自顶向下,逐步细化、模块化设计、结构化编码"的程序设计方法和"单入口单出口"的控制结构。
3、三种基本结构⑴顺序结构⑵选择结构⑶循环结构4、三种基本结构的特点⑴只有一个入口⑵只有一个出口⑶每一个基本结构中的每一部分都有机会执行到⑷结构内不存在“死循环”5、设计原则⑴自顶向下⑶逐步细化⑶模块化设计⑷结构化编码▲四、C程序的基本组成:C程序是由若干个函数构成的,至少有一个主函数main(),main()的位置可以任意,其他各函数在程序中的前后位置也是可以任意的。
C语言复习题库(1)
一、填空题(每空 1 分,共20 分)1.程序的三种基本结构为(顺序)、(选择)和(循环)。
2.在C 语言中,用(;)表示语句的结束。
3.语句printf("%%d%d",123);将输出:(“%d123 )。
4.逻辑运算的结果值是(0 )或( 1 )。
5.数组 int a[3][4];共定义了(12 )个数组元素。
6.在 C 语言中,正确的标识符是由(数字、字母、下划线)组成的,且由(字母和下划线)开头的。
7.一个算法应具有的特点有:(有穷性)、(确定性)、有零个或多个输入、有一个或多个输出、有效性。
8.在程序执行过程中,其值不发生改变的量称为(常量),其值可变的量称为(变量)。
9.若有定义:int m=5,y=2;则执行表达式y+=y-=m*=y 后的y 值是(-16 )。
10.在三种正规循环中,当条件表达式的值为(0 )时,就结束循环。
11.C 语言中函数的参数分为(形式参数)和(实际参数)。
12.当函数的数据类型省略时,默认的数据类型为(int 型或者整数型)型。
13.按变量地址访问变量的方法叫(直接访问),通过存放变量地址的变量去访问变量的方法叫(间接访问)。
14.若有定义:int [3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[1][2]得到的初值是(0 ),a[2][1]得到的初值是( 6 )。
15.文件包含的一般形式为(#include <文件名> )。
16.宏定义中宏名一般用大写字母表示,容易做到(一改全改)。
17.结构体是一种(构造)数据类型用途是把(不同类型)的数据组合成一个整体。
18.位运算的运算对象只能是(整型)或(字符型)数据,而不可以是其他类型的数据。
19.(文件)是存储在外部介质上数据的集合,是操作系统数据管理的单位。
20.设有“int x=2,y”说明,则逗号表达式“y=x+5,x+y”的值是(9 )。
吉林大学-C语言复习1
一、单项选择题1.以下选项中可作为 C 语言合法整数的是( )A) 10110B B )0386 C )OXffa D )x2a2参考答案:C2.以下选项中非法的表达式是( )A 0<=x<100B )i=j==0C )(char)(65+3)D )x+仁x+1参考答案:D3.假定x 和y 为double 型,则表达式x=2,y=x+3/2的值是( )A) 3.500000 B) 3 C) 2.000000 D) 3.000000参考答案:D4.设有定义语句:char c1=92,c2=92;,则以下表达式中值为零的是( )A) c1A c2 B) c1&c2 C) ~c2 D) c1|c2参考答案:A5.以下能正确定义二维数组的是( )A) int a[][3] B) int a[][3]=2{2*3};C) int a[][3]={} D) int a[2][3]={{1},{2},{3,4}};参考答案:D6.设正x 、y 均为整型变量,且x=10 y=3,则以下语句的输出结果是( )prin tf("%d,%d\n",x--,--y);A) 10,3 B) 9.3 C) 9.2 D)10,2参考答案:D7.有以下定义语句 double a,b; int w; long c;若各变量已正确赋值,则下列选项中正确的表达式是()A) a=a+b=b++ B) w%((i nt)a+b) C) (c+w)%(i nt)a D) w=a= =b;参考答案:C8.已定义c 为字符型变量,则下列语句中正确的是()10•以下语句或语句组中,能正确进行字符串赋值的是(A)char *sp;*sp="right!" B)char s[10];s="right!"; C)char s[10];*s="right!"D)char *sp="right!";参考答案:D11. si 和s2已正确定义并分别指向两个字符串。
c语言复习题一
c语⾔复习题⼀复习题⼀⼀、选择题1.以下程序的输出结果是( B )。
#include “stdio.h ”main( ){ printf(“%d\n ”,‘A ’);}A.不确定值B.65C. 97D.A2. 以下程序的输出结果是( C )main( ){ char c1=‘7’,c2=‘0’;printf(“%c,%c,%d\n ”,c1,c2,c1-c2);}A.输出出错信息B.7,0,5C.7,0,7D.6,0,73. 以下变量说明正确的是( C )A.Int a,b;B.int x,float y;C. int a,x;D.int a,x4.若int a, b; scanf("%d%d", &a, &b); 不可以⽤( A )作为输⼊的分隔符。
A.,B. 空格C. 回车D. TAB 键5.设x=2.5, a=7, y=4.7 则表达式x+a%3*(int)(x+y)%2/4的值为( B )A. 0B. 2.5C.不确定D.36. 以下变量x.、y 、z 均为double 类型且已正确赋值,不能正确表⽰数学式⼦zy *x 的C 语⾔表达式是( A ) A. x/y*z B. x*(1/(y*z)) C. x/y*1/z D. x/y/z7. 下⾯(A )是正确的变量名。
A. xyB. 2xyC. x+yD.for8. 设有变量说明:int x=5,y=3;那么表达式y=x>y?(x=1):(y=-1);运算后,x 和y 的值分别是( B )相当与if 语句,问号前⾯成⽴是则执⾏冒号前不成⽴是执⾏冒号后A. 1和-1B. 1和1C. 5和1D. 1和39.以下合法的数组定义是( D )A.int a[]=“string ”;B.int a[5]={0,1,2,3,4,5};C.char a=“string”;D.int a[]={0,1,2,3,4,5};10.设有如下定义char s1[30]=“12345”;printf(“%d\n”,strlen(s1)记数函数直到出现\0是停⽌记数;则输出结果是( B )A.4B. 5C. 9D. 1011.以下程序段中内循环体总的执⾏次数是( A )for(i=5;i>=1;i--)for(j=0;j<4;j++){…}A.20B.24C.25D.3012.语句b=3+a--;表达式的功能,可以由下⾯的(C)的两个语句来实现。
C语言复习资料 (1)
C语言复习资料一、C语言基础知识1. C语言的主要特点有哪些?(多选) ACDEA.简洁、紧凑,使用方便、灵活,易于学习和应用。
B.C语言是面向结构化程序设计的语言。
C.C语言允许直接对位、字节和地址进行操作。
D.数据类型丰富。
E.C语言生成的目标代码质量高。
2. C语言程序由什么组成?(单选) CA. 子程序B. 主程序和子程序C. 函数D. 过程3. 源程序要正确地运行,必须要有什么函数?(单选) CA. printf函数B. 自定义的函数C. main函数D. 不需要函数4. 指出下面合法的标识符:(多选) C D E GA. 3abB. intC. ABCD. a_3E. sum.aF. #abcG. _stu2H. abc f5. 指出下面哪些是合法的用户定义的标识符?(多选) D GA. P-SB. putcharC. doubleD. _908E. *parF. sheep!G. windH. x y6. C语言的基本类型哪些:(多选)A BE GA. 整型B. 枚举型C. 数组型D. 指针型E. 字符型F. 构造型G. 实形H. 空类型7. 这段程序中的常量有:(多选) A C D EF#define PI 3.14void main(){int sum;sum = 10 + 15;printf("sum=%d\n",sum);printf("result is 25\n");}这段程序中常量有:A. 10B. sumC. 15D. 25E. mainF. PI8. C语言中整形常量按进制划分,有以下几种:(多选)A B CA. 十六进制常量B. 十进制常量C. 八进制常量D. 二进制常量9. 75的十六进制写法为_0x4B__,八进制写法为_0113__。
0x75的八进制写法为_0165__,十进制写法为_117__。
075的十进制写法为__61_,十六进制写法为__0X3D_。
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)
