高级语言程序设计A试卷_第1页
高级语言程序设计A试卷_第2页
高级语言程序设计A试卷_第3页
高级语言程序设计A试卷_第4页
高级语言程序设计A试卷_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

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

文档简介

共8页第8页学院:专业班级:姓名:学号:装订线内不要答题浙江农林大学2012-201学院:专业班级:姓名:学号:装订线内不要答题课程名称:高级语言程序设计课程类别:必修考试方式:闭卷注意事项:1、本试卷满分100分。2、考试时间120分钟。题号一二三四五六七八得分得分评阅人得分一、单项选择题(在每小题的四个备选答案中,选出一个正确答案,并将正确答案的选项填在题后的括号内。每小题1分,共20分)得分C语言源程序名的后缀是(B)。

A、.exeB、.cC、.objD、.doc一个C程序的执行是从(B)。 A、本程序的第一个函数开始,到本程序文件的最后一个函数结束B、本程序的main函数开始,到main函数结束 C、本程序的main函数开始,到本程序文件的最后一个函数结束 D、本程序的第一个函数开始,到本程序main函数结束下列可在C程序中用做用户标识符的是(C)。A、structB、#inC、str2D、3abc设有以下语句charch1,ch2;scanf(”%c%c”,&ch1,&ch2);若要为变量ch1和ch2分别输入字符a和b,正确的输入形式应该是(B)。A、a和b之间用逗号间隔B、a和b之间不用有任何间隔符C、a和b之间用回车间隔D、a和b之间用空格间隔下列程序的输出结果是(A)。voidmain(){inta=5,b=7,c;c=b/a;printf("%d\n",c);}A、1B、0C、1.4D、不确定值若有数学表达式,则正确的C语言表达式是(B)。A、3ae/bcB、3*a*e/b/cC、3*a*e/b*cD、3*ae/bc以下程序片段(B)。

voidmain()

{intx=0,y=0;if(x==y)

printf(“***”);else

printf(“###”);

}

A、有语法错误,不能通过编译B、输出:***

C、可以编译,但不能通过连接,所以不能运行D、输出:###if(x)等价于if(B)A、x==0 B、x!=0C、x==1 D、x!=1以下程序输出结果是(C)。voidmain(){intx=1,y=0,a=0,b=0;

switch(x){

case1:switch(y){

case0:a++;break;

case1:b++;break;

}

case2:a++;b++;break;

case3:a++;b++;}

printf(“a=%d,b=%d”,a,b);}

