西安建筑科技大学《C语言程序设计》2017-2018学年期末试卷_第1页
西安建筑科技大学《C语言程序设计》2017-2018学年期末试卷_第2页
西安建筑科技大学《C语言程序设计》2017-2018学年期末试卷_第3页
西安建筑科技大学《C语言程序设计》2017-2018学年期末试卷_第4页
西安建筑科技大学《C语言程序设计》2017-2018学年期末试卷_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

西安建筑科技大学2017-2018学年第一学期期末试卷1.下列符号在计算当中不是分隔符的是()。2.inta=4,b;对下面四个表达式的值说法正确的是。(1)b+=(a++);(2)b+=(++a);(3)(b++)+=a;(4)(++b)+=(a++);A.9、10、10、11B.(3)式错误C.(4)式错误D.(34)都错误3.下列程序段执行后的输出结果是。inti,j=3,k=4;i=(++j)+(k++);cout<<i;A.7B.10C.9D.84.设以下变量都是int类型,则值不等于7的表达式是()。A.x=y=6,x+y,x+1B.x=y=6,x+y,y+1C.x=6,x+1,y=6,x+yD.y=6,y+1,x=y,x+15.若整型变量a、b、c、d中6.设变量x,y,a,b,c,d的值为1,计算表达式(x=a!=b)&&(y=c!=d)后,变量x,y的值分别是。7.执行以下程序段后,变量i的值为。inti=2;switch(i){case1:i+=i++;case2:i+=i++;case3:i++;break;default:i++;break;}A.4B.5C.6D.78.下面语句构成死循环的是。A.for(i=0;i<10;i++)cout<<i<<endl;B.for(i=10;i>=1;i--)cout<<i<<endl;C.i=10;do{cout<<i--<<endl;}while(i>0);D.i=0;while(i<=10);cout<<++i<<endl;9.在下面循环语句中循环体执行的次数为。for(inti=0;i<n;i++)if(i>n/2)break;A.n/2B.n/2+1C.n/2-1D.n-110.x=0;for(i=0;i<99;i++)if(i)x++;执行完程序段后,x的值是()。A.0B.30C.98D.9011.假定变量a和pa定义为“doublea[10],*pa=a;”,要将3.14赋值给a中的下标为5的元素,不正确的语句是。A.pa[5]=3.14;B.a[5]=3.14;C.*(pa+5)=3.14;D.*(a[0]+5)=3.14;12.下列程序的输出结果是。#include<iostream.h>usingnamespacestd;voidmain(){intn[][3]={10,20,30,40,50,60};int(*p)[3];p=n;cout<<p[0][0]<<","<<*(p[0]+1)<<","<<(*p)[2]<<endl;}13.以下程序的输出结果是。#include<iostream>usingnamespacestd;intmain(){charw[][10]={"ABCD","EFGH","IFKL","MBOP"},k;for(k=1;k<3;k++)cout<<w[k];return0;}A.ABCDEFGHB.EFGHIFKLC.ABCDEFGHIJKLD.EFGHIFKLMNOP14.设有说明chars[]="abc\\\n";则cout<<s;cout<<strlen(s);与cout<<sizeof(s);的值分别是A.abc\56B.abc\45C.abc\n56D.abc\n4515.以下对C++函数的有关描述中,正确的是()。A.C++调用函数时,只能把实参的值传给形参,形参的值不能传递给实参B.C++函数既可以嵌套定义又可以递归调用C.函数必须有返回值,否则不能使用函数D.C++程序中有调用关系的所有函数必须放在同一源程序文件中16.下列函数说明及变量定义,各自独立编译时产生错误信息的是。intfun1(inta,intx);voidfun2(inta,intx);voidfun3(inta[],intn);voidfun4(int*p,intn);inta=5,b=10,c[5]={0};floatx=1.5;A.fun2(fun1(a,b),a);B.fun1(x,a);C.fun3(c[4],5);D.fun4(c,5);17.以下程序的输出结果是()。intfunc(inta,intb){returna+b;}intmain(){intx=6,y=7,z=8,r;r=func(func(x++,y++),z++);cout<<r<<endl;}A.20B.21C.22D.2318.有声明intfun6(int);int(*pf)(int)=fun6;在下列选项中,正确的调用是。A.inta=15;intn=fun6(&a);B.inta=15;cout<<(&pf)(a);C.cout<<(*pf)(256);D.cout<<*pf(256);19.下列程序段执行后a与b的值分别为。inta=110,b=101;a=a^b;b=a^b;a=a^b;20.有如下说明语句:structpoint{intx;inty;}p;则正确的赋值语句是。A.point.x=1;point.y=2;B.point={1,2};C.p.x=1;p.y=2;D.p={1,2};#include<iostream>usingnamespacestd;intf(intn)if(n==0||n==1)return1;elsereturnp;}}intmain(){cout<<f(4);cout<<endl;return0;}2.#include<iostream>usingnamespacestd;intfunc1();intfunc2();intmain(){cout<<func1()<<endl;cout<<func2()<<endl;}intfunc1()staticintb=1;a++;b++;cout<<a<<'\t';cout<<b<<'\t';returna+b;}intfunc2()staticintb=1;a++;b++;cout<<a<<'\t';cout<<b<<'\t';returna+b;}#include<iostream>usingnamespacestd;voidThree(intn){inti,t;intnum[100];for(i=0,t=n;t!=0;i++){num[i]=t%3;t=t/3;}if(0==n)cout<<n;for(i=i-1;i>=0;i--){cout<<num[i];}cout<<endl;}intmain(){Three(20);}4.#include<iostream>usingnamespacestd;intmain()for(i=0;i<5;i++)switch(i){case0:s+=i;break;case1:s+=i;break;case2:s+=i;default:s+=2;}cout<<"s="<<s<<endl;}#include<iostream>usingnamespacestd;voidf(constint*,int,int);intmain(){}voidf(constint*a,introw,intcol){inti,j;for(i=row-1;i>=0;i--)for(j=0;j<col;j++)cout<<*(a+i*col+j);cout<<endl;}#include<iostream>usingnamespacestd;voidprint(intw){inti;if(w!=0){print(w-1);for(i=1;i<=w;i++)cout<<w;cout<<endl;}}voidmain(){print(4);}三、根据以下各题目要求,将程序的空格处补充完整。(共15空,每空2分,共1.编一程序,输入一行字符串,统计其中的小写英文字母的个数。#include<iostream>usingnamespacestd;intmain(){chars[100];cin.getline(s,100);inti=0,count=0;while(s[i]!='\0')count++; (2);}cout<<count<<endl;}2.有数学灯迷如下:ABCD-CDC=ABC,其中ABCD均为一位非负整数,求四位数ABCD的值。#include<iostream>usingnamespacestd;voidmain(){inta,b,c,d,e;for((3)){a=e/1000;(4) d=e%10;if(e-(c*100+d*10+c)==(6))cout<<e;}cout<<endl;}3.把1+2+3+…+48+49中的两个加号改成乘号(修改位置不能相邻使得式子的结果由1225变为2015。#include<iostream>intmain(){for(inti=1;i<=48;i++)for(intj=i+2;j<=48;j++){intm=1225-i-(i+1)-j-(j+1);intn=(7);if((8)) (9)<<i<<”and”<<i+1<<‘\n’;}}4.设计函数求一整型数组的最小元素及其下标。在主函数中定义和初始化该整型数组,调用该函数,并显示最小元素值和下标值。#include<iostream>usingnamespacestd;intfmin(inta[],intsize){inti,min=a[0],index=0;for(i=0;i<size;i++)if(a[i]<min){ (10);index=i; (11);}intmain(){inta[]={73,85,62,95,77,56,81,66,90,80};intindex;index=(12);cout<<"Theminnumnumberis:"<<a[index]<<endl;cout<<"Theindexis:"<<index<<endl;}5.输入一行字符,按输入字符的反序建立一个字符结点的单向链表,并输出该链表中的字符。#include<iostream>usingnamespacestd;structnode{charch;node*nex

温馨提示

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

评论

0/150

提交评论