《(2020年)(广告传媒)浙江传媒学院C语言程序设计期终(考试)(A)卷》由会员分享,可在线阅读,更多相关《(2020年)(广告传媒)浙江传媒学院C语言程序设计期终(考试)(A)卷(8页珍藏版)》请在金锄头文库上搜索。
1、浙江传媒学院C语言程序设计期终(考试)(A)卷20042005 学年 第 二 学期 任课教师 系 班 姓名 学号 得分 一、单选题(共30分,每小题1.5分)1、 组成C语言程序的是( )A函数 B过程 C子程序 D主程序和子程序2、 编译程序的功能是( )A将汇编语言程序转换为目标程序 B将汇编语言程序转换为高级语言程序C将高级语言程序转换为目标程序D将高级语言程序转换为汇编程序语言3、 C语言中定义某个内部变量时,如果省略了存储类型符,则系统将默认该变量是( )A自动型 B静态型 C寄存器型 D外部参照型4、下列字符序列中,合法的标识符是( )A、S.b,sum,average,_abov
2、eB、class,day,louts_1,2dayC、#md,&12x,momth,student_n1D、D56,r_1,name,_st_15、在C语言中,复合赋值运算 x*=y+8等价于( )。Ax=y+8Bx=x*(y+8) Cx=(y+8)*(y+8)Dx=x*y+86、设有以下宏定义:#define N 3#define Y(n) (N+1)*n)则执行语句: z=2*(N+Y(5+1);后,z的值为( )。A出错 B42 C48 D547、下列表达式中,属于关系表达式的是( )。Ax=60=1 B、x+60*(x60) C、x=60&x=60)8、下列叙述中,正确的一条是( )。
3、A可以对结构体类型和结构类型变量赋值、存取或运算。B结构体变量所占内存长度是各成员所占内存长度之和。C结构一旦定义,系统就给它分配了所需的内存空间。D结构体中成员的数据类型必须是C语言基本数据类型。9、若程序中定义了以下函数double myadd(double a,double b) return (a+b);并将其放在调用语句之后,则在调用之前应该对该函数进行说明,以下选项中错误的说明是( )A double myadd(double x,double y); Bdouble myadd(double,double); B double myadd(double b,double a);
4、D double myadd(double a,b);10、有以下程序void swap1(int c) int t; t=c0;c0=c1;c1=t;void swap2(int c0,int c1) int t; t=c0;c0=c1;c1=t;main( ) int a2=3,5,b2=3,5;swap1(a); swap2(b0,b1);printf(%d %d %d %dn,a0,a1,b0,b1);其输出结果是()A5 3 5 3 B3 5 5 3 C3 5 3 5 D5 3 3 5 11、以下程序段中与语句k=ab?(bc?1:0):0;功能等价的是()Aif(ab)&(bc)
5、k=1; B if(ab)|(bc) k=1 else k=0; else k=0;Cif(ab) k=1; else if(bc) k=1; else k=0;12、设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是() Ascanf(%d,pa); Bscanf(%d,a); Cscanf(%d,&pa); Dscanf(%d,*pa);13、有以下定义#include char a10,*b=a;不能给数组a输入字符串的语句是() Agets(a) Bgets(a0) Cgets(&a0); Dgets(b);14、设有以下语句 typedef struc
6、t Sint g; char h; T;则下面叙述中正确的是() A可用S定义结构体变量 B可以用T定义结构体变量 CS是struct类型的变量 DT是struct S类型的变量15、有以下程序 struc STUchar name10;int num;void f1(struct STU c) struct STU b=LiSiGuo,2042; c=b;void f2(struct STU *c) struct STU b=SunDan,2044; *c=b;main( ) struct STU a=YangSan,2041,b=WangYin,2043; f1(a);f2(&b); pr
7、intf(%d %dn,a.num,b.num); 执行后的输出结果是( )。A2042 2044 B2041 2043 C2041 2044 D2042 204316、有以下程序 #include struct NODE int num; struct NODE *next;main( ) struct NODE *p,*q,*r; int sum=0; p=(struct NODE *)malloc(sizeof(struct NODE); q=(struct NODE *)malloc(sizeof(struct NODE); r=(struct NODE *)malloc(sizeof
8、(struct NODE);p-num=1;q-num=2;r-num=3;p-next=q;q-next=r;r-next=NULL;sum+=q-next-num; sum+=p-num;printf(“%dn”,sum); 执行后的输出结果是( )。 A4 B3 C5 D617、若在fopen函数中使用文件的方式是“rb”,该方式的含义是( )。A为输入(读)打开一个文本文件B为输出(写)打开一个二进制文件C为输入(读)打开一个二进制文件D向二进制文件尾增加数据18、若有以下定义和语句:int a10=1,2,3,4,5,6,7,8,9,10,*p=a;则不能表示 a数组元素的表达式是(
9、 )。Aa*p Ba10 C*aDap-a19、有以下程序 void sum(int *a) a0=a1; main( ) int aa10=1,2,3,4,5,6,7,8,9,10,i;for(i=2;i=0;i-) sum(&aai); printf(%dn,aa0); 执行后的输出结果是( ) A3 B4 C2 D120、语句int (*p)( )的含义是( )Ap是指针函数 Bp是指针变量,指向一个整型数据Cp是一个指向一维数据的指针变量Dp是一个指向函数的指针变量,该函数的返回值是一个整型数据二、填空题(共20题,每空1分)1、在C语言中,定义整型变量i的语句是 ;定义含有100个元
10、素的整型数组A语句是 ;定义p为指向结构类型student的指针变量的语句是 ;定义f为带回整型函数值的函数的语句是 ;定义一个大小为20的字符数组arr,应写为 。2、申请一个结构体student类型的结点,将首地址保存在struct student指针变量new中的语句为 ;设链表结构中指针域为next,其中p为链表中的一个结点,在p后插入一个q结点的语句是 ;与 ;3、有以下语句段 int n1=10,n2=20; printf( ,n1,n2);要求按以下格式输出n1和n2的值,每个输出行从第一列开始,请填空。n1=10;n2=20;4、 函数fun的功能是计算xndouble fun(double x,int n) int i; double y=1;for(i=1;i10?(53?4:3):4的值为 。9、以下函数用来求出两个整数之和,并通过形参将结果传回,请填空。 void func(int x, int y, z) *z=x+y;10、条件“20x30或x-100” 的C语言表达是为 。11、已知字符A的ACSII码值为65,以下语句的输出结果是 。char ch=B;printf(%c %dn,ch,ch);12、表达式a | b & !c 的值为 。13、C语言中,对于循环结构,有do-while语句