C语言程序设计期末考试复习题及答案[1]

合集下载

C语言程序设计期末复习题及答案(1)

C语言程序设计期末复习题及答案(1)
int i, k, num;
gets(str1); gets(str2);
i=strlen(str1);
k=strlen(str2);
num=______? ____: ____;
printf("%d\n", num);
}
2. 下面程序是计算字符串中实际字符的个数,即实现和字符串处理函数strlen相同的功能,补充空白处的程序。
printf("%d\n",n[i][j]);
}
程序运行输出结果是________________________。
四、程序阅读填空,根据要求补充完整程序(本题共10分)。
1.下面程序的功能是输出两个字符串中较短串的长度。请填空。
#include <stdio.h>
void main( )
{ char str1[20], str2[20];
六、程序阅读分析(本大题共20分,每小题5分,其中,1,2,4小题答案必须完全一致,否则均不得分。)
1.结果是: -5 -12 -7
2.程序输出结果: 5,4,6
3. 分析以下程序:
字符串s1和s2相连接(或者:字符串s2 加入到字符串s1 尾部)。
写出主要意思即可得分。
4. 结果是____6___。
#include<stdio.h>

(完整版)C语言程序设计期末考试复习题及答案

(完整版)C语言程序设计期末考试复习题及答案
!((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) 11B) 13C) 12D) 14
(4)语句while(!e);中的条件!e等价于 (A)
8.有以下程序(a)
main()
{ char a='a',b;
printf("%c,",++a);
printf("%c\n",b=a++);}
程序运行后的输出结果是a)b,bB)b,cC)a,bD)a,c9.有以下函数定义:(c)
void fun(int n, double x) { …… }
若以下选项中的变量都已正确定义并赋值,则对函数 fun 的正确调用语句是
for(i=0;i<SIZE;i++) scanf("%d",①);i=0;j=②;
while(i<j)
{t=a[i];③;④;i++;j⑤}for(i=0;i<SIZE;i++) printf("%3d",a[i]);

C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题(含答案)

一、选择题(共20题,每题2分,共40分)

在每个题目给出的选项中选出一个正确答案,并将其序号填入题前括号内。

1. 下列关于C语言标准库的说法,错误的是:

A. C语言标准库提供了多个头文件,如<stdio.h>、<stdlib.h>等。

B. C语言标准库中包含了很多有用的函数和变量。

C. C语言标准库的函数和变量的声明保存在头文件中。

D. C语言标准库中的函数和变量可以直接使用,无需任何声明和定义。

2. 下面哪个选项是正确的整型常量表示法?

A. 3.14

B. 'A'

C. 3.0E8

D. 0xFC

3. 下面代码中,输出结果是多少?

```c

#include <stdio.h>

int main() {

int x = 3, y = 4, z;

z = (x++) + (++y);

printf("%d\n", z);

return 0;

}

```

A. 7

B. 8

C. 9

D. 10

4. 下面哪个选项是正确的声明一个指向整型数据的指针?

A. int *ptr;

B. int ptr;

C. *int ptr;

D. ptr *int;

5. 下面哪个选项是正确的函数声明?

A. int add(int a, int b);

B. int add(int a, b);

C. add(int a, int b);

D. add(int a, b);

(略去其他题目...)

二、编程题(共2题,每题30分,共60分)

请编写符合题目要求的程序。

C语言程序设计期末考试复习题及答案[]

C语言程序设计期末考试复习题及答案[]

C语言考试期末考试复习题及答案

一、选择题

(1) 一个C语言程序总是从(C )开始执行

A) 书写顺序的第一个函数

B) 书写顺序的第一条执行语句

C) 主函数main()

D) 不确定

(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是

( D )

A) ‘x’&&’y’B) x||y+z&&y-z C) x<=y

D) !((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)))。

大学《C语言程序设计》期末考试试卷及参考答案 1

大学《C语言程序设计》期末考试试卷及参考答案 1

