同济c期中模拟题1_第1页
同济c期中模拟题1_第2页
同济c期中模拟题1_第3页
同济c期中模拟题1_第4页
同济c期中模拟题1_第5页
全文预览已结束

下载本文档

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

文档简介

同济大学2012--2013学年第二学期C/C++程序设计期中模拟试题(含答案)一、选择题1.在以下特征中,不属于面向对象程序设计语言特点的是A.封装性

(B.继承性

)。C.多态性

D.模板答案D2.如有定义

inta=3,&b=a;

则履行语句

b=5后a和b的值为(

)。A.a=3,b=5

B.a=5,b=5C.a=3,b=3

D.a=5,b=3答案B3.有说明:A.3C.5

inta[10]={1,2,3,4,5,6,7,8,9,10},*p=a+1;

则*(p+2)B.4D.6

的值为(

)。答案B4.以下程序的运转结果为(

)。A.248C.24

B.23D.234答案C5.已知有以下的构造定义,则对构造成员的正确赋值是(

)。struct{inti;

abcchars[10];floatc;}stu;A.abc.i=5B.strcpy(stu.s,"abc")C.stu.s="qbcd"D.stu->c答案B6.有以下函数定义:voidfunc(intx,inty,int*z){*z=x+y;}若要将变量a、b之和存入c中(均为整型),则调用语句应为___________。A.func(a,b,&&c);

B.c=func(a,b);C.*c=func(a,b,c);

D.func(a,b,*c);答案A7.设有定义:char__________。

s[20]="AB",*s1="abcdefg"

;则履行函数调用语句

strcpy(s,s1)后,s的内容为A.abcdefgB.ABC.ABabcdefgD.abcdefgAB答案A8.下边函数说明正确的选项是_________。A.voidf(inta=1,intb);B.voidf(inta,b);C.voidf(inta;intb);D.voidf(inta,intb=2);答案D9.以下程序段中循环履行的次数是_______。intk=1;for(;k=1;)k++;A.无穷次B.有语法错,不可以履行C.1次D.0次答案A10.已知floata[10],*p=a,*q=&a[2];假定数组的首地点为1000H,则表达式q-p的值为()。A.2B.4C.8D.犯错答案A二、程序填补1.注意:不要任意加不是一定的空格和分号!以下fun函数鉴别数n是不是完整数。主函数的功能是输出100之内的全部完整数。完整数是指这样的数,该数恰巧等于它的因子之和(除自己这个因子以外)。如6的除自己以外的因子有1、2、3,而6=1+2+3,故6为完整数。#include"iostream.h"voidmain( ){_____(1)____;intn;for(n=1;n<100;n++)if(fun(n))cout<<n<<"\t"<<endl;}intfun(intn){ints,m;____(2)____;for(m=1;___(3)___;m++)if(____(4)_____)s=s+m;return(s==n);}答案

intfun(intn)@intfun(int)

s=0

m<n

n%m==02.注意:不要任意加不是一定的空格和分号!以下程序在值域为num,指针域为link的单链表中,查找与变量d的值相等的数据在链表中的地点,找到了输出该地点,不然提示不在链表中。#include"iostream.h"structnode{intnum;node*link;};voidmain( ){node*head,*tail,*p;intd,i;____(1)___;for(i=0;i<10;i++){p=newnode;cin>>p->num;if(head==NULL)head=p;else____(2)____;tail=p;}tail->link=NULL;cin>>d;p=head;i=0;while(p!=NULL){i++;if(____(3)____)break;elsep=p->link;}if(____(4)____)cout<<d<<"不在该链表中

";elsecout<<d<<"为该链表中的第

"<<i<<"个结点

";}答案head=NULLtail->link=pp->num==dp==NULL三、设计操作1.编一函数intf(intn),功能为判断一个整数n能否为回文数(回文是指正读、倒读都同样的数,如121,2332都是回文数),假如,函数的返回值为1,不然为0。在主函数中统计并输出四位正整数中回文数的个数。要求在

C:\ks下成立一个名为

ct11的工程,在该工程下成立一个

ct11.cpp的文件。注意:务必在要求的目录下成立工程。程序调试完成,务必封闭VC应用程序后,再做上传

。2.编程将字符串s1和s2中对应地点上字符较大者,写入到文件出的内容纹丝没动地写到文件中。如,假定:s1为:"abcd"文件abc.txt的内容为:"bbddfA"

c:\ks\abc.txt中,若s1和s2长度不一样,长,s2为:"badcfA",则:要求在

C:\ks下成立一个名为

ct12的工程,在该工程下成立一个

ct12.cpp的文件。注意:务必在要求的目录下成立工程。程序调试完成,务必封闭VC应用程序后,再做上传。3.程序改错注意:·下边程序中有4个错误(一个表达式中出现的错误当作一个错误),请改正之,并将改正后的程序以ct13.cpp文件保留。·详细操作指导:在c:\ks下成立一个ct13工程,在该工程下成立一个

ct13.cpp的文件。将下边的程序用

Ctrl+C复制后粘贴到ct13.cpp文件中进行改正调试。·调试完成后,封闭

VC应用程序后再上传。以下程序中输出不小于

m的最小素数,函数

prime的功能是判断

m能否为素数,假如返回

1,不然返回0。#include"iostream.h"#include"math.h"intprime(intn);{intk;for(k=2;k<=sqrt(n);k++)if(n/k==0)return0;elsereturn1;}voidmain( ){intm;cin>>m;while(prime(m)==1)m++;cout<<m<<endl;}4.程序改错注意:·下边程序中有4个错误(一个表达式中出现的错误当作一个错误),请改正之,并将改正后的程序以ct14.cpp文件保留。·详细操作指导:在c:\ks下成立一个ct14工程,在该工程下成立一个ct14.cpp的文件。将下边的程序用Ctrl+C复制后粘贴到ct14.cpp文件中进行改正调试。·调试完成后,封闭VC应用程序后再上传。函数max的功能是返回字符串s中最大字符的地点。主函数第一调用该函数获得该最大字符的地点,并将该最大字符后边的全部小写字母变换成大写字母。#include"iostream.h"#include"stdio.h"#include"string.h"char*max(chars[]){inti=0,imax;while(s

温馨提示

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

评论

0/150

提交评论