C语言自测题
c语言测试题目及答案
c语言测试题目及答案一、选择题(每题2分,共20分)1. 下列哪个关键字不是C语言的控制语句?A. ifB. switchC. whileD. loop答案:D2. C语言中,一个整型变量int占用的字节数是多少?A. 1B. 2C. 4D. 8答案:C3. 在C语言中,以下哪个运算符用于计算两个数的乘方?A. *B. /C. ^D. %答案:C4. 下列哪个函数用于计算一个数的绝对值?A. abs()B. max()C. min()D. pow()答案:A5. 在C语言中,以下哪个是正确的字符串字面量?A. "Hello World"B. 'Hello World'C. {"Hello World"}D. ["Hello World"]答案:A6. 在C语言中,以下哪个是正确的数组声明?A. int array[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};B. int array[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};C. int array = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};D. int array[10] = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9;答案:B7. 在C语言中,以下哪个是正确的函数声明?A. void myFunction(int x, int y);B. int myFunction();C. void myFunction(int x, int y) {}D. int myFunction(int x, int y);答案:A8. 在C语言中,以下哪个是正确的递归函数调用?A. func(5);B. func(func(5));C. func(func(5, 3));D. func(5, 3);答案:B9. 下列哪个是C语言中合法的变量名?A. 2variableB. variable-nameC. variable#nameD. variable_name答案:D10. 在C语言中,以下哪个是正确的结构体声明?A. struct Person { int age; char name[50]; };B. struct { int age; char name[50]; };C. Person { int age; char name[50]; };D. Person struct { int age; char name[50]; };答案:A二、填空题(每空2分,共20分)1. C语言中,用于定义一个函数的关键字是________。
C语言测试题及答案
C语言测试题及答案C语言测试题及答案古今来许多世家,无非积德。
天地间第一人品,还是读书。
以下是店铺为大家搜索整理的C语言测试题及答案,希望能给大家带来帮助!C语言测试题及答案篇11.(A )是构成C语言程序的基本单位。
A、函数B、过程C、子程序D、子例程2.C语言程序从 C 开始执行。
A、程序中第一条可执行语句B、程序中第一个函数C、程序中的main函数D、包含文件中的第一个函数3、以下说法中正确的是( C )。
A、C语言程序总是从第一个定义的函数开始执行B、在C语言程序中,要调用的函数必须在main( )函数中定义C、C语言程序总是从main( )函数开始执行D、C语言程序中的main( )函数必须放在程序的开始部分4.下列关于C语言的说法错误的是( B ) 。
A、 C程序的工作过程是编辑、编译、连接、运行B、 C语言不区分大小写。
C、 C程序的三种基本结构是顺序、选择、循环D、C程序从main函数开始执行5.下列正确的标识符是(C )。
A、-a1B、a[i]C、a2_iD、int t5~8题为相同类型题考点:标识符的命名规则只能由字母、数字、下划线构成数字不能作为标识符的开头关键字不能作为标识符选项A中的“-” ,选项B中“[”与“]”不满足(1);选项D中的int为关键字,不满足(3)6.下列C语言用户标识符中合法的是(B )。
A、3axB、xC、caseD、-e2 E)union选项A中的标识符以数字开头不满足(2);选项C,E均为为关键字,不满足(3);选项D中的“-”不满足(1);7.下列四组选项中,正确的C语言标识符是( C )。
A、 %xB、a+bC、a123D、123选项A中的“%” ,选项B中“+”不满足(1);选项D中的标识符以数字开头不满足(2)8、下列四组字符串中都可以用作C语言程序中的标识符的是( A)。
A、print _3d db8 aBcB、Iam one_half start$it 3paiC、str_1 Cpp pow whileD、Pxq My->book line# His.age选项B中的“”,”$” ,选项D中“>”,”#”,”.”,”-”不满足(1);选项C中的while为关键字,不满足(3)9.C语言中的简单数据类型包括(D )。
C语言程序设计__承德石油高等专科学校(5)--期中自测题
基础篇(一~五单元)自测题一 . 基础知识题1. 按照C 语言规定的用户标识符命名规则,不能出现在标识符中的是()。
A. 大写字母B. 连接符C. 数字字符D. 下划线2. 对于一个正常运行的C 程序,以下叙述中正确的是()。
A. 程序的执行总是从main 函数开始,在main 函数结束B. 程序的执行总是从程序的第一个函数开始,在main 函数结束C. 程序的执行总是从main 函数开始,在程序的最后一个函数中结束D. 程序的执行总是从程序的第一个函数开始,在程序的最后一个函数中结束3. 以下合法的字符型常量是()。
A."x13'B."\018"C."65"D."\n"4. 下列运算符中,优先级最高的是()。
A.++B.%C.* (算术乘法)D.=5. 设有定义:int k=0;,以下选项的四个表达式中与其他三个表达式的值不相同的是()。
A. k++B. k+=1C.++kD. k+16. 设变量均已正确定义,若要通过scanf("%d%c%d%c",&al,&cl,&a2,&c2); 语句为变量al 和a2赋数值10和20,为变量cl 和c2 赋字符X 和Y。
以下所示的输入形式中正确的是(注:□代表空格字符;对于%c来说,可接受键盘输入的任何符号.) ()。
A.10□X□20□Y<回车>B.10□X20□Y<回车>C.10□X<回车〉D.10X <回车>20□Y<回车> 20Y <回车>7. 有以下程序void main(){ int x=0x2F;printf("%d\n",x);}程序运行后的输出结果是()。
A.47B. 17C.2FD. 0x2F8.以下程序输出结果为()。
C语言程序设计自测题
C语言程序设计自测题在计算机科学领域中,C语言是一种广泛使用的编程语言之一。
它是一种高级语言,具有对系统资源的直接访问能力以及强大的功能。
C 语言可以用于开发各种类型的应用程序,从简单的命令行工具到复杂的操作系统。
本文将为您提供一些关于C语言的自测题,帮助您检验自己在C语言程序设计方面的掌握程度。
这些问题将覆盖C语言的各个方面,包括基本语法、数据类型、运算符、条件语句、循环结构以及函数等。
问题一:基本语法1. C语言中的注释有几种类型?请举例说明。
2. 如何在C语言中输出文本?3. 如何声明和初始化一个整数类型的变量?4. 请说明C语言中的标识符命名规则。
问题二:数据类型和运算符1. 在C语言中,int、float和char等是哪种数据类型?2. 如何在C语言中进行算术运算和逻辑运算?3. 请解释C语言中的类型转换。
4. 请说明C语言中的运算符优先级规则。
问题三:条件语句1. 请说明C语言中的if语句和switch语句的用法和区别。
2. 如何在C语言中使用条件运算符(三目运算符)?3. 请解释C语言中的逻辑运算符“&&”、“||”和“!”的作用。
问题四:循环结构1. 请说明C语言中的for循环和while循环的用法和区别。
2. 如何在C语言中使用break和continue语句?3. 请解释C语言中的循环控制变量。
问题五:函数1. 如何在C语言中定义和调用函数?2. 请说明C语言中的形式参数和实际参数的区别。
3. 如何在C语言中使用递归函数?以上题目只是一部分示例,您可以根据自己的需要做进一步的扩展,或者深入研究每个主题。
通过自测题,您可以加深对C语言程序设计的理解,并帮助您查漏补缺。
在解答这些问题时,请确保您的回答准确、清晰,并使用正确的C语言语法。
不妨借助编译器进行实际测试,以确保您的答案和代码是正确的。
C语言是一门强大而灵活的编程语言,掌握它将为您在计算机科学领域中的职业生涯开辟更广阔的发展空间。
C语言程序设计自检自测题及解答一
《C++语言程序设计》自检自测题及解答(一)2002年07月28日宁夏电大教学处一、单选题(每小题1分,共6分)1. 由C++目标文件连接而成的可执行文件的缺省扩展名为________。
2. 在下面的一维数组定义中,哪一个有语法错误。
________A、 int a[]={1,2,3};B、int a[10]={0};C、 int a[];D、 int a[5];3. 在下面的函数声明中,存在着语法错误的是________。
A、 void BC(int a, int);B、void BD(int, int);C、void BE(int, int=5);D、int BF(int x; int y);4. 假定AB为一个类,则该类的拷贝构造函数的声明语句为________。
A、 AB&(AB x);B、 AB(AB x)C、 AB(AB&);D、 AB(AB* x)5. 对于结构中定义的成员,其隐含访问权限为________。
A、 publicB、 protectedC、 privateD、 static6.当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为________。
A、 ios::inB、 ios::outC、 ios::in | ios::outD、没有二、填空题(每小题2分,共24分)1. 1.执行"cout<<43<<'-'<<18<<'='<<43-18<<endl;"语句后得到的输出结果为________。
2. 2.已知'A'~'Z'的ASCII码为65~90,当执行"char ch=14*5+2;cout<<ch<<endl;"语句序列后,得到的输出结果为________。
C语言测试题
17. 用语句a=a+b,b=a-b,a=a-b;可以交换a,b两个变量的值。( )答案为√
18. 在C语言中,定义int a=b=c=5;是错0的,而int a,b,c; a=b=c=5;是的.( )答案为√
19. 表达式“5=3”是一个关系表达式,且其值为0。( )答案为×
b=x++;
c=y;
(A)a=9,b=9,c=9 (B)a=9,b=10,c=9 (C)a=1,b=11,c=10 (D)a=8,b=8,c=10
答案为D
5. 执行下面的程序段后,B的值为( )。
int x=35;
char z=''A'';
int B;
B=((x&15)&&(z<''a''));
(A) 0 (B) 1 (C) 2 (D) 3
答案为B
6. 表达式11&10的结果用二进制表示为( )。
A)11 B)3 C)1 D)10
答案为D
7. 设有语句int a=3;则执行语句a+=a-=a*a后,变量a的值是( )。
23. 设int x=3,y=2;表达式(y++==--x)?y++:x++的值是3。( )答案为√
24. 已知int a=5,b=5; 则表达式: ++a>b?a:b-->++a?++b:a的值为6。( )答案为√
25. 表达式~(~1<<3)的值是15。( )答案为√
C语言测试题(附有详细解析)
C语言测试题(附有详细解析)一、选择题1. 以下哪个选项是C语言的关键字?A. ifB. sizeofC. structD. include解析:C语言中,关键字是指被C语言本身定义的具有特定意义的单词。
选项A的`if`是关键字,用于条件判断;选项C的`struct`是关键字,用于定义结构体;选项D的`include`实际上是预处理指令的一部分,不属于关键字。
选项B的`sizeof`是运算符,用于计算数据类型或变量的大小。
因此,正确答案是A、C。
2. 在C语言中,以下哪个选项表示整型变量?A. charB. intC. floatD. double解析:在C语言中,`int`类型用于存储整数。
选项A 的`char`用于存储字符;选项C的`float`和选项D的`double`用于存储浮点数。
因此,正确答案是B。
3. 以下哪个选项表示逻辑运算符?A. `++`B. `--`C. `&&`D. `%`解析:逻辑运算符用于连接多个条件表达式,包括与运算符`&&`、或运算符`||`和非运算符`!`。
选项C的`&&`是逻辑与运算符。
选项A的`++`和选项B的`--`是算术运算符,用于自增和自减;选项D的`%`是取模运算符。
因此,正确答案是C。
二、填空题1. 在C语言中,定义一个整型变量`a`并赋值为10的代码是______。
解析:定义整型变量`a`并赋值为10的代码如下:```cint a = 10;```2. 以下代码的输出结果是______。
```c#include <stdio.h>int main() {int x = 5;printf("%d\n", x++ + ++x);return 0;}```解析:在C语言中,`x++`是先使用x的值,然后x自增1;`++x`是先x自增1,然后使用x的值。
因此,`x++ + ++x`的执行过程如下:- `x++`,此时x的值为5,输出5;- `++x`,此时x的值为6,输出6;- 最终输出结果为11。
C语言自测题
单选题1. A 是构成C语言的基本单位。
A.函数B.过程C.子程序D.子例程2.能正确表示a≥10或a≤0关系表达式的是C 。
A.a>=10 or a<=10B.a>=10 | a<=0C.a>=10 || a<=0D.(a>=10,a<=0)3.以下 B 是C合法的标识符。
A.A#CB.entryC.voidD.ab*4.设c1是char类型的变量,则判断c1是否为数字字符的正确表达式是 A 。
A.(c1>=’0’)&&(c1<=’9’)B.(c1>=0)&&(c1<= 9)C.’0’<=c1<=’9’D.(c1>=’0’)||(c1<=’9’)5.在C语言中,字符型数据在内存中是以 D 形式存放的。
A.原码B.BCD码C.反码D.ASCII码6.若有以下类型说明语句:char w; int x; float y; double z,则表达式w*x+z-y结果的类型是:D 。
A.floatB.charC.intD.double7.若有int a=0,x=1; 则循环语句while(a<10) x++; a++; 循环执行 A 。
A.无限次B.不确定次C.10次D.9次8.定义int n=5;下面语句的输出结果为 B 。
printf(n%2 ? “AAA”:”BBB”);A.无输出B.AAAC.BBBD.AAABBB9.下列语句中,正确的是: DA.int a[3][]={{1},{2}}B.int a[][]={{1,2},{4},{5,6,7}};C.int a[3][]={{1,2},{4,5}};D.int a[4][3]={{1},{4,2},{0,6,7}};10.下列定义不正确的是: A 。
A.int i, *p=i;B.int *p,i;C.int i,*p=&i;D.int i,*p;11.在C语言程序中,有关函数的描述正确的是 C 。
C语言测试题(附有详细解析)
C语言测试题(附有详细解析)一、选择题1. 下面哪个选项是C语言的合法标识符?A. voidB. 2varC. intD. _temperature解析:C语言的标识符必须以字母或下划线开头,后面可以跟字母、数字或下划线。
选项A和C是C语言的关键字,不能作为标识符。
选项B以数字开头,不合法。
选项D符合标识符的规则,是正确的。
2. 在C语言中,哪个关键字用于定义整型变量?A. floatB. intC. doubleD. char解析:在C语言中,关键字`int`用于定义整型变量。
选项A 用于定义浮点型变量,选项C用于定义双精度浮点型变量,选项D用于定义字符型变量。
因此,正确答案是B。
3. 下面哪个选项是C语言中的逻辑运算符?A.++B. &&C. ||D. !=解析:C语言中的逻辑运算符包括`&&`(逻辑与)和`||`(逻辑或)。
选项A是自增运算符,选项D是不等于运算符,因此正确答案是B和C。
二、填空题4. 下面代码的输出是什么?```c#include <stdio.h>int main() {int x = 5;printf("%d\n", x++);return 0;}```解析:这段代码的输出是5。
在`printf`语句中,`x++`是后缀自增运算符,它先输出x的当前值5,然后x的值增加1。
因此,输出为5。
5. 下面代码的输出是什么?```c#include <stdio.h>int main() {int x = 5, y = 10;printf("%d\n", x > y ? x : y);return 0;}```解析:这段代码的输出是10。
条件运算符`?:`是一个三元运算符,它根据第一个表达式的值来选择第二个或第三个表达式。
在这个例子中,`x > y`是假的,所以输出是`y`的值,即10。
C语言程序设计--自测题(三)
D、文件由数据流形式组成,可按数据的存放形式分为二进制文件和文本文件
26、以下叙述中正确的是______。
A、C程序中注释部分可以出现在程序中任意合适的地方
B、花括号"{"和"}"只能作为函数体的定界符
C、构成C程序的基本单位是函数,所有函数名都可以由用户命名
r=fun(fun(x,y),2*z);
printf("%d/n",r);
}
程序运行后的输出结果是______。
A、3
B、6
C、8
D、12
32、有以下程序段
main()
{ int a=5,*b,**c;
c=&b; b=&a;
……
A、if (c<a) x=1;
else if (b<a) x=2;
else x=3;
B、if (a<3) x=3;
else if (a<2) x=2;
else x=1;
C、if (a<3) x=3;
if (a<2) x=2;
if (a<1) x=1;
30、以下选项中可作为C语言合法整数的是______。
A、10110B
B、0386
C、0Xffa
D、x2a2
31、有以下程序
fun(int a, int b)
{ if(a>b) return(a);
C语言自测题参考答案
自测题1一、单项选择题(2*20=40分)1.C语言中下列叙述正确的是____________。
DA、不能使用do-while语句构成的循环B、do-while语句构成的循环,必须用break语句才能退出C、do-while语句构成的循环,当while语句中的表达式值为非零时结束循环D、do-while语句构成的循环,当while语句中的表达式值为零时结束循环2.以下选项中,能定义s为合法的结构体变量的是____________。
BA、typedefstructabc {double a;char b[10];} s;B、structabc{double a;char b[10];}s;C、struct ABC {double a;char b[10];};ABC s;D、typedef ABC{double a;char b[10];};ABC s;3.若x和y都是int型变量,x=3、y=200,则语句printf("%c",y/x);输出结果是__________。
AA、BB、66C、66.6D、输出格式符不够,输出不确定的值4.请选出可用作C语言用户标识符的一组标识符____________。
B①void ②a3_b3 ③For ④2adefine _123 _abc DOWORD IF case sizeofA、①B、②C、③D、④5.设ch是char型变量,其值为字母A,下面的表达式的值是____________。
Bch=(ch>='A'&&ch<='Z')?(ch+32):chA、AB、aC、ZD、z6.已知a为int类型的一维数组,p为整型的指针变量,其定义如下:int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;则语句printf("%d\n",*(p+2));的输出结果是____________。
(完整版)C语言考试题库及答案
(完整版)C语言考试题库及答案一、选择题1. 以下哪个选项是C语言的合法标识符?A. intB. 2abcC. voidD. a+b答案:C2. 在C语言中,下列哪个选项是正确的数据类型?A. floatB. integerC. doubleD. All of the above答案:D3. 若变量定义如下:int a = 5;,则执行语句printf("%d", a++); 后,a的值是多少?A. 4B. 5C. 6D. 无法确定答案:C4. 以下哪个函数用于动态分配内存?A. malloc()B. alloc()C. new()D. calloc()答案:A5. 在C语言中,哪个运算符用于取模(取余)?A. %B. /C. &D. |答案:A以下是判断题部分:6. C语言中的数组名可以作为指向该数组首元素的指针使用。
()答案:正确7. 在C语言中,结构体变量可以作为函数的参数传递。
()答案:正确8. 在C语言中,静态存储类别的变量在程序运行期间始终占据内存空间。
()答案:正确二、填空题9. 在C语言中,定义一个整型变量需要使用关键字______。
答案:int10. 若变量定义如下:int a = 10;,则执行语句printf("%d", a--); 后,a的值是______。
答案:911. 在C语言中,用于动态分配内存的函数是______。
答案:malloc12. 在C语言中,用于释放动态分配的内存的函数是______。
答案:free13. 在C语言中,用于清空标准输入缓冲区的函数是______。
答案:getchar()三、编程题14. 编写一个C语言程序,实现以下功能:输入一个整数,输出它的阶乘。
答案:```c#include <stdio.h>int main() {int n, i;long factorial = 1;printf("Enter an integer: ");scanf("%d", &n);if (n < 0) {printf("Factorial of a negative number doesn't exist.\n");} else {for (i = 1; i <= n; i++) {factorial = i;}printf("Factorial of %d is %ld\n", n, factorial);}return 0;}```15. 编写一个C语言程序,实现以下功能:输入一个字符串,判断它是否是回文(正读和反读都一样的字符串)。
《C语言》自测题B答案
13、以下叙述正确的是_____③_____
①goto语句只能用于退出多层循环。
②可以用continue语句来终止switch语句的执行。
③break语句只能用在循环体内和switch语句体中。
④在循环内使用break语句和continue语句的作用相同。
14、以下对二维数组a的正确说明是_____③_____
(20 年至20 学年度第 学期)
考试时间 年 月 日(120分钟) 课程 C语言 教师签名_____
大
九十
合Байду номын сангаас
题一二三四五六七八
计
号
得 分
一、单项选择题(每小题1分,共30分) 1、以下程序的运行结果是:________②_________。 #include "stdio.h" #include "string.h" void main() {char s[]="abcd"; printf("%d,%d\n",strlen(s),sizeof(s)); } ①5,4 ②4,5 ③4,4 ④5,5 2、以下程序的运行结果是:________③_________。
出的结果是_________③_________。(用大写字母U表示空格)
①x=12.34UUUUU
②x=UUUUU12.34
③x=12.35UUUUU
④x=UUUUU12.35
17、有以下程序:#include "stdio.h"
#include "stdlib.h"
void main()
{char *p,*q;
p=(char *)malloc(20*sizeof(char));q=p;
电子科技大学《C语言》自测题答案
自测题1答案一、填空题(每空1分,共29分)1、若有以下的定义:int a [6];则数组a元素的下标的上限为 5 ,下限为 0 。
2、局部的变量是在函数内部定义的,它们只在本函数有效。
3、组成C程序的若干函数中,只能且必须有一个主函数。
4、C语言中的变量名可以由字母,数字和下划线三种字符组成,且首字符不能是。
5、枚举类型enum color (bla,blu,gre=3,cya,red)中的枚举项的值bla=__0__、blu=__1__、cya=__4__、red=__5___.6、c语言中变量的存储属性有自动、____静态____、__外部______和寄存器四种。
7、算术运算符,关系运算符,赋值运算符的优先级从低到高依次是赋值运算符,关系运算符,算术运算符。
8、标准文件是系统自动打开和关闭的,但是一般用户文件,必须在程序中用函数_fopen( )_打开文件,文件操作结束后,用__fclose( )_关闭文件。
9、函数参数有形式参数和实际参数两种形式。
10、程序的三种基本结构是顺序结构,选择结构,循环结构。
11、x、y、z均为int型变量,请写出描述“x或y中有一个小于z”的表达式__x<z||y<z_。
12、下面程序的运行结果是: c1=c,c2=abc# include <>main( ){char s[10]={“abc”};printf(“c1=%c,c2=%s\n”,s[2],s);}13、如果a=5,b=2,c=3,d=4,则表达式a<ba:c<dc:d的值是 3 。
14、设a=6,b=2,表达式a*=a+b运算后a的值为 48 。
15、设x=.,a=9,y=,表达式x+a%2*(int)(x+y)%2/4的值。
二、选择题(每小题2分,共26分)1、一个C程序的执行是从 AA)本程序的main函数开始,到main函数结束。
B)本程序的第一个函数开始,到本程序最后一个函数结束。
C语言自测题及答案
C语⾔⾃测题及答案⾃测题⼀、选择题:1.以下叙述中正确的是()。
A)C语⾔⽐其他语⾔⾼级 B)C语⾔可以不⽤编译就能被计算机识别执⾏C)C是近英语的⾃然语⾔和数学语⾔为语⾔的表达形式 D)C语⾔出现最晚,具有其他语⾔的⼀切优点2.以下叙述中不正确的是()。
A)⼀个C源程序可由⼀个或多个函数组成 B)⼀个C源程序必须包含⼀个main函数C)函数是C程序的基本组成单位 D)分号是C语句之间的分隔符,不是语句的⼀部分3.算法具有五个特性,以下不属于算法特性的是()。
A)有穷性 B)简洁性 C)可⾏性 D)确定性4.以下()组中的标识符都是合法的⽤户标识符。
A)3ab,A_10,st B)class,λ1,grade C)printf,INT,char1 D)b3,a,unsigned5.C语⾔中的基本数据类型包括()。
A)整型、实型(浮点型)、逻辑型 B)整型、实型(浮点型)、字符型C)整型、字符型、逻辑型 D)字符型、实型(浮点型)、逻辑型6.以下选项中,均是合法整型常量的选项是()。
A)123,Oxffff,0123 B)Oxabc,018,0x123 C)Ola,123, 012,Oxef D)Ox22b,3e5,0167.若有定义:float a=3.0,b=4.0,c=5.0;则表达式1/2*(a+b+c)的值为()。
A)6.0 B)6 C)0.0 D)⽆答案8.若有定义和语句:int s,p;s=p=5;p=s++;则执⾏语句后 p的值是()。
A)0 B)5 C)7 D)69.以下选项中,与k=n++完全等价的表达式(即执⾏后k,n及表达式的值完全相同)是()。
A) k=n, n=n+l B)n=n+1,k=n C)k=++n D)k+=n+110.以下程序的输出结果是()。
#includevoid main(){int a=20,b=10;printf("%d,%%d\n",a+b,a-b);}A) 30,%d B)30,10 C)30,%10 D)以上答案均不正确11.下列程序的运⾏结果是()。
2.2.3同步自测c语言程序设计实验与习题指导习题答案
2.2.3同步自测c语言程序设计实验与习题指导习题答案2.2.3 同步自测一、选择题1.如a为int型,则与表达式a等价的C语言关系表达式是(B)。
(A)a>0 (B)a!=0 (C)a==0 (D)a<02.运行完下列程序后,在屏幕上的内容是(D)。
void main (){ int a=0;a+=(a=12);printf ("%d\n",a);}(A)0 (B)6 (C)12 (D)243.若x,y为实数类型的变量,要判断x,y相等,最好使用下列关系表达式(D)。
(A)x==y (B)x-y==0(C) fabs(x-y)<1e-8 (D)labs(x-y)<1e-84.执行下面程序中输出语句后,a的值是(C)。
#include<>main( ){ int a;printf("%d\n",(a=3*5,a*4,a));}(A)65 (B)20 (C)15 (D)105.若变量t为double类型,表达式(t=1,t+5,t)的值是(C)。
(A)1 (B) (C) (D)66.下述程序的输出结果是(B)。
#include <>void main(){ int a,b,c=241;a=c/100%9;b=-1&&-1;printf("%d,%d\n",a,b);}(A)2,0 (B)2,1 (C)6,1 (D)0,-17.设有C语句:int x=3, y=4,z=5;,则下面表达式中值为0的是(D)。
(A)x&&y (B)x<=y(C)x||y+z&&y-z (D)!((x<y)&&!z||1))< p="">8.位运算中,操作数每左移一位,在没有溢出的情况下其结果相当于(A)。
(A)操作数乘以2 (B)操作数除以2(C)操作数除以4 (D)操作数乘以49.下面程序运行后,变量m的值为(C)。
c语言 测试题
第3章一、单项选择题1. 在一个C程序中(B )。
A.)main函数必须出现在所有函数之前B)main函数可以在程序任何位置出现C)main函数必须出现在所有函数之后D)main函数必须出现在固定位置2.在PC机中,’\n’在内存占用的字节数是( A )。
A)1 B)2 C)3 D)43. 下列关于C语言用户标识符的叙述中正确的是(B )A)用户标识符中可以出现下划线和中划线(减号)B)用户标识符中不可以出现中划线(减号),但可以出现下划线C)用户识符中可以出现下划线,但不可以放在用户标识符的开头D)用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头4. 以下叙述中正确的(D )。
A.)输入项可以是一个实型常量,例如:scanf("%f",3.5);B.)只有格式控制,没有输入项,也能正确输入数据到内存,例如:scanf("a=%d,b=%d");C.)当输入一个实型数据时,格式控制部分可以规定小数点后的位数,例如:scanf("%4.2f ",&f);D.)当输入数据时,必须指明变量地址,例如:scanf("%f ",&f);5.设整型变量i的值为3,则计算表达式i---i后i的值为( A )。
A)0 B)1 C)2 D)表达式出错6.设整型变量a,b,c均为2,表达式a+++b+++c++的结果是( A )。
A)6 B)9 C)8 D)表达式出错7. 以下选项中合法的用户标识符是( B )。
A)long B)_2test C)3Dmax D )A.dat8.设有语句int a=3;,则执行了语句a+=a-=a*a;后,变量a的值是( D )。
A)3 B)0 C) 9 D)-129.在以下一组运算符中,优先级最高的运算符是( C )。
A)<= B)= C)% D)||10.设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中值为0的是( D )。
C理论自测题及参考答案(第1次)
A. x++ B. y++ C. c++ D. d++ 31. 以下语句中有语法错误的是 。 A. printf("%d",0e); B. printf("%f",0e2); C. printf("%d",0x2); D. printf("%s","0x2"); 单选题答案:1-5: DCBCA 6-10:BAADD 11-15: DCCAB 16-20:BBDAB 21-25: DDADB 26-30:CCDCD 31-35: A 二、多选题 1.以下常量表示中,不正确的是______。 A.10u B.–123 C.016 D.018 E.0010 F.-011 G.0a H.0xa I.0x8f
G. ++a=++b 3.以下能正确计算代数式)2 1(sin 3 12 的 c 语言表达式有 。 A.1/3*sin(1.0/2.0)*sin(1.0/2.0) B.sin(0.5)*sin(0.5)/3 C. pow(sin(0.5),2)/3 D. 1/3.*pow(sin(1/2),2) 4. 已知有声明”int x=1;”则下列表达式中值为 0 的是 。 A.x+=x-=x B.x%(x=x-2) C.x/=x+x D.(x/=4)/2*x 5.设以下表达式中引用的变量均为 int 型,则值等于 7 的表达 式是______。 A.x=y=6,x+y,x+1 B.x=6,x+1,y=6,x+y C.x=y=6,y+=x,++x D.x=(y=6,y++),++x 多选题答案:1. DGJNOPTUV 2. AEFG 3. BC 4. ABCD 5. ACD 三、填空题
C语言自测题
选择题1 C语言中使用的字符常量,其起止标记符是(单引号)。
2语言中使用的字符串常量,其起止标记符是(双引号)。
3在C语言中,一条简单语句的结束符是(分号)。
4在C语言中,每条复合语句的开始标记字符为({)。
5不符合C语言规定的复合语句是({y=10}).6 C语言中的选择类语句有两条,它们是(if和switch ).7在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为(main).8 C语言程序中的基本功能模块为(函数)。
9 一个函数定义所包含的两个部分是(函数头和函数)。
10 一个程序文件开始使用的每条预处理命令,其首字符必须是(#)。
11在一个程序文件中,若要使用#include命令包含一个系统头文件,则此头文件所使用的起止定界符为一对(尖括号)。
12在C语言程序中,单行或行尾注释使用的标记符为(//)。
13在C语言程序中,多行注释使用的结束标记符为(*/).14用于输出表达式值的标准输出函数是(printf())。
15在printf()函数调用的格式字符串中,每个格式符的先导字符为(%)。
16在printf()函数调用的格式字符串中,若使用格式符为“%d”,则对应输出的数据类型为(int)。
17在printf()函数调用的格式字符串中,若使用格式符为“%f”,则对应输出的数据类型为(float).18在printf()函数调用的格式字符串中,若使用格式符为“%5d",则规定对应输出的数据占用的字符位置个数为(5 ).19程序运行中需要从键盘上输入多于一个数据时,若不特别规定分隔符,则输入的各数据之间所使用的分隔符为(逗号或回车)。
20用于从键盘上为变量输入值的标准输入函数是(scanf() )。
21在scanf()函数调用的格式字符串中,每个格式符的先导字符为(%).22在scanf()函数调用的格式字符串中,若使用格式字符串为“%d,%d”,则规定输入的两个数据之间的分隔符为(@ )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
选择题1 C语言中使用的字符常量,其起止标记符是(单引号)。
2语言中使用的字符串常量,其起止标记符是(双引号)。
3在C语言中,一条简单语句的结束符是(分号)。
4在C语言中,每条复合语句的开始标记字符为({)。
5不符合C语言规定的复合语句是({y=10})。
6 C语言中的选择类语句有两条,它们是(if和switch )。
7在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为(main)。
8 C语言程序中的基本功能模块为(函数)。
9 一个函数定义所包含的两个部分是(函数头和函数)。
10 一个程序文件开始使用的每条预处理命令,其首字符必须是(#)。
11在一个程序文件中,若要使用#include命令包含一个系统头文件,则此头文件所使用的起止定界符为一对(尖括号)。
12在C语言程序中,单行或行尾注释使用的标记符为(//)。
13在C语言程序中,多行注释使用的结束标记符为(*/).14用于输出表达式值的标准输出函数是(printf())。
15在printf()函数调用的格式字符串中,每个格式符的先导字符为(%)。
16在printf()函数调用的格式字符串中,若使用格式符为“%d”,则对应输出的数据类型为(int)。
17在printf()函数调用的格式字符串中,若使用格式符为“%f”,则对应输出的数据类型为(float)。
18在printf()函数调用的格式字符串中,若使用格式符为“%5d”,则规定对应输出的数据占用的字符位置个数为(5 )。
19程序运行中需要从键盘上输入多于一个数据时,若不特别规定分隔符,则输入的各数据之间所使用的分隔符为(逗号或回车)。
20用于从键盘上为变量输入值的标准输入函数是(scanf() )。
21在scanf()函数调用的格式字符串中,每个格式符的先导字符为(%)。
22在scanf()函数调用的格式字符串中,若使用格式字符串为“%d,%d”,则规定输入的两个数据之间的分隔符为(@ )。
23C语言源程序文件的扩展名为(c)。
24每个C语言程序文件的编译错误的类型有(2种)。
25每个C程序文件在编译时可能出现有警告性错误,其对应的标识符号为(warning )。
26.C语言中的循环类语句有3条,它们是(for,while,do)。
27.C语言中的跳转类语句有四条,它们是goto,return和(break,continue)。
28.当不需要函数返回任何值时,则所使用的返回类型为(void)。
29.在一个函数定义中,函数头包括的3个部分依次为函数类型、函数名和(参数表)。
30.在一个程序文件的开始,若需要使用一个包含命令包含一个头文件时,则命令标识符为(#include)。
31.在#include预处理命令中,不可以包含(目标文件)。
32.在printf()函数调用的格式字符串中,若使用格式符为“%6.2f”,则规定对应输出的数据占用的字符位置个数为(6)。
33.在printf()函数调用的格式字符串中,若使用格式符为“%6.2f”,则规定对应输出的数据中,其小数部分占用的字符位置个数为(2)。
34.在printf()函数调用的格式字符串中,若使用格式符为“%6.2f”,则规定对应输出的数据中,其整数部分占用的字符位置个数为(3)。
35.在scanf()函数调用的格式字符串中,若使用格式符为“%f”,则对应输入的数据类型为(float)。
36.在scanf()函数调用的格式字符串中,若使用格式符为“%Lf”,则对应输入的数据类型为(double)。
37.每个C程序文件在编译时可能出现有严重性错误,其对应的标识符号为(error)。
38.在VC++环境下,为运行一个程序而建立的工作区文件的扩展名为(dsp)。
39.char类型的长度为(1)。
40.常数120的数据类型为(整型)。
41.一个无符号字符类型的值域范围是(0到255)。
42数值常量0x62的表示方式为(十六进制)。
43在C语言中,表示换行符的转义字符为(\n)。
44字符串"It\'s\'"中包含的字符个数为(5 )。
45执行“printf("%c",'B'+2);”语句后得到的输出结果为(D)。
46要定义a和b为两个整型变量,则使用的定义语句为(int a,b )。
47运算符优先级最高的是(++)。
48下列数值中最小值是(35%3)。
49已知x的初值为15,则下列各表达式中的最小值为(x/=2)。
50若x=5,y=10,则计算y*=++x表达式后,y的值为(60)。
51设x和y均为逻辑值,则x && y为真的条件是(它们均为真)。
52 x<=10的相反表达式为(x>10)。
53函数pow(4,3)的值为(64.0)。
54假定x=4.6,则函数floor(x)的值为(4.0)。
55正弦函数sin48在C语言的表示为(sin(48*3.14159/180))。
56 int类型的长度为(4)。
57常数-4.25的数据类型为(双精度型)。
58一个有符号字符类型的值域范围是(-128到+127)。
59字符串"Its\40\n"的长度为(5)。
60实数340.25对应的规格化浮点数为(3.4025e2)。
61要利用const保留字定义整型常量ABC的值为10,则对应的定义语句为(const int ABC=10)。
62要利用#define命令定义ABC常量的值为100,则对应的命令格式为(#define ABC==10)。
63下列数值中最大值是(28%8)。
64在下面运算符中,优先级最高的是(!)。
65设有语句序列为“int a=12; a+=a*a;”,则执行结束后,a的值为(156)。
66在C语言中,用于比较大小的关系运算符的总数为(6)。
67 x>0 && y<=5的相反表达式为(x<=0 || y>5)。
68假定x是一个逻辑量,则(x && !x)和(x || !x)的值分别为(0和1)。
69假定x=4.6,则函数ceil(x)的值为(5.0)。
70表达式floor(2.3457*100+0.5)/100的值为(2.35)。
71若x的值为5,则执行“if(x>10) x++; else x--;”语句后,x的值为(4)。
72若x的值为-10,则执行“if(x) x++; else x--;”语句后,x的值为(-9 )。
73在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写成语句(if)。
74每个C语言程序文件的编译错误的类型有()。
2. 在switch语句中,每个保留字case后面的表达式必须是()。
常量75当处理问题时的循环次数是确定的,则采用的最合适的循环方式为(for )。
76若需要定义一个符号常量,并且使C语言能够进行类型检查,则应在定义语句的开始使用保留字(const)。
77已知'A'~'Z'的ASCII码为65~90,当执行“int x='C'+5;”语句后x的值为(72)。
78每次先进行循环条件的判断,然后再执行循环体的语句为(for和while)。
79若n的值为5,s的值为0,则执行“while(n>0) s+=n--;”语句后,s的值为(15)。
80流程控制类语句包括的3类语句为(选择、循环、跳转)。
81若i的值为0,则执行“do i++; while(i*i<10);”语句的过程中,循环体被执行的次数为(4)。
82若要结束所在函数的执行过程,返回到调用该函数所在位置,则使用的语句为(return)。
83要结束所在循环语句中循环体的一次执行,则在其中使用的语句为(continue)。
84若x的值为15,则执行“if(x>10) x++; else x--;”语句后,x的值为(16)。
85若x的值为-10,则执行“if(!x) x++; else x--;”语句后,x的值为(-11)。
86若x的值为10,则执行“switch(x%3){case 0: x++; case 1:x++; case 2: x++;}”语句后,x的值为(12)。
87若x的值为10,则执行“switch(x%3){case 0: x++; break; case 1:x++; default: x++;}”语句后,x的值为(12)。
88若n的值为10,则执行“for(i=1;i<n; i++) S;”语句的过程中,表达式i=1共被执行的次数为(1)。
89若n的值为10,则执行“for(i=0;; i++) if(i>n/3) break;”语句后,i的值为(4)。
90若n的值为10,则执行“for(i=1;i<n; i++) S;”语句的过程中,表达式i++共被执行的次数为(n-1 )。
91若n的值为10,则执行“for(i=0;i<n; i++) for(j=i; j<n; j++) S;”语句后,内层循环体S语句的执行总次数为(n(n+1)/2)。
92若n的值为10,则执行“while(n-->0)s+=n;”语句的过程中,循环体被执行的次数为(10 )。
93若n的值为5,s的值为0,则执行“while(n-->0) s+=n;”语句后,s的值为(10 )。
94在下列的语句中,必须以分号作为结束的语句是(do )。
95若n的值为5,s的值为0,则执行“do s+=n--; while(n>0);”语句后,s的值为(15)。
96要结束任一种循环语句或switch语句的执行,则在其中使用的语句为(break)。
97在一个数组中,数组元素a[i]前面的元素个数为(i)。
98假定一维数组的定义为“char a[8];”,则该数组所占用的存储空间的字节数为(8)。
99假定有一个定义语句为“int a[10]={3,4,2,8,6};”,则元素a[3]的值为(8)。
100在下面字符数组的定义语句中,有语法错误的是(char a[10]='5')。
101假定有一个定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[2][1]的值为(0)。
102假定二维数组的定义语句为“int* a[3][5];”,则该数组所占用的存储空间的字节数为(60)。
103使用“typedef int Integer;”语句把标识符Integer定义为一个(整数类型)。
104使用“typedef int ABC[10];”语句把标识符ABC定义为(整型数组类型)。