《C语言程序设计》期末考试试卷参考答案一、判断题(10分)1、C语言是一种结构化程序设计语言。(对)2、在标准C中,整型变量与字符变量是可以通用的。(对)3、在标准C中,“=”是判断两个数是否相等。(错)4、在if语句中,else前一个语句可不加“;”。(错)5、在C语言中操作系统是以文件为单位对数据进行管理的。(对)6、在C语言中,定义结构体变量时可以省略关健字struct。(错)7、内存单元的地址与内存单元中的内容是两个相同的内容。(错)8、在标准C语言中,在定义带参数的宏时也要定义参数的类型。(错)9、在标准C语言中,所有函数在调用之前都要进行声明。(错)10、在标准C语言中,数组的下标必须是常量,不允许是表达式。(错)二、填空题(30分,,1到10题1分1空,10到18题2分1空)1. 设float x=2.5,y=4.7; int a=7;,则表达式 x+a%3*(int)(x+y)%2/4 的值为 (3.4 ) 4. 如定义语句为“char a[]="windows ",b[]="95";”,语句"printf("%s",strcat(a,b));"的输出结果为 ( windows95 ) 。5. 宏定义语句 #define f(c) c>='A'&&c<='Z' 的引用 f(x[i])置换展开后为 (x[i]>='A'&&x[i]<='Z' ) 。6.int i=234,j=567; 函数printf("%d%d\n",i,j) 的输出结果是 ( 234567 ) 7. 文件打开方式为"r+",文件打开后,文件读写位置在 ( 文件的首记录前 ) 。8、为了建立如图所示的存储结构(即:每个结点含三个域,data是数据域,Ltree是指向左子树结点的指针域,Rtree是指向右子树结点的指针域),请填空.struct TREE {char data; Ltree data Rtree__( char *Ltree ; char *Rtree)__________; }node; ┏━━┯━━┯━━┓┃ │ │ ┃┗━━┷━━┷━━┛9. 求1至100的和,写作 for(s=0,i=1; ( i<=100 ) ;++i) s+=i;10. 定义a为长度为10的字符串、同时为字符串赋初值"continue"的语句为 ( char[10]="continue" ;)。11. p为本金,r为1年期存款年利率,计算存款p元5年到期时本金、利息总和(计复利)的算术表达式为 __p*pow( r+1, 5 )__ 。12. 若 s='d',执行语句 s=(s>='a'&&s<='z')?s-32:s; 字符变量s的值为 ___'d'_____ 。13. 函数change定义如下,若a=10、b=5,执行 change(a,b)后a、b的值分别为 __ 10,5_____ 。void change(int a,int b) { int t=0; t=a; a=b; b=t;}定义一个带参数的宏,若变量中的字符为大写字母则转换成小写字母___#define utol(ch) ch=ch>='A'&&ch<='Z'?ch-'a'+'A':Z ___

C语言程序设计期末复习题及参考答案

C语言程序设计期末复习题及参考答案

C语言程序设计期末复习题及参考答案

1. 若变量a的值为10,b的值为20,则表达式a++ + ++b的结果是多少?

答案:32

解析:在表达式a++ + ++b中,a++表示先使用变量a的值,然后再对a的值进行自增操作;++b表示先对变量b的值进行自增操作,然后再使用变量b的值。因此,a++ + ++b相当于10 + 21,结果为32。

2. 字符串连接函数strcat()的原型和功能是什么?

答案:strcat()函数的原型为char *strcat(char *str1, const char *str2),其功能是将字符串str2追加到字符串str1的末尾,并返回拼接后的字符串起始地址。

3. 请简述switch语句的用法及其与if语句的异同点。

答案:switch语句用于根据不同的情况执行不同的代码分支。其语法结构为:

```c

switch (表达式)

{

case 值1:

代码块1;

break;

case 值2:

代码块2;

break;

...

default:

默认代码块;

break;

}

```

switch语句与if语句的异同点如下:

- 相同点:都用于根据条件执行不同的代码分支;

- 不同点:

1)switch语句的条件表达式只能是整型或字符型,而if语句的条件表达式可以是任意的关系表达式;

2)switch语句针对的是多个离散的取值,if语句则根据条件的真假执行对应的代码;

3)switch语句执行完一个匹配的分支后会跳出整个switch语句,而if语句在执行条件为真的分支后会继续执行后续的代码。

4. 请写出一个函数,实现将字符串中的大写字母转换为小写字母的功能。

C语言程序设计期末考试试题(含答案)

C语言程序设计期末考试试题(含答案)

C语言程序设计

期末考试一试题及其答案

一、单项选择题(本大题共20 题,每题 2 分,共 40 分)

1、以下不是 C语言的特色的是( )

A、 C 语言简短、紧凑

B、能够编制出功能复杂的程序

C、 C 语言能够直接对硬件进行操作

