同济大学cjj03b卷

同济大学课程考核试卷(B卷)命题教师签名:审核教师签名:课号:课名:C++语言考试考查:考查此卷选为:期中考试()、期终考试(√)、重考()试卷年级专业学号姓名得分一、选择填空(30分)1)已定义c为字符型变量,则下列语句中正确的是()。A、c=’65’;B、c="65";C、c=65;D、c="A";2)若有以下定义:intn=10;typedefintarray[10];则下列语句中不能正确定义数组的是()。A、inta[10];B、intb[n];C、arrayc;D、floatd[5*2];3)若有以下定义:int*p;intx[3][4];则下列赋值语句中错误的是()。A、p=x;B、p=x[0][0];C、p=x[0];D、p=*(x+1);4)有以下程序段:x=1200;if(x>1000)y=0.5;elseif(x>800)y=0.4;elseif(x>600)y=0.3;elsey=0.2;则程序段执行完毕时,y的值为()。A、0.5B、0.4C、0.3D、0.25)以下表达式中能够被正确执行的是()。A、a/(x-x++)B、a=b=c+10C、int21.09%3D、x=y+2=z-56)若有定义:int*p[5];则以下叙述中正确的是()。A、定义了一个名为*p的整型数组,该数组含有五个整型元素;B、定义了一个指针数组p,该数组含有五个元素,每个元素都是整型指针;C、定义了一个指向整型数据的指针变量p,该变量具有五个指针;D、定义了一个可指向一维数组的指针变量p,所指一维数组有五个整型元素;7)有下列定义:intb[10];int*p=b;以下表达式中不能使数组b中元素b[1]的值为1的是()。A、*(b+1)=1B、*(p+1)=1C、*++b=1D、*++p=18)给出以下定义:charstr1[]="abcde";charstr2[]={'a','b','c','d','e'};则以下叙述中正确的是()。A、数组str1和数组str2等价B、数组str1和数组str2的长度相同C、数组str1的长度大于数组str2的长度D、数组str1的长度小于数组str2的长度9)下列关于函数的传值调用的描述中,()是错误的:A、使用传值调用时,要求形参和实参对应的类型一致,个数相等。B、使用传值调用时,调用函数的实参可以是常量、变量值、表达式、数组元素。C、传值调用的机制是系统将实参拷贝一个副本给形参。D、在被调函数中,形参可以被改变,但这会影响调用函数的实参值。10)有如下定义:structst{intx,floaty}s,*p;若p=s;则以下对s中成员y的使用中不正确的使用是()。A、(*p).yB、s.yC、p->yD、p.y二、写出下列各程序运行时的输出结果(50分)1.#include<stdio.h>voidmain(){intx=3,y=4,z=8;intt;t=x>y?(y<z?++y/--z:++x/--y):x++,y--;printf("%d,%d,%d,%d\n",x,y,z,t);t=x>y?(y<z?++y/--z:++x/--y):(x++,y--);printf("%d,%d,%d,%d\n",x,y,z,t);}2.#include<stdio.h>voidmain(){inta=5,b=6,i=0,j=0;switch(a){case5:switch(b){case5:i++;case6:j++;default:i++;j++;}case6:i++;j++;break;default:i++;j++;}printf("%d,%d\n",i,j);}3.#include"stdio.h"voidf(int*p,intn){inti;for(i=0;i<n;i++)printf("%d\n",*(p+i));}voidmain(){intx[]={1,2,3,4,5,6,7,8,9,10};f(x+4,5);}4.#include“stdio.h”voidmain(){inti=10;while(--i){if(i==1)break;if(i%3!=2)continue;printf(“%d\n”,i);}}5.#include<stdio.h>voidmain(){inta,b,c,d;a=0;b=1,c=2,d=3;if(++ab++||++cd++)if(!a||b>d)b++;elseif(!c++d)c++;elsea+=6;d--;printf(“%d,%d,%d,%d\n”,a,b,c,d);}6.#include"stdio.h"intx=1;voidfun(int*p){staticintx=2;*p*=x-1;x+=2;}voidmain(){inti;for(i=1;i<4;i++){fun(x);printf("%d\n",x);}}7.#include<stdio.h>voidswap1(intx[]){intt;t=x[0];x[0]=x[1];x[1]=t;}voidswap2(intx0,intx1){intt;t=x0;x0=x1;x1=t;}voidmain(){inta[2]={3,5},b[2]={3,5};swap1(a);swap2(b[0],b[1]);printf("%d,%d,%d,%d\n",a[0],a[1],b[0],b[1]);}8.#include<stdio.h>voidf(intx,int*p,floaty){x=(int)y;*p=10;y+=*p*x;}voidmain(){inta=0,b=0;floatc=10.5;f(a,b,c);printf(“%d,%d,%f\n”,a,b,c);}9.#include"stdio.h"#defineNULL0structTpoint{intx;inty;structTpoint*next;};voidmain(){structTpointa,b,c,*head,*p;a.x=10;a.y=10;b.x=20;b.y=30;c.x=30;c.y=50;head=a;a.next=b;b.next=c;c.next=NULL;p=head;do{printf("%d,%d\n",p->x,p->y);p=p->next;}while(p!=NULL);}10.#include"stdio.h"voidmain(){int...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

文秘专家
机构认证
内容提供者

1

确认删除?