2017年韩山师范学院本科插班生《C语言程序设计》试卷.doc_第1页
2017年韩山师范学院本科插班生《C语言程序设计》试卷.doc_第2页
2017年韩山师范学院本科插班生《C语言程序设计》试卷.doc_第3页
2017年韩山师范学院本科插班生《C语言程序设计》试卷.doc_第4页
2017年韩山师范学院本科插班生《C语言程序设计》试卷.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

(A卷)第 10 页 共 10 页2017年韩山师范学院本科插班生考试试卷计算机科学与技术 专业 高级语言程序设计 试卷 (A卷)一、填空题(每空1分,共10分)1一个C程序的执行是从本程序的 函数开始。2结构化程序的三种基本结构为顺序结构、_、_。3能表示“整型变量x的绝对值小于5”的C语言表达式是_ (不得使用系统函数)。4在C语言中,当表达式值为0时表示逻辑值“假”,当表达式值为_时表示逻辑值“真”。5在位运算中,操作数每左移一位(无溢出),其结果相当于操作数_以2。6设有定义FILE *fp; 则关闭fp对应文件的操作语句是 。7在C程序中,根据数据的组织形式可以可分为_文件和_文件。8若有定义char s=n123; 则strlen(s)的值为_;sizeof(s) 的值为_。二、单项选择题(每小题1.5分,共30分)题号12345678910答案题号11121314151617181920答案1C语言中的标识符只能由字母、数字和下划线,且第一个字符( )。A.必须为字母 B.必须为下划线 C.必须为字母或下划线 D. 可以是字母或数字或下划线2设a,b为整型变量,以下合法的表达式为( )。A. b=a/2B. b=*a+2C. b+a=2D. b=a%2.53以下选项中能表示合法常量的是A整数:1,200B实数:1.5E2.0C字符斜杠:D字符串:0074若有a=4,b=3,c=5,则表达式abc的值为( )。A. 1 B. 表达式不合法 C. 0 D. 25下列关于指针变量赋空值的说法错误的是A.当赋空值的时候,变量指向地址为的存储单元B.赋值语句可以表达为变量名0;C.赋值语句可以表达为变量名0;D.一个指针变量可以被赋空值6下列程序的运行结果是( )。#include void main( ) int i=1,j=1,k=2; if(j+k+)&i+) printf(%d,%d,%dn,i,j,k);A1,1,2 B2,2,1 C2,2,2 D2,2,37下列不会构成无限循环的语句或语句组是( )。An=0; B n=0; do +n; while(n=0); while(1) n+; Cn=l0; Dfor(n=0, i=l; ; i+) n+=i; while(n); n-; 8若要定义一个具有5个元素的整型数组,以下错误的定义语句是( )。Aint a5=0;Bint b=0,0,0,0,0;Cint c2+3;Dint i=5,di;9有以下程序main() int a44=1,2,3,4,5,6,7,8,3,9,10,2,4,2,9,6; int i,s=0; for(i=0;iage C(*p).age D *p.age15语句while(!E);中的表达式!E等价于( )。AE0 B E!l C E!0 DE116若变量已正确定义,语句“if(ab) k=0; else k=1;”和( )等价。 Ak=(ab)?1:0; Bk=ab;Ck=a=b; Da=b ? 0 : 1;17若有以下定义,则对a数组元素的正确引用是( )。int a5,*p=a;A. *&a5 B. a+2 C. *(p+5) D. *(p+2)18有如下语句 int a=10,b=20,*p1,*p2; p1=&a; p2=&b;如图1所示; 若要实现图2所示的存储结构,可选用的赋值语句是( )。1020p1ap2b1020p1ap2b图1图2 A. *p1= *p2; B. p1=p2; C. p1= *p2; D. *p1=p2;19下面程序的运行结果是( )。#include “stdio.h”void main( ) int j,i,k=0; for (j=50;j=60;j+) if (!( k%10)printf(“n”); for (i=2;i=j-1) printf(“%d”,j); k+; A5359 B5953 C3595 D953520以下可作为函数fopen中第一个参数的正确格式是( )。Aa:userfiles.tet B a:userfiles.tet C“a:userfiles.tet” D a: userfiles.tet三、阅读程序,将运行结果写到各题右侧的空白处(每小题4分,共20分)1int x=1,y=0;switch(x)case 1:switch(y)case 0:printf(“#1#n”);break; case 1:printf(“*2*n”);break; case 2:printf(“$3$n”);2int fun(int x,int y,int * p,int * q) *p=x*y;*q=x/y;void main( )int a,b,c,d;a=4;b=3;fun(a,b,&c,&d);printf(“%d,%dn”,c,d);3阅读下列程序,执行后的结果是include “stdio.h”union bb long x2int y4;char z8;atx;struct aa long x2; int y4;char z8;stx;main( ) printf(“union bb=%d,struct aa=%dn”,sizef(atx),sizef(stx);4阅读下列程序,执行后的结果为 include “stdio.h” void main( ) char str =“tomeetme”, str1 “toseeyou”; char *p=str,*p1=str1; int i; for(i=0;i7;i+) if(*(p+i)= =*(p1+i)putchar(*(p+i); printf(“n”);四、阅读程序或程序段,填空(每小题4分,共20分)1 下面fac函数的功能是计算具有上面式子功能的递归函数。 float fac(int n,float x) float f; if(n=0) printf(“n=0,dataerror!”); else if( ) f=sqrt(1+x); else f= ; return(f); 2 下面程序的功能是计算100至500之间有多少个数其各位数字之和是8。#include stdiohvoid main() int i,s,k,count0; for(i100;i500;i+) s0; ki; while( ) ss+k10; k ; if(s! 8) continue; else count+; printf(”d”,count); 3 下面的程序读入数组元素值,然后以每行4个元素的形式输出。#define N 20void main() int aN,i;for (i=0; iN;i+) scanf(“%d”, );for (i=0; iN;i+) if ( ) printf(“n”); printf(“%8d”, ai); printf(“n”);4下面程序的功能是:使一个字符串按逆序存放,请填空#include void main() char m,str60; int i,j; printf(“input a string:”); gets(str); for(i=0,j=strlen(str)-1; ;i+,j-) m=stri; ; strj=m; puts(str); 五、编

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论