D、 C语言移植性好

2、以下不正确的C语言表记符是( )

A、 ABC

B、 abc

C、 a_bc

D、 ab.c

3、一个 C 语言程序是由( )

A、一个主程序和若干子程序构成

B、函数构成

C、若干过程构成

D、若干子程序构成

4、一个算法应当拥有“确立性”等 5 个特征,对此外 4 个特征的描绘中错误的选项是 ()

A、有零个或多个输入

B、有零个或多个输出

C、有穷性

D、可行性

5、设变量 a 是整型, f 是实型, i 是双精度型,则表达式 10+‘ a’值+i*f的数据种类为 ( )

A、 int

B、 float

C、 double

D、不确立

6、在 C 语言中, char 型数据在内存中的储存形式是( )

A、补码

B、反码

C、源码

D、ASCII码

7、有以下程序,输入数据:12345M678<cR>后(<CR>表示回车),x 的值是()。

#include<stdio.h>

main(){

int x;

float y;

scanf("%3d%f",&x,&y);

}

A、 12345

B、 123

C、 45

D、 345

8、如有以下定义int a,b; float x,则正确的赋值语句是( )

A、 a=1,b=2

B、 b++;

C、 a=b=5

D、 b=int(x);

9、以下程序的履行结果是( )

《C语言程序设计》期末复习题及答案

《C语言程序设计》期末复习题及答案

《C语言程序设计》期末复习题

一、选择题

1.能将高级语言编写的源程序转换成目标程序的是( C ) A.链接程序 B. 解释程序 C. 编译程序 D.编辑程序

2.设a为整型变量,则不能正确表达数学关系10<a<15的C语言表达式是( A )。

A. 10

B. a==11||a==12||a==13||a==14

C. a>10&&a<15

D.!(a<=10)&&!(a>=15)

3.当调用函数时,实参是一个数组名,则向函数传送的是( B )。

A. 数组的长度

B. 数组的首地址

C. 数组每一个元素的地址

D. 数组每个元素中的值

4.执行下面的程序段后,k的值是(B) int k=1,n=325; do { k*=n%10;n/=10;}while(n);

A. 3

B. 30

C. 523

D. 325

5.若有以下数组说明,则i=6;a[a[i]]元素数值是(A)。 int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};

A.3

B.8

C.6

D.5

6.若变量已正确定义,要求程序段完成求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);

7.若有:int a[][3]={{1,2,3},{4,5},{6,7},{8}}; 则数组a的第一维的大小为: ( C ) A. 12 B. 3 C. 4 D.无确定值

C语言程序设计期末复习题1

C语言程序设计期末复习题1

一、单项选择题

1.完成C源文件编辑后、到生成执行文件,C语言处理系统必须执行的步骤依次为( )

A.连接、编译

B. 连接、运行

C. 编译、运行

D. 编译、连接

2.下列说法正确的是()

A.一个c语言程序并非总是从主函数位置开始执行的

B.一个c语言程序有且只有一个主函数

C.函数可以嵌套定义,不可以嵌套调用

D.程序函数的位置不可以任意

3.下面是合法C语言标识符的是()

A. 2A_K;

B. _M+N;

C. –M3;

D. AC_2;

4.下列格式符中,可以用于控制字符输出的是( )

A. %d

B. %f

C. %o

D. %c

5.设x、y、z和k都是int型变量,则执行表达式x=(y=4,z=16,k=30)后,x的值是( )

A. 4;

B. 16;

C. 30;

D. 50;

6.执行语句“for(i=1,s=0;i<=5;i++) s+=i;”后,变量s、i的当前值是( )

A. 10,5

B. 15,6

C. 15,5

D. 10,6

7.若有定义int x,*p;,则以下正确的赋值表达式是( )

A. p=x;

B. p=&x;

C. *p=&x;

D. *p=*x;

12.下列说法正确的是()

A.一个c语言程序并非总是从主函数位置开始执行的

B.一个c语言程序有且只有一个主函数

C.函数可以嵌套定义,不可以嵌套调用

D.程序函数的位置不可以任意

21.有如下程序的输出结果是()

main( )

{int y=3,x=3,z=1;

printf(“%d %d\n”,(++x,y++),z+2);

}

A 3 4

B 4 2

C 4 3

D 3 3

C语言程序设计期末考试复习题及答案

C语言程序设计期末考试复习题及答案

C语言考试期末考试复习题及答案

