C程序设计试卷

发布 2021-04-24 20:08:28 阅读 7794

《c程序设计》试题(a卷)

适用于2011级工科专业本科学生,开卷考试,时间180分钟)

注意:答案请在答题。doc文件中填写,提交时将其重命名为学号+姓名。doc,通过局域网络提交答案。

一、单项选择题(共10题,每题2分,共20分)

1.以下叙述正确的是().

a)在c 程序中,main 函数必须位于程序的最前面。

b)c 程序的每行中只能写一条语句。

c)c 语言本身没有输入输出语句。

d)在对一个c程序进行编译的过程中,可发现注释中的拼写错误。

2. c 语言的if 语句嵌套时,if 与else 的配对关系是()。

a)每个else 总是与它上面的最近的if 配对。

b)每个else 总是与最外层的if 配对。

c)每个else 与if 的配对是任意的。

d)每个else 总是与它上面的if 配对。

3. 能正确表示逻辑关系:"a≥10或a≤0"的c语言表达式是().

a)a>=10 or a<=0 b)a>=0|a<=10

c)a>=10&&a<=0d)a>=10_a<=0

4. c 语言规定:简单变量做实参时,它和对应形参之间的数据传递方式是()。

a)地址传递。

b)单向值传递。

c)由实参传给形参,再由形参传回给实参。

d)由用户指定的传递方式。

5. 下面有关 for 循环的正确描述是 ()

a)for 循环只能用于循环次数已经确定的情况。

b)for 循环是先执行循环体语句,后判断表达式。

c)在 for 循环中,不能用 break 语句跳出循环体。

d)for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来。

6. 假定所有变量均已正确定义,下列程序段运行后x 的值是()。

k1=1;k2=2;

k3=3;x=15;

if(!k1) x--;

else if(k2) x=4;

else x=3;

a)14 b)4 c)15 d)3

7. c 语言中,char 类型数据占()。

a)1个字节 b)2个字节 c)4个字节 d)8个字节。

8. 在c 语言程序中()。

a)函数的定义可以嵌套,但函数的调用不可以嵌套。

b)函数的定义不可以嵌套,但函数的调用可以嵌套。

c)函数的定义和函数调用均可以嵌套。

d)函数的定义和函数调用不可以嵌套。

9. 具有相同类型的指针变量 p 与数组 a,不能进行的操作是().

a)p=a; b)*p=a[0]; c)p=&a[0]; d)p=&a;

10. 下列程序的输出结果为().

main()

int m=7,n=4;

float a=38.4,b=6.4,x;

x=m/2+n*a/b+1/2;

printf("%f",x);

a)27.000000 b)27.500000 c)28.000000 d)28.500000

二、判断对错(共10题,每题1分,共10分)

1. 以下**的运行结果为:2023年1月2日进行期末考试。

#include <>

int main()

struct date

int month;

int day;

int year;

qmks=;

printf(“%d年%月%日进行期末考试”,2. 程序进行编译时,不为形式参数分配存储空间。

3. 用 printf 函数输出一个字符串时,格式字符为%s,输出项可以是此字符串或存放此字符串的数组的数组名。

3. char a=char b=数组a和数组 b 占用的内存空。

间大小不一样。

4. 若有 int i=10,j=2; 则执行完 i*=j+8;后 i 的值为28.

5. c 语言本身不提供输入输出语句,输入和输出操作是由函数来实现的。

6. c 语言规定:在一个源程序中,main 函数的位置必须在最开始。

7. c 程序中的一个变量可以被定义为两个或多个不同的类型。

8. 有数组定义int a[2][2]=,则a[0][1] 的值为0.

9. 函数调用可以出现在执行语句中,但不能出现在表达式中。

10. strcat(s1,s2)函数是将字符串 s1复制到字符串 s2中。

三、程序填空题(共6空,每空4分,共24分)

1、列出所有的个位数为6,且能被3整除的2位数。

main()

int i;

for(【空1】;i<=99;i++)

if(【空2】 &i%3==0)

printf("%3d",i);

2、以下程序的功能是用冒泡法对数组a 进行由小到大的排序。

void fun(int a,int n)

int i,j,t;

for (j=0; 【空1】;j++)

for (i=0; 【空2】;i++)

if(【空3】)

t=a[i];a[i]=a[i+1];a[i+1]=t;}

