C-C++程序设计导论(阶段1)-试题B卷答案_第1页
C-C++程序设计导论(阶段1)-试题B卷答案_第2页
C-C++程序设计导论(阶段1)-试题B卷答案_第3页
C-C++程序设计导论(阶段1)-试题B卷答案_第4页
C-C++程序设计导论(阶段1)-试题B卷答案_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

编程基础I试卷第1页(共4页)XXXX大学202X学年X季学期(试卷)C/C++程序设计导论(阶段1)(B卷)(开卷)1、冯·诺依曼体系结构的计算机由存储器、(运算器)、(控制器)、输入设备和输出设备五部分组成。2、程序语句“inta=0,b,c;b=++a;c=(++b)+(a++);”执行后,变量c的值是(3)。3、常用的流程跳转语句有goto语句、break语句、(continue)语句和(return)语句。在设备上输出的结果是(a)。5、在表达式“u=i--,a*=++j”中,共有(5)个运算符,其中优先级最低的运算符是(逗号(,))。6、静态局部变量存储在内存区域的(全局数据)区。7、程序语句“inta=5,b=2;doubled=a/b;cout<<d+1.5;”执行后,在设备上输出的结果是(3.5)。8、已知如下程序代码,请按照要求回答问题。#include<iostream>usingnamespacestd;intmain(){ints=0,n=12345;while(n>0){s+=n%10;n/=10;}cout<<s;return0;}(1)请画出程序中变量s和n的内存变化过程图(每次变化)。(2)while循环中的条件表达式“n>0”共执行多少次?(2)参考答案:共执行6次。(4分)编程基础I试卷第2页(共4页)9、已知如下计算机表达式,请按照要求回答问题。9、已知如下计算机表达式,请按照要求回答问题。a+=!b||x>=y&&m!=n+c++(1)画出计算机表达式的计算顺序图。(2)画出计算机表达式的计算序列图。(1)计算顺序图(5分)。(2)计算序列图(5分)。编程基础I试卷第3页(共4页)编程基础I试卷第4页(共4页)#include<iostream>#include<iomanip>usingnamespacestd;intmain(){unsignedshortus=65535;us=us+2;cout<<"unsignedshort:";cout<<hex<<us<<","<<dec<<us<<endl;signedshortss=32767;ss=ss+2;cout<<"signedshort:";cout<<hex<<ss<<","<<dec<<ss<<endl;return0;}unsignedshort:1,1signedshort:8001,-32767编程基础I试卷第5页(共4页)||(1)开始、结束图标1分;(1)画出程序流程图。(5分)(2)在程序中,对于输入的每一个x值,计算并输出y的值。(10分)(2)参考答案:#include<iostream>usingusingnamespacestd;intintmain(){{doubledoublex,y;cout<<"请输入一个随机的实数值x:";cincin>>x;if(x<=0){{y=x*(x+3);}}elseif(x>0&&x<5)//或者elseif(x<5){yy=2*x+5;}elseif(x>=5){//或者elsey=x-1;}}cout<<"y="<<y<<endl;system("pause");return0;}编程基础I试卷第6页(共4页)12、使用C++语言编写程序,能够求斐波那契数列的第n项的值,并满足题目要求(20|(1)使用循环结构编写自定义函数fib1(int)。(4分)(2)使用递归思想编写自定义函数fib2(int)。(4分)数,程序能够依次计算并输出结果。(8分)(1)fib1(int)函数。(4分)intfib1(intn){if(n==0){{returnreturn0;}}elseelseif(n==1){{returnreturn1;}}intx=0,y=1,t;forfor(inti=2;i<=n;i++)//注意判断条件是小于等于{tt=y;y=x+y;x=t;}}returnreturny;}for循环表达式2条件写成“i<n”的扣0.5分。编程基础I试卷第7页(共4页)((2)fib2(int)函数。(4分)intintfib2(intn){{if(n==0){{return0;}}elseelseif(n==1){{returnreturn1;}}else{{returnfib2(n-1)+fib2(n-2);}}(3)main函数及调用(共8分):#include<iostream>usingnamespacestd;intintfib1(intn);intfib2(intn);intintmain(){{for(inti=10;i<=20;i++)//3分{{cout<<"斐波那契数列第"<<i<<"项的值为:"<<fib1(i)<<endl;}}for(inti=10;i<=20;i++)//3分{{cout<<"斐波那契数列第"<<i<<"项的值为:"<<fib2(i)<<endl;}}system("pause");return0;}编程基础I试卷第8页(共4页)编程基础I试卷第9页(共4页)fibfib函数在main函数之后定义,需要有函数声明:2分。(4)图示函数fib2(5)的调用过程,并标注函数的实参和返回值。(4分),酌情扣分。编程基础I试卷第10页(共4页)(1)通项公式与递推公式(1)通项公式与递推公式答案不唯一,老师需要研判。1111ln21-+-++2345...(2)画出程序流程图。(5分)(3)选择一种递推公式编写程序,在程序中输出ln2的近似值,精确到小数点后5位。(10分)(1)画出程序流程图。(5分)doubledoubles=1intt=1,k=1假1/(k+1)>10-5真t*=-1s+=t/(k+1)k=k+1(3)程序。(10分)#include<iostream>##include<iomanip>std;usingstd;intmain(){doubles=1;intintk=1,t=1;while(1.0/(k+1)>1e-5){{tt*=-1;s+=t/(double)(k+1);kk++;编程基础I试卷第11页(共4页)}}cout<<"ln2的值是:"<<setiosflags(ios::fixed)<<setprecision(5)<<<s<<endl;system("pause");returnreturn0;}}程序二#include<iostream>##include<iomanip>usingnamespacestd;intintmain(){{doubles=1-1.0/2;intintk=1;while(1.0/(2*k+1)>1e-5){{s+=1.0/(2*k+1)

温馨提示

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

评论

0/150

提交评论