C语言试卷 带答案

发布 2021-04-23 13:09:28 阅读 5209

浙江科技学院。

2006-2007学年第二学期考试试卷a卷

考试科目 c语言程序设计考试方式闭卷完成时限 2小时

拟题人审核人批准人 2023年 7 月 5 日。

机械、电气、信息、生化、轻工、经管、理学院 2023年级各理工科专业。

说明:1. 应将全部答案写在答卷纸对应的题号处;否则作无效处理;

2. 编程题应写明题号,若答卷纸不够,请写在背面,不要另添卷纸;

3. 考试完成后,必须将试卷与答卷同时交回。

一、判断题(10小题,每题1分,共10分;用√表示正确,用×表示错误)

1.在循环体内使用break语句和continue语句的作用相同。

2.函数返回值的类型最终取决于函数定义时形参的类型。

3.else语句一定要与if语句配对使用,程序中else语句的个数一定小于或者等于if语句的个数。

4.从狭义角度讲,算法是解决一个问题采取的方法和步骤的描述。

5.1/2的结果是0,所以1.0/2的结果也是0。

6.a=b=c=5可以理解为a=(b=(c=5))。

7.假设有语句int a[10]=,p;p=a;则p++完全等价于a++。

8.for(;;等价于while(1)语句。

9.假定int类型变量占用两个字节,若有定义:int x[10]=;则数组x在内存中所占字节数是6。

10.char *sp =;可以写成char *sp="welcome";

二、单选题(16小题,每题1分,共16分)

1.以下数组定义中错误的是:

a) int x[3] =

c) int x[3]=,

2.设fp为指向某二进制文件的指针,且已读到此文件末尾,则函数feof(fp)的返回值为:

a)eofb)null (c) 0d)非0值

3.有以下程序:

main()

int y=10;

while(y--)

printf(“y=%d”,y);

程序执行后的输出结果是:

a) y=0b)y=-1

c) y=1d)while构成无限循环。

4. 若有以下宏定义:

#define n 2

#define y(n) (n+1)*n

则执行语句int z; z=2*n+y(5);后的值是

a) 50b)34c)19d)无定值

5.以下叙述中错误的是:

a)c程序必须由一个或者一个以上的函数组成。

b)函数调用可以作为一个独立的语句存在。

c)若函数有返回值,必须通过return 语句返回。

d)函数形参的值也可以传回给对应的实参。

6.设有如下定义的变量。

union data

int i;

char ch;

float f;

b;则变量b占用内存的字节数是(假设int类型占2个字节,char类型占1个字节,float类型占4个字节):

a) 4b)5c) 6d)7

7.以下叙述中错误的是:

a)c程序中的#include 和#define 行均不是c语句。

b)除逗号运算符外,赋值运算符的优先级最低。

c)c程序中, “j++;是赋值语句。

d)c程序经过编译、连接步骤之后,才能形成一个真正可执行的二进制机器指令文件。

8. 能正确表示a 和b 同时为正或同时为负的逻辑表达式是:

a) (a>=0||b>=0)&&a<0||b<0)

b)(a>=0&&b>=0)&&a<0&&b<0)

c) (a+b>0)&&a+b<=0)

d) a*b>0

9.对于一个正常运行的c程序,以下叙述中正确的是:

a)程序的执行总是从main函数开始,在main函数结束。

b)程序的执行总是从程序的第一个函数开始,在main函数结束。

c)程序的执行总是从main函数开始,在程序的最后一个函数中结束。

d)程序的执行总是从程序中的第一个函数开始,在程序的最后一个函数中结束。

10.设变量x和y均已经正确定义并赋值。以下if语句中,在编译时将产生错误信息的是:

a)if(xb)if(x>y &&y!=0)

c) if(x>0) xd)if(y<0)

else yelse x++;

11.设已有定义:float x; 则以下对指针变量p进行定义且赋初值的语句中正确的是:

a)float *p=1024b)int *p=(float)x;

c)float p=&xd)float *p=&x;

12.有以下程序:

main()

int i,j;

for(i=1;i<4;i++)

for(j=i;j<4;j++)printf(" d*%d=%d ",i,j,i*j);