main()

int i,a[10]=;

空4】;for(i=0;i<10;i++)

printf("%3d",a[i]);

四、程序改错题(共10处错误,每处2分,,共20分)

1、fun 函数的功能是:找出大于 m 的最小素数,并将其作为函数值返回。请改正程序中的错误,使它能得出正确的结果。

注意:不可以增加或删除程序行,也不可以更改程序的结构。

int fun( int m)

int i,k;

for(i=m+1;;i++)

foundfor(k=1;kfound

if(i%k!=0) break;

foundif(kfound

return k;

main()

int n;

scanf("%d",&n);

printf("%d",fun(n));

2、给定程序 中函数 fun 的功能是:求两数平方根之和,作为函数值返回。例如:输入12和20,输出结果是:y = 7.936238。

注意:不可以增加或删除程序行,也不可以更改程序的结构。

#include <>

#include <>

founddouble fun (double *a, *b)

double c;

foundc = sqr(a)+sqr(b) ;

foundreturn a;

main (

double a, b, y;

printf ( enter a & b : scanf ("lf%lf",a, &b );

y = fun (&a, &b); printf ("y = f ", y );

getch();

3、读取7个数(1-50)的整数值,每读取一个值,程序打印出该值个数的*。

注意:不可以增加或删除程序行,也不可以更改程序的结构。

#include ""

main()

int i,a,n=1;

foundwhile(n<7)

doscanf("%d",&a);

foundwhile(a<1&&a>50);

foundfor(i=0;i<=a;i++)

printf("*

printf("");

n++;getch();

五、编写程序(共26分)

1、(共10分)编写函数 fun 将一个数组中的值按逆序存放,并在 main()函数中输出。例如,原来存顺序为8,6,5,4,1。要求改为:1,4,5,6,8。

注意:部分源程序给出如下。请勿改动主函数main 和其它函数中的任何内容,仅在函数 fun 的花括号中填入所编写的若干语句。

#include ""

#define n 5

main()

int a[n]=,i;

for(i=0;iprintf("%4d",a[i]);

printf("");

fun(a,n);

for(i=0;iprintf("%4d",a[i]);

getch();

int fun(int arr,int n)

program

end2、(共16分)编写函数jsvalue,它的功能是:求fibonacci数列中大于t的最小的一个数,结果由函数返回。其中fibonacci数列f(n)的定义为:

f(0)=0,f(1)=1

f(n)=f(n-1)+f(n-2)

最后调用函数writedat()读取50个数据t,分别得出结果且把结果输出到文件中。例如:当t=1000时,函数值为:

1597。部分源程序存在文件中。请勿改动主函数main()和写函数writedat()的内容。

#include <>

void writedat();

int jsvalue(int t)

program

endmain()

int n;

n = 1000;

printf("n=%d,f=%d",n,jsvalue(n));

writedat();

void writedat()

file *in, *out;

int i, n, s;

in = fopen(""r");

C程序设计试卷1C程序设计

c 程序设计试卷。一 选择题。每小题3分,共15分 1 派生类能够直接访问的基类的成员是 a 公有成员 b 保护成员 c 私有成员 d 静态。2 下面是几条定义类的语句,不能被继承的类是 a abstract class figure b class figure c public class fi...

C 程序设计试卷C

面向对象的程序设计c 试卷c 一 填空 每空2分,共20分 1 定义于函数外的变量称为。2 假定class1为一个类,则执行 class1 a 5 b 2 p 3 语句时,自动调用该类构造函数的次数为。3 利用操作符 语句序列p p 1 f p 5 的功能可以由一个语句完成。4 不借助于其他变量交换...

C 程序设计试卷 A

c 程序设计课程期末考试试题 a卷 一判断题 正确打 a 错误打 b 每小题1分,共计20分 1在面向对象的编程中,和数据合并为一个不可分割的对象。2对象是有确定简介且与要处理的问题相关的概念或事物。3每个对象都称为它的类的一个示例。类中的对象具有相同的属性和共同的行为。4多态性是指相同的函数可以在...