《计算机基础与程序》A卷及答案

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第1页□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□共5页第1页课程名称《计算机基础与程序》(答卷)考试日期层次、专业、班级姓名题号一二三四五六七八总计检查人签名得分阅卷人签名一、单项选择题(本大题共12小题,每小题3分,共36分)1、下列不可以用作C语言程序变量名的是__C__。A)_mynameB)my_nameC)my.nameD)IF2、已知:floatx,*y=&a;则下列函数调用错误的是__D__。A)scanf(%f,&x);B)scanf(%f,y);C)printf(%f,x);D)printf(%f,y);3、已知:intx=3,y=0,执行语句x=!x&&x++y后,x,y的值正确的是__A__。A)x=0,y=0;B)x=3,y=0;C)x=0,y=1;D)x=3,y=1;4、判别字符变量ch不是字母时,应采用下列表达式__A_。A)!(ch='Z'&&ch='A'||ch='z'&&ch='a')B)ch'Z'||ch'A'||ch'z'||ch'a'C)(ch='Z'&&ch='A')||(ch='z'&&ch='a')D)!(ch='Z'||ch='A'&&ch='z'||ch='a')5、已知x=1;则表达式“++x+x++”的值为__C__。A)2B)3C)4D)66、用十进制表示,表达式0x12&12的值为__A__。A)0B)24C)1D)67、若有字符串说明语句chars[]=I_am\x20_a_\0boy\n;则字符串变量s的长度为__B__。A)18B)8C)13D)说明不合法,长度无法确定第2页8、将球体体积的计算公式为4πr^3/3(π为圆周率,约等于3.14,r是圆的半径,r^3是指半径的三次方),r的类型为浮点数,采用C语言表示正确的表达式为_D__。A)4πr^3/3;B)4.0*π*r*r*r/3.0;C)4.0*3.14*r^3/3.0;D)4.0*3.14*r*r*r/3.0;9、int*p[4]定义的类型是__A__。A)整型指针的数组;B)指向数组的指针;C)整型指针;D)函数调用,参数为4,返回类型为整数指针;10、假设定义了函数voidswap(int*a,int*b),并定义了变量intx,y,*p=&x,*q=&y则下面调用正确的是_B__。A)swap(x,y)B)swap(&x,q);swap(&x,&y)swap(p,q)C)swap(*p,*q);D)swap(p,y);11、fopen函数不正确的用法是__D__。A)fopen(C:\\mydata,rb)B)fopen(C:\\mydata,w+)C)fopen(C:\\mydata,a+)D)fopen(C:\mydata,r)12、已知文件mydata中的内容为:“ThisisC\nprogram.”,文件打开后的指针为fp,则执行函数fgets(s,12)后,s的内容是_A__。A)“ThisisC\n\0”B)“ThisisC\nprogram.\0”C)“ThisisC\0”D)“ThisisC\np\0”二、根据程序功能填空(本大题共8小题,每小题5分,共40分)1、利用递归函数f(n),求解表达式f(n)=1-2+3-4+...+n*(-1)^(n+1)的值,请完善下面的递归函数:intf(intn){if(n==1){return【1】;}if(n1){if(n%2==0){return【2】;}return【3】;}return0;}第3页【1】处应填入的是:__B__。A)-1B)1C)2D)0【2】处应填入的是:__A__。A)f(n-1)-nB)f(n-1)+nC)f(n-1)+1D)-n;【3】应填入的是:__B_。A)f(n-1)-nB)f(n-1)+nC)f(n-1)+1D)n;2、要对全班100个同学的成绩,按照从高到低的顺序进行排序,以下程序是排序函数,其功能是将成绩数组score从大到小排序。请完善函数中的语句。voidsort(intscores[],intn){inti,j,temp;for(i=【4】;i=n-1;i++)for(j=0;j【5】;j++)if(【6】){temp=scores[j];scores[j]=scores[j+1];scores[j+1]=temp;}for(i=0;iN;i++)printf(%d\n,scores[i]);}为保证程序循环次数最少,【4】处应填入:__B__。A)0B)1C)-1D)N/2为保证程序循环次数最少,【5】处应填入:__D__。A)NB)N-1C)N-i-1D)N-i;【6】处应填入:__A__。A)scores[j]scores[j+1]B)scores[j]scores[j+1]C)scores[j]scores[j-1]D)scores[j]scores[j-1]3、根据程序的初始值,打印选中学生的姓名与年龄,补充部分程序,并选择程序的运行结果:#includestdio.hstructstudent{intid;charname[12];intage;};第4页voidprint(structstudent*p){printf(name=%s\n,(*p).name);/*【7】*/printf(age=%d\n,【8】);/*打印输出年龄*/}main(){structstudentBIT[3]={{1001,Zhang,19},{1002,Zeng,20},{1003,Zang,21},};structstudent*p=BIT+1;print(p);}【7】处的输出结果为:__B__。A)ZhangB)ZengC)ZangD)结果不确定【8】处输出该学生的年龄,应填入:__C__。A)p-ageB)student.ageC)BIT[1].ageD)p.age三、填空完善程序(本大题共8小题,每小题3分,共24分)1、已知能被4整除而不能被100整除的或者能被400整除的年份是润年,则判断某一年是否是润年的程序如下:main(){intyear,leap;scanf(“%d”,&year);if(__(year%4==0&&year%100!=0)___)leap=1;elseleap=0;if(____year%400==0_______)printf(“是润年”);elseprintf(“不是润年”);}2、将100至200间不能被3整除的数输出:main(){intn;for(n=100;n=200;n++){if(n%3==0)______continue______;printf(“%d”,n);}}第5页3、判断m是否是素数#includemath.hmain(){intm,i,k;scanf(“%d”,&m);k=sqrt(m);for(i=2;i=k;i++)if(m%i==0)____break____________;if(i=k+1)printf(“%disaprimenumber\n”,m);elseprintf(“%disnotaprimenumber\n”,m);}4、给定一3*4的矩阵,求出其中值最大的元素的值,及所在的行列号。main(){inti,j,row=0,colum=0,max;staticinta[3][4]={{1,2,3,4}{9,8,7,6}{10,-10,-4,4}};____max=a[0][0]______________;for(i=0;i=2;i++)for(j=0;j=3;j++)if(a[i][j]max){max=a[i][j];____row=i+1___________________;___colum=j+1__________________;}printf(“max=%d,row=%d,colum=%d\n”,max,row,colum);}5.程序的功能:计算1!+2!+3!+……+10!的值。#includestdio.hmain(){longterm,sum=0;inti,j;for(i=1;i=10;i++){____term=1_______________;for(j=1;____j=i______;j++){term=term*j;}sum=sum+term;}printf(1!+2!+…+10!=%ld\n,sum);}

1 / 5
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功