一、选择题

(1) 一个C语言程序总是从(C )开始执行

A) 书写顺序的第一个函数

B) 书写顺序的第一条执行语句

C) 主函数main()

D) 不确定

(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是 ( D )

A) ‘x’&&’y’B) x||y+z&&y-z C) x<=y

D) !((x

(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 )

C语言程序设计期末考试试卷及答案1

C语言程序设计期末考试试卷及答案1

C语言程序设计期末考试试卷及答案

一、单项选择题

1. ___D___是合法的用户自定义标识符。

A、b-b

B、float

C、<fr>

D、_isw

2. 若变量已正确定义并赋值,表达式___B___不符合C语言语法。

A、a*b/c;

B、3.14%2

C、2, b

D、a/b/c

3. ___C__是不正确的字符常量。

A、'n'

B、'1'

C、"a"

D、'101'

4. 在C 程序中,用___B__表示逻辑值“真”。

A、1

B、非0 的数

C、非1 的数

D、大于0 的数

5. __C____把x、y定义成float类型变量,并赋同一初值3.14。

A、float x, y=3.14;

B、float x, y=2*3.14;

C、float x=3.14, y=x=3.14;

D、float x=y=3.14;

6. 若变量已正确定义,表达式___C___的值不是2。

A、2&3

B、1<<1

C、a==2

D、1^3

7. 若变量已正确定义,语句“if(a>b) k=0; else k=1;”和__C____等价。

A、k=(a>b)?1:0;

B、k=a>b;

C、k=a<=b;

D、a<=b ? 0 : 1;

8. 设变量定义为“int a, b;”,执行下列语句时,输入_D____,则a和b的值都是10。

scanf("a=%d, b=%d",&a, &b);

A、10 10

B、10, 10

C、a=10 b=10

D、a=10, b=10

9. 下列程序的输出结果是__D___。

fun(int a, int b, int c)

c语言程序设计期末考试复习题及答案

c语言程序设计期末考试复习题及答案

C语言考试期末考试复习题及答案

一、选择题

(1) 一个C语言程序总是从(C )开始执行

A) 书写顺序的第一个函数

B) 书写顺序的第一条执行语句

C) 主函数main()

D) 不确定

(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是 ( D )

A) ‘x’&&’y’B) x||y+z&&y-z C) x<=y

D) !((x

(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 )

C语言程序设计期末考试复习题及答案

C语言程序设计期末考试复习题及答案

C语言考试期末考试复习题及答案一、 选择题(1) 一个C语言程序总是从(C )开始执行A) 书写顺序的第一个函数B) 书写顺序的第一条执行语句C) 主函数main( ) D) 不确定(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是 ( D )A) ‘x’&&’y’ B) x||y+z&&y-z C) x<=y D) !((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) 该结构体中所有成员变量所需存储空间的总和 1. 用C语言编写的代码程序( B )A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行  2. C语言中用于结构化程序设计的三种基本结构是( A )A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue 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!的计算,不能完成此操作的程序段是(

C语言程序设计期末考试复习题及答案

C语言程序设计期末考试复习题及答案

C语言考试期末考试复习题及答案

一、选择题

(1)一个C语言程序总是从()开始执行

A)书写顺序的第一个函数

B)书写顺序的第一条执行语句

C)主函数main()

D)不确定

(2)设int x=3,y=4,z=5,则下列表达式中的值为0的是( )

A) ‘x’&&’y’B) x||y+z&&y-z C) x<=y D) !((x<y)&&!z||1)

(3)执行以下程序段后,i的值是( )

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) e==0 B)e!=1 C) e!=0 D) 运行时出错

(5)用int a[4]={1,2}; 对数组进行初始化后,数组元素a[3]的值是( )

A) 随机值B) 0 C) 1 D) F

(6)在执行char str[10]=“china\0”;strlen(str)的结果是( )

A)5 B) 6 D) 7 D 9

(7)若有定义,char *p=”computer”; 则语句printf(“%c”,*(p+2))运行结果是( )

A) 随机值B) m C)o D) omputer

(8)在以下函数调用语句中

fun1(x,10,(x,10),fun2(y,10,(y,10)));

函数fun1参数的个数为( )

A) 8 B) 4

C语言程序设计期末考试试卷一及答案

C语言程序设计期末考试试卷一及答案

模拟试卷一

(时间90分钟,满分100分)

