重庆三峡学院《C语言程序设计》2017-2018学年期末考试卷_第1页
重庆三峡学院《C语言程序设计》2017-2018学年期末考试卷_第2页
重庆三峡学院《C语言程序设计》2017-2018学年期末考试卷_第3页
全文预览已结束

下载本文档

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

文档简介

考试课程C语言程序设计考试日期成绩考生姓名年级专业(1)不同类型的变量在内存中占用存储空间的大小都是一样的。()(2)程序调试就是找出并改正C源程序中的语法错误。()(3)表示数学式3<x<5的C表达式也是3<x<5。()(4)程序执行时,一维数组的数组名表示的是数组中第1个元素的地址。()(5)结构化程序语言的三种基本控制结构是顺序、选择和循环。()(6)与float型数据相比,double型数据的精度高,取值范围大。()(7)表达式(1.23<<2)符合C语言语法。()(8)在C语言中,表达式(010+2)的值是10。()(9)‘\n’不是一个字符常量。()(10)do-while语句先执行循环体,后判断循环条件,所以循环体至少会执行一次。()二、单选题,从A、B、C、D中,选择一个正确的选项(共28分,每小题2分)1.语句floatx=3.0,y=4.0;下列表达式中y的值为9.0的是()A)y/=x*27/4B)y+=x+2.0C)y-=x+8.0D)y*=x-3.02.下面程序的输出是()。#include<stdio.h>voidast(intx,inty,int*cp,int*dp)*dp=x-y;x=*cp+*dp;y=*cp-*dp;}voidmain()x=5;y=2,c=8,d=4;ast(x,y,&c,&d);printf("%d,%d,%d,%d\n",x,y,c,d);}A)x=10,y=4,c=7,d=3B)x=5,y=2,c=7,d=3C)x=10,y=4,c=8,d=4D)x=5,y=2,c=8,d=43.下面程序的运行结果是。#definePS3+4#include<stdio.h>z=PS*2;printf("%d",z);}4.下面程序执行后输出是()。#include<stdio.h>voidmain(){intk=4,*p1=&k;if(*p1==k)printf("%d",1);elseprintf("%d",0);}A)4B)1C)0D)运行时出错5.等价于while(x)的是()。A)while(x==0)B)while(x!=0)C)while(x==1)D)while(x!=1)6.若有inti,j,n=8;连续执行下述两条语句,则i,j和n的值应是。7.指出函数abc的作用是()。voidabc(char*s,char*t){while(*t++);t--;while(*t++=*s++);//注:是单等号}A)求字串长度B)将字串s连接到字串t的尾部C)比较字串大小D)将字串t复制到字串s中8.下列程序段的输出结果是()。int*p,*q,k=5,j=10;printf("%d",*q);9.若a是具有3个元素的一维整型数组,且各元素已被正确赋值,则下面程序段的功能是if(a[1]>a[2])m=a[1];elseif(a[0]>a[2])m=a[2];elsem=a[0];printf("%d\n",m);A)无特殊功能B)输出m值是三个元素的最小值C)输出m值是三个元素的最大值D)输出m值是三个元素的中间值10.若变量已经被正确定义,为表示“变量x和y都能被3整除”,应使用的C表达式C)(x%3==0)||(y%3==0)D)(x%3==0)&&(y%3==0)11.若x是double型变量,n是int型变量,输入31.25后,使x=1.25,n=3,则正确的输入语句是()。A)scanf("%d%lf",&n,&x);B)scanf("%lf%d",&x,&n);C)scanf("%lf%d",&n,&x);D)scanf("%d%,lf",&n,&x);12.下面不正确的赋值或赋初值的方式是()。A)char*p="hello";B)chars[10]="hello";C)chars[10];s="hello";D)chars[5]={'h','e','l','l','o'};13.设结构体类型及结构数组定义如下,则下面正确的表达式是()。structstudent{intnum;charname[20];floatscore;}stud[10];A)stud[2]=stud[1]+3B)stud[1]==stud[2]C)stud[1]=stud[1]-stud[2]D)stud[1]=stud[2]14.若变量已经被正确定义,则下面语句不正确的是()。A)p=&(x+1);B)p=&x;C)p=&x+1;D)p=&x,p++;三、按题目的意思,写出正确的内容。(共8分)1.inti=-5;while(i<0)i++;写出循环的执行次数。2.a是一个整型变量,写出把a中十位数字赋值给变量x的表达式。3.写出f(5)的值,函数定义如下,intf(intn){if(n>2)returnf(n-1)+n;elsereturnn;}4.若给定:intx[3]={10,20,30},*px[3]={x,x+1,x+2},*q;,请写出适当的语句完成指针交换,使*px[0],*px[1],*px[2]值分别是30,20,10。四、读程序写出程序执行结果(共16分)#include<stdio.h>voidmain()scanf("%d",&x);//输入2switch(x+1){case1:y+=1;printf("%d#",y);break;case3:y+=3;printf("%d#",y);case5:y+=5;printf("%d#",y);break;default:y+=7;printf("%d#",y);}}2.#include<stdio.h>voidmain()floatk,s=0;scanf("%d",&x);//输入7368do{k=x%10;x/=10;}while(x!=0);printf("sum=%.3f\n",s);}#include<stdio.h>{printf("\nsum=%5d",sum);}}4.#include<stdio.h>voidmain(){intx[3]={8,12,32},i,d=0,c=9;for(i=0;i<3;i++){d=d+x[i];c=x[i];}elsed=d-c;printf("%d#",d);}}五、程序填空,按程序完成的功能,在划线部分填写适当的内容。(共14分)【程序】#include<stdio.h>{doubles; }printf("s=%.2f",s);}验证哥德巴赫猜想:任何一个大于4的偶数均可表示为两个素数之和。例如6=3+3,8=3+5,…,18=7+11。将6~100之间的每个偶数都表示成两个素数之和。函数prime(m)用于判断m是否为素数。素数就是只能被1和自身整除的正整数,1不是素数,2是素数。【程序】#include<stdio.h>#include<math.h>intprime(intm);printf("%d=%d+%d\n",i,k,i-k);break;}}intprime(intm)if(m==1)return0;n=(int)sqrt(m); }3.青年歌手大奖赛中,评委会对参赛选手打分。选手得分规则:去掉一个最高分和一个最低分,然后计算平均值,该平均值即为选手的得分。下面的程序功能是,从文件c:\data.txt中输入评委对张颖选手打分(评委人数不超过20人),按选手得分规则,计算并输出该选手的得分。【程序】#include<stdio.h>#defineN20voidmain()floatx[N],max,min,s;FILE*fp;if((fp=fopen("c:\\data.txt","r"))==NULL){printf("Openfilefail\n");return;}while(!feof(fp)){ }n=i;max=min=x[0]; for(i=1;i<n;i++){if(x[i]>max)max=x[i];if(x[i]<min)min=x[i];s+=x[i];} printf("张颖选手得分:%f",s/(n-2));}六、编程序(共24分)1.入被除数和除数x,y,如果除数y不等于计算x除以y的商,如果除数y等于输出“数据错误”。2.输入一批学生的成绩,遇

温馨提示

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

评论

0/150

提交评论