printf("");

程序运行后的输出结果是:

a)1*1=1 1*2=2 1*3=3b)1*1=1 1*2=2 1*3=3

c)1*1=1d)1*1=1

13.按照c语言规定的用户标识符命名规则,不能出现在标识符中的是:

a)大写字母b)连接符。

c)数字字符d)下划线。

14.设有定义:int k=0;以下选项的四个表达式中与其他三个表达式的值不相同的是:

a)kb)k+=1c)++kd)k+1

15.有以下程序。

main()

char ch=uvwxyz",*pc;

pc=ch;printf(" c",*pc+5));

程序运行后的输出结果是:

a)zb)0

c)元素ch[5]的地址d)字符y的地址。

16.有以下函数:

int fun(char *s)

char * t=s;

while(*t++)

return (t-s);

该函数的功能是:

a)比较两个字符串的大小 (b)计算s所指向字符串占用内存字节的个数。

c)计算s所指字符串的长度 (d)将s所指字符串复制倒字符串t中。

三、基础填空题(14空,每空1分,共14分)

1.以下程序的输出结果是。

#include <>

main()

printf(“%d”,strlen("ibm012"))

2.执行以下程序后的输出结果是。

main()

int a=10;

a=(3*5,a+4);printf("a=%d",a);

3.排序是数据处理中最常见的问题,它是将一组数据按递增或者递减的次序排列。排列的算法很多。常用的算法有法和选择法。

4.设有定义“char web[20];”要将字符串“赋值给字符数组web的语句是。

5.一个函数用于接收一个字符和一个整数,并返回一个字符,函数名为love_c,则该函数的原型说明为。

6.c语言规定,简单变量作函数参数时,他和对应的形参之间的数据传递方式是。

7.判断字符变量x是小写英文字母字符的c语言表达式是。

8.程序中调用了库函数strcmp,必须包含头文件。

9.若x=13,y=25,z=-17,则表达式((p=(x10.下列程序段的的输出结果是。

char a=010,b=10;

printf(" d",a&b<<2);

11.表达式中的类型转换分为两种:一种是隐式数据类型转换;另一种是数据类型转换。

12.数组是顺序存储结构,它的存储分配方式是“静态”的是一种动态的数据结构,它由若干个结点链接而成,与数组最大的不同是结点在内存中并不占据连续的存储空间。

13.有定义: int a[3]=;

则printf("%d",*a+1)+2));语句的输出结果为。

14.以下程序的输出结果是。

main()

int a,b,c=240;

a=c/100%9;

b=(-1)&&1);

printf("%d,%d",a,b);

四、程序填空题(10空,每空2分,共20分)

1.下面程序运行后输入以-1结束的一批整数,输出其中的最大值。

例如 :输入-3 -8 -10 -1后,输出:-3

#include<>

void main()

int max,x;

scanf("%d",&x);

if(x!=-1){

while(__2) _

if(max3) _

printf(" max=%d",max);

1)(a)x=maxb)max =x

c) xd)max=0

C语言试卷带答案

甘肃工业职业技术学院。2008 2009学年度第一学期 c语言程序设计 试卷 a 一 选择题 每小题2分,共40分 1 下列可以正确表示字符型常量的是 a b a c t d 298 2 已经int i float f 正确的表达式是 a int f i b int f i c int f i d ...

C语言模拟试卷2 带答案

单选题 1 执行下面的程序段后,变量k中的值为。s 0 k k s 1 10 a.不定值 b.33 c.30 d.10答案 a 2 设有以下定义 define n 3 define y n n 1 n 则执行语句 z 2 n y 5 1 后,z的值为 2 3 4 5 1 a.出错。b.42c.48 ...

C语言实验 带答案

第7章 c语言实验。c语言实验的基本操作内容包括c语言编程环境visual c 6.0 vc6 的使用 数据类型和输入输出 顺序结构程序设计 分支结构程序设计 循环结构程序设计 数组和字符串 函数的使用 指针的使用 结构体的使用和文件编程。通过这些实验,熟练掌握c语言的基本程序设计方法。实验重点。熟...