一、选择题(1~10、21—40每小题2分,11~20每小题1分,共70分)

1.下列叙述中正确的是( )。

A.栈是“先进先出”的线性表

B.队列是“先进先出”的线性表

C.循环队列是非线性结构

D.有序链表既可以采用顺序存储结构,也可以采用链式存储结构

2.支持子程序调用的数据结构是( )。

A.栈B.树C.队列D.二叉树

3.某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是( )。

A. 10 B.8 C.6 D.4

4.下列排序方法中,最坏情况下比较次数最少的是( )。

A.冒泡排序B.简单选择排序

C.直接插入排序D.堆排序

5.软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于应用软件的是( )。

A.编译软件B.操作系统

C.教务管理系统D.汇编程序

6.下面叙述中错误的是( )。

A.软件测试的目的是发现错误并改正错误

B.对被调试的程序进行“错误定位”是程序调试的必要步骤

C.程序调试通常也称为Debug

D.软件测试应严格执行测试计划,排除测试的随意性

7.耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是( )。

A.提高耦合性降低内聚性有利于提高模块的独立性

B.降低耦合性提高内聚性有利于提高模块的独立性

C.耦合性是指一个模块内部各个元素间彼此结合的紧密程度

D.内聚性是指模块间互相连接的紧密程度

8.数据库应用系统中的核心问题是( )。

A.数据库设计B.数据库系统设计

C.数据库维护 D.数据库管理员培动

9.有两个关系R,S如下:

《C语言程序设计》复习题有答案1

《C语言程序设计》复习题有答案1

《C语言程序设计》复习题有答案1

《C语言程序设计》复习题

一、填空题

1、 C 语言的源程序必须通过编译和链接后,才能被计算机执行。

2、 C 语言的源程序必须通过编译和连接后,才能被计算机执行。

3、C语言中的标示符可分为关键字、拥护标示符和预定义标识符3类。

4、C语言中的标示符可分为关键字、用户标识符和预定义标示符3类。

5、在C语言中,用关键字 float 定义单精度实型变量。

6、在C语言中,用关键字 double 定义双精度实型变量。

7、在C语言中,用关键字 char 定义字符型变量。

8、在C语言的赋值表达式中,赋值好左边必须是变量。

9、设C语言中的一个int型数据在内存中占2个字节,则int型数据的取值范围为

-32768--32768 。

10、若有定义语句:int s=6;则表达式s%2+(s+1)%2的值为 1 。

11、若a是int型变量,且a的初值为6,则执行表达式a+=a-=a*a后a的值为

-60 。

12、若a是int型变量,则执行表达式a=25/3%3后a的值为 2 。

13、在程序运行过程中,其值不能被改变的量称为常量。

14、C程序中定义的变量,代表内存中的一个存储单元。

15、C语言中,int类型数据字符占内存 2 个字节。

16、C语言中,char类型数据占内存 1 个字节。

17、C语言的字符常量是用单引号括起来的一个字符。

18、语句printf(“\n”);的作用是换行输出。

19、10/3的结果是3 。

20、10%3的结果是 1 。

21、C语句的最后用;结束。

22、要使用putchar函数,在#include命令行中应包含的头文件是#include。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C语言考试期末考试复习题及答案

一、选择题

(1) 一个C语言程序总是从(C )开始执行

A) 书写顺序的第一个函数

B) 书写顺序的第一条执行语句

C) 主函数main()

D) 不确定

(2) 设int x=3,y=4,z=5,则下列表达式中的值为0的是 ( D )

A) ‘x’&&’y’B) x||y+z&&y-z C) x<=y

D) !((x

(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) 4

C) 5 D) 编译出错

(9) 在说明一个结构体变量时系统分配给它的存储空间是( D )

A)该结构体中第一个成员变量所需存储空间 B) 该结构体中最后一个成员变量所需存储

空间

C)该结构体中占用最大存储空间的成员变量所需存储空间D) 该结构体中所有成员变量所需

存储空间的总和

1. 用C语言编写的代码程序( B )

A)可立即执行 B)是一个源程序 C)经过编译即可执行 D)经过编译解释才能执行

2. C语言中用于结构化程序设计的三种基本结构是( A )

A)顺序结构、选择结构、循环结构 B)if、switch、break C)for、while、do-while D)if、for、continue

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,c

9.有以下函数定义:(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) B)012 C) D)120

相关文档
最新文档