A、a=1,b=0B、a=1,b=1C、a=2,b=1D、a=2,b=2以下描述中正确的是(C)。while,do-while,for循环中的循环体语句都至少被执行一次do-while循环与while循环是完全等价的for循环中的循环体语句中,可以包含多条语句,但必须用花括号括起来,即以复合语句的形式出现do-while循环中,根据情况可以省略while若k是int类型变量,且有以下for语句for(k=-1;k<0;k++)printf(****\n”);下面关于语句执行情况的叙述中正确的是(A)。A、循环体执行一次B、循环体执行两次C、循环体一次也不执行D、构成无限循环下面程序的输出结果是(A)。voidmain(){charch[7]=”12ab56”;

inti,s=0;

for(i=0;ch[i]>’0’&&ch[i]<=’9’;i+=2)

s=10*s+ch[i]-‘0’;

printf(“%d\n”,s);}A、1B、1256C、12ab56D、ab设有两个字符数组分别为s1和s2,并已正确赋值,若为了判断s1和s2是否相等,应当使用(D)。A、if(s1==s2)B、if(s1=s2)C、if(strcpy(s1,s2))D、if(strcmp(s1,s2)==0)在C语言程序中,以下说法正确的是(B)。A、函数的定义可以嵌套,但函数的调用不可以嵌套B、函数的定义不可以嵌套,但函数的调用可以嵌套C、函数的定义和函数的调用都不可以嵌套D、函数的定义和函数的调用都可以嵌套以下正确的函数形式是(A)。A、doublefun(intx,inty){doublez;z=x+y;returnz;}C、intfun(intx,y){intz;returnz;}B、doublefun(x,y){intx,y;doublez;z=x+y;returnz;}D、doublefun(intx,inty)doublez;z=x+y;returnz;以下程序运行的结果为(B)。#include<stdio.h>voidswap(intx,inty){ inttemp; temp=x; x=y; y=temp;}voidmain(){ inta=3,b=5; if(a<b)swap(a,b); printf("\n%d,%d\n",a,b);}A、5,3B、3,5C、3,3D、5,5对于以下自定义函数f,调用f(5),其返回值是(C)。#include<stdio.h>intf(intn){ if(n)returnf(n-1)+n; elsereturnn;}A、5 B、10 C、 15 D、以上都不正确以下叙述中,不正确的说法是(D)。A、在不同函数中可以使用相同名字的变量B、形式参数是局部变量C、在函数内定义的变量只在本函数范围内有定义D、全局变量和局部变量不可以同名设有如下定义语句inta[]={2,4,6,8},*p=a;以下选项中,表达式的值为6的是(A)。A、*(p+2)B、p+2C、*p+2D、*p=*p+2设有结构体定义如下:structstudent{intnum;charname[20];floatscore;}如果有定义structstudentstud1;则对其中的结构分量num正确的引用是________。A、structstudent.num=101; B、struct.stud1.num=101;C、stuct.stud1.num=101; D、stud1.num=101;得分得分二、填空题(每个空1分,共15分)C程序设计的三种基本结构是__顺序______、__选择______和___循环_____。C语言中,当关系表达式中的关系成立时,则该关系表达式的值为___1____;假设变量已正确定义并赋值,将条件“变量x和y都能被3整除”写成逻辑表达式_____if(x%3==0&&y%3==0)___________________;。___break_____语句用在循环体中,可提前终止循环,___continue_____语句用在循环体中,可结束本次循环。字符数组chara[]={“Zhe”};则数组a的长度为3

。数组元素a[3]的值为‘\0’。若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[1][2]的值为\0

,a[2][1]的值为6

。用static声明________变量,把它分配在静态存储区,该变量在整个程序执行期间不释放;用static声明________变量,则该变量的作用域仅限于本文件模块。执行下列程序片段for(inti=1;i<=21;i++)printf(“*”);将输出____21______个*号,执行后变量i的值为____22______。得分得分四、程序阅读题。阅读下列程序,将运行时的输出结果写在答卷纸的相应题号下。(每小题4分,共20分)得分1.程序运行结果是:a=6,x=10b=3,y=6#include<stdio.h>voidmain(){ inta=5,b=4,x,y; x=2*a++; printf("a=%d,x=%d\n",a,x); y=--b*2; printf("b=%d,y=%d\n",b,y);}2.程序运行结果是:Max=8#include<stdio.h>inta=13,b=8;intmax(inta,intb){intc; c=a>b?a:b; return(c);}voidmain(){ inta=5; printf("Max=%d\n",max(a,b));}3.程序运行结果是:x=100123#include<stdio.h>voidfun1(intx){x=20;}voidfun2(intb[4]){intj;for(j=0;j<4;j++) { b[j]=j; }}voidmain(){intx=10;inta[4]={1,2,3,4},k; fun1(x);printf("x=%d\n",x);fun2(a);for(k=0;k<4;k++){printf("%d\n",a[k]);}}4.程序运行结果是:34567#include<stdio.h>voidFunc(void);voidmain(){ inti; for(i=0;i<5;i++) { Func(); }}voidFunc(void){ staticinta=1; intb=2,c; c=a+b; a++; b++; printf("%d\n",c);} 5.程序运行结果是:18,10#include<stdio.h>voidmain(){ staticinta[][3]={9,7,5,3,1,2,4,6,8}; inti,j,s1=0,s2=0; for(i=0;i<3;i++) { for(j=0;j<3;j++) { if(i==j) s1=s1+a[i][j]; if(i+j==2) s2=s2+a[i][j]; } } printf("%d,%d\n",s1,s2

温馨提示

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

评论

0/150

提交评论