完整版天津大学C期末考试样卷及答案
天津大学2021年《有机化学机理》期末考试试题及答案
1 螺戊烷在光照条件下与氯气反应是制备氯代螺戊烷的最好方法。
Cl解释在该反应条件下,为什么氯化是制备这一化合物的如此有用的方法并写出反应历程。
解:H.该反应条件下螺戊烷氯化是自由基反应, 形成图示的平面型或近似于平面型的自由基中间体,中心碳原子为sp2杂化, 未参与杂化的p轨道只有一个未配对电子,垂直于三个sp2杂化轨道,并被另一个环丙烷的弯曲键所稳定,活化能低,反应速度快,是制备该化合物有效的方法。
链引发:Cl2链传递:Cl链终止:ClCl2..2 解释:甲醇和2-甲基丙烯在硫酸催化下反应生成甲基叔丁基醚CH3OC(CH3)3(该过程与烯烃的水合过程相似)。
解:3OCH3+- H+3下面两个反应的位置选择性不同CF3CH=CH2CF3CH2CH2Cl CH3OCH=CH2CH3OCHClCH3解:三氟甲基是强吸电子基,存在强的– I 效应。
生成稳定中间体碳正离子CF 3CH 2CH 2+。
连在烯键上的甲氧基存在强的+C 、弱的–I 效应,即CH 3OCH δ+=CH 2δ–,氢离子进攻 CH 2δ– ,得到中间体碳正离子CH 3OCH + CH 3也较稳定。
4解 两次亲电加成, 第一次是氢离子加到烯键上,第二次是分子内加成(碳正离子加到烯键上), 每次都生成较稳定的碳正离子。
+5CO 2CH 3解 +HgOAc 对烯键亲电加成后,接着经过一系列亲电加成, 再失去氢离子,得最终产物.COOCH 3OAcCOOCH 3OAcHgHg ++6Cl解 碳正离子1发生重排。
不重排的产物是1-异丙基-1-氯环己烷。
本题碳正离子重排由氢迁移造成。
ClCl++7Cl解发生碳正离子重排。
第一步得到的碳正离子已是叔碳正离子,但分子中有五元环。
重排时,碳正离子α-位环戊基的一条键带一对电子移到碳正离子上,生成六员环(1,2-迁移,碳正离子是1-位,2-位基团迁到1-位上)。
Cl8解环外双键在质子酸催化下易重排为热力学更稳定的环内双键。
天津大学c语言考试题库及答案
天津大学c语言考试题库及答案一、选择题1. C语言中,用于定义一个结构体的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列关于函数的描述,错误的是:A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数可以嵌套定义D. 函数可以递归调用答案:C3. 在C语言中,用于声明一个字符数组的语句是:A. char array[10];B. int array[10];C. float array[10];D. double array[10];答案:A二、填空题1. 在C语言中,表示逻辑“与”的运算符是____。
答案:&&2. C语言中,用于定义一个整型数组的语句是____。
答案:int array[10];3. 当使用printf函数输出一个浮点数时,格式化字符串为____。
答案:%f三、简答题1. 请简述C语言中指针和数组的关系。
答案:在C语言中,指针是一种特殊的变量,它存储了另一个变量的内存地址。
数组是一个连续的内存块,其中包含了相同类型的元素。
指针可以用于访问数组的元素,通过指针可以遍历数组。
2. 描述C语言中如何使用循环结构。
答案:C语言中常用的循环结构有for循环、while循环和do-while 循环。
for循环通常用于执行固定次数的循环,其语法为:for (初始化表达式;条件表达式;更新表达式) {循环体}。
while循环和do-while循环则用于执行条件满足时的循环,其中while循环先判断条件再执行循环体,而do-while循环则先执行循环体再判断条件。
四、编程题1. 编写一个C语言程序,实现计算并输出100以内所有偶数的和。
答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("100以内所有偶数的和是:%d\n", sum); return 0;}```2. 编写一个C语言函数,实现字符串的反转。
有机化学(上)_天津大学中国大学mooc课后章节答案期末考试题库2023年
有机化学(上)_天津大学中国大学mooc课后章节答案期末考试题库2023年1.有对称面和/或对称中心的分子无手性,没有对映异构现象。
答案:正确2.碳氧双键(C=O)伸缩振动在红外波谱中的特征频率出现在1600-1800【图片】答案:正确3.以下说法不符合【图片】反应机理的是()。
答案:有重排产物生成4.下列卤代烷在中性条件下水解时(【图片】机理),反应速度最快的是()答案:5.下列化合物中,具有手性的是[ ]。
答案:6.sp碳-氢(C-H)伸缩振动在红外波谱中的特征频率出现在3310-3320【图片】答案:正确7.与烯烃中【图片】碳相连的质子(R2C=CHR) 在【图片】中的化学位移是4.5-5.7。
答案:正确8.甲基自由基中碳原子外层共有7个电子,甲基自由基最可能的形状是[ ]。
答案:介于四面体和平面三角形之间9.下列化合物中,没有芳香性的是[]。
答案:10.含有5个碳原子的脂肪族烯烃的构造异构体共有几个?答案:611.下面哪个写法是不正确的?答案:12.下列述化合物在乙醇水溶液中放置,能形成酸性溶液?【图片】答案:正确13.在氯乙烷(【图片】)的【图片】波谱中,甲基的偶合裂分峰的数目为[ ]。
答案:314.下列化合物或离子中,有芳香性的是[]。
答案:15.下列化合物中,具有手性的是[]。
答案:16.在对有机化合物命名时,以下几种官能团较优先的是[]。
答案:17.下列化合物中芳环α-位质子酸性最强的是[]。
答案:18.下列化合物在进行一元溴化反应时,哪一个反应速度最慢?答案:19.下列几种试剂中,不能用于Friedel-Crafts烷基化反应的是[]。
答案:20.丙二烯分子是线形非平面分子。
答案:正确21.对于碳原子数相同的烯烃顺反异构体,顺式异构体的熔点比反式异构体略高。
答案:错误22.对于烯烃顺反异构体的两种标记法,顺即对应Z构型,反即对应E构型。
答案:错误23.下列化合物哪个不能使溴的四氯化碳溶液褪色?答案:24.下述反应的产物,哪一个是正确的?【图片】答案:25.关于下面化合物的系统名称,哪一个是正确的?【图片】答案:顺-4-甲基-2-戊烯26.下列丙烯醛的几种极限结构,哪个对共振杂化体的贡献最大?答案:27.下述反应属于哪一种类型的反应?【图片】答案:自由基加成反应28.下列烯烃用过氧酸氧化时,反应最容易进行的是哪一个?答案:29.下列哪个化合物酸性最强?答案:30.下列哪个化合物可作为双烯体进行Diels-Alder反应?答案:31.下列哪个自由基最稳定?答案:32.下列哪个碳正离子最稳定?答案:33.按次序规则,下列基团哪一个最优先?答案:34.下列分子中,分子不具有极性的是[ ].答案:35.正辛烷中碳原子的个数为[ ]答案:836.下述化合物中,自身分子间可以形成氢键的是[ ]答案:37.下列指定的碳氢键中,解离能最小的是[ ].答案:38.不查阅物理常数表,判定下列化合物中沸点最高的是[ ].答案:正癸烷39.下列取代基中,异丁基是[ ].答案:40.下列氟代芳烃与乙醇钠作用时,反应最容易的是()答案:41.甲基环丙烷与碘化氢发生反应时,最可能的产物是[ ].【图片】答案:42.卤素【图片】,【图片】 ,【图片】在与烷烃进行自由基卤化反应时,反应活性最高的是[ ].答案:43.氯苯用混酸在其邻位进行硝化反应时,其活性中间体(σ-络合物)可用以下几种极限结构的共振杂化体表示。
精细有机合成化学与工艺学_天津大学中国大学mooc课后章节答案期末考试题库2023年
精细有机合成化学与工艺学_天津大学中国大学mooc课后章节答案期末考试题库2023年1.含有有两个或两个以上强吸电基的芳胺属于碱性很弱的芳胺,重氮化时一般需要使用浓硫酸作为无机酸参考答案:正确2.在气-固相临氢接触催化胺化氢化中,主要使用铜-鎳催化剂,其中铜主要是催化醇的脱氢生成醛或酮,镍主要是催化烯亚胺的加氢生成胺参考答案:正确3.气固相催化氧化需要被氧化物和产物都要有足够的热稳定性参考答案:正确4.芳香族亲电取代反应的历程是经过σ络合物中间产物的两步历程,但是σ络合物的生成并不是控制步骤参考答案:错误5.氧酰化反应又叫做酯化反应参考答案:正确6.烯烃的硫酸酯化是亲电加成反应历程参考答案:正确7.使用三聚氯氰进行N-酰化反应,三个氯均可被取代,且反应速率类似,不易控制反应条件得到一酰化产物参考答案:错误8.使用羧酸与酸酐进行的N-酰化反应类似,都是可逆反应参考答案:错误9.间异丙基甲苯在进行空气液相氧化时,反应可以选择性的发生在异丙基生成叔碳过氧化氢物参考答案:正确10.还原反应也可以指在有机分子中增加氢或减少氧的反应,或者兼而有之的反应参考答案:正确11.在使用硫化碱还原间二硝基苯时,可以得到部分还原产物即间硝基苯胺,而铁粉则容易使间二硝基苯发生完全还原,而不易得到间硝基苯胺参考答案:正确12.苯酚是精细化工的基本原料参考答案:错误13.芳烃用溴素作为溴化剂进行溴化时,常常向反应液中加入氧化剂,目的是将产生的HBr氧化成Br2而充分利用参考答案:正确14.芳环上发生亲电取代反应时,所有第一类取代基都使芳环上电子云密度增大,使芳环活化参考答案:错误15.芳烃用稀硝酸硝化时,反应质点是参考答案:NO正离子16.芳烃氯化生产中要控制原料中的水的含量小于参考答案:0.04 %17.芳烃磺化反应,为了抑制磺化生成砜副反应时,常常加入的添加剂是参考答案:NaSO4_NaHSO418.空气液相氧化时自由基的反应历程,其包括三个阶段为参考答案:链的引发_链的传递_链的终止19.芳胺用亚硫酸氢钠的水解也叫Bucherer反应参考答案:正确20.铁粉还原时,向在水介质中的被还原物与铁粉混合物加入酸的目的是为了清洁铁粉参考答案:错误21.芳烃用氯磺酸磺化时,芳烃与氯磺酸的摩尔比是1:5时,生产的产物是参考答案:芳磺酰氯22.芳环不易直接进行取代氟化,常采用的方法是置换氟化参考答案:正确23.苯酚氯化制备高纯度的2,6-二氯苯酚时,常采用的方法是将反应产物进行多次精馏分离提纯参考答案:错误24.甲苯侧链氯化制备氯化苄时要控制后处理无水操作,否则产物容易水解参考答案:正确25.芳磺酸盐碱熔的特点包括参考答案:三废治理负担大_工艺落后,劳动强度大,工作环境差_不易连续化生产_方法简单,工艺成熟,对设备要求不高26.芳环上的C-烷化反应是连串的不可逆反应参考答案:错误27.甲苯高温磺化,生成邻对位磺化产物,因为甲基是第一位定位基参考答案:错误28.使用卤代烃的芳环上的C-烷化反应是酸催化的付氏烷基化反应,该反应的特点包括参考答案:烷基化反应的质点会发生异构化_易生成待支链的烷基取代基_连串_可逆29.芳烃的亲电取代反应,难易程度为:蒽醌>萘>苯参考答案:错误30.所有溶液中,溶剂和溶质之间的相互作用力均存在氢键缔合作用的专一性力参考答案:错误31.叔卤代烃水解成醇的反应,按照Houghes-Ingold规则,极性溶剂对反应有利参考答案:正确32.芳烃上引入-SO3H不仅可增加水溶性,还可以辅助定位或提高反应活性参考答案:正确33.α-烯烃用SO3 的取代磺化是游离基反应历程参考答案:错误34.某些有机物在室温下在空气中不适用催化剂也能发生缓慢氧化参考答案:正确35.精细有机合成的原料资源是煤、石油、天然气和动植物参考答案:正确36.芳磺酸在酸性条件下的水解反应机理是()参考答案:亲电取代反应37.氯苯是精细化工基本原料参考答案:错误38.醇的氨解的主要工业方法有参考答案:气-固相临氢接触催化胺化氢化法_气-固相接触催化脱水氨解法_高压液相氨解法39.一般钾盐都比钠盐贵,然而四氢硼钾比四氢硼钠的价格更便宜参考答案:正确40.下列芳胺碱性最强的的是参考答案:对甲氧基苯胺41.分子内环合从反应机理上分类包括参考答案:亲核反应_亲电反应_自由基反应42.重氮化时无机酸的用量需要过量,其作用是为了参考答案:产生亚硝酸_溶解芳胺_抑制副反应如重氮氨基化合物的生成43.酚类的氨解方法一般有三种方法包括参考答案:气相氨解法_萘系布赫勒(Bucherer)反应,_液相氨解法44.常用的酰化剂包括参考答案:酰氯_羧酸酯_酸酐_羧酸45.用羧酸的酯化反应是可逆反应,提高酯的收率的方法包括参考答案:从反应混合物中蒸出酯_从反应混合物中蒸出水_用过量的低级醇46.将醇和酚制成钠盐或钾盐,可提高与卤代烃的反应活性参考答案:正确47.环合反应既能形成新的碳环也能形成含杂原子的环参考答案:正确48.在使用稀盐酸和亚硝酸钠进行重氮化时,加入少量的溴化钠或溴化钾能够提高重氮化反映的速率参考答案:正确49.在进行重氮化时,使用不同无机酸会形成不同的活泼质点,最活泼的活性质点是使用浓硫酸时生成的亚硝基正离子参考答案:正确50.重氮基水解反应用于制备苯酚时,不能使用重氮盐酸盐作为原料参考答案:正确51.醇羟基非常活泼,所以醇的氨解能够在较温和的室温下进行参考答案:错误52.环氧烷类的加成胺化的反应速率随着环氧烷类碳原子数的增加而降低,即环氧乙烷 >环氧丙烷>环氧丁烷参考答案:正确53.芳磺酸既可在酸性条件下水解,也可以在碱性条件下水解,水解产物相同参考答案:错误54.带有供电取代基的芳磺酸盐碱熔一般采取熔融碱的常压高温碱熔法参考答案:正确55.用卤代烷作烷化剂的N-烷化反应不可逆,是连串反应参考答案:正确56.以酰氯为酰化剂,使用三氯化铝为催化剂的C-酰化反应,催化剂只需要使用催化的量即原料摩尔量的5%-10%即可参考答案:错误57.用环氧乙烷作烷化剂的N-烷化反应是连串反应,反应不容易控制在一烷基化产品阶段参考答案:正确58.芳香族伯胺与亚硝酸作用生成重氮盐,而脂肪族的伯胺与亚硝酸不反应参考答案:错误59.氨解反应底物易发生水解副反应时可以使用液氨作氨解剂参考答案:正确60.过渡性N-酰化时需考虑的因素包括参考答案:酰化剂价格低廉_酰氨基对下一步反应具有良好的效果_酰化反应容易进行,收率高,质量好_酰氨基易水解61.一般来说芳磺酸盐的碱熔方法包括参考答案:熔融碱的常压高温碱熔法_碱溶液的中温碱熔法62.芳环上氨基的水解包括参考答案:酸性条件水解_亚硫酸氢盐水溶液的水解_碱性水解63.芳香族卤化物使用氨水做氨解剂时一般使用过量氨解剂,其作用是参考答案:降低反应生成的氯化铵在高温时对不锈钢材料的腐蚀作用_改善反应物的流动性_抑制生成二芳基仲胺和酚的副反应64.气-固相临氢接触催化胺化氢化反应的步骤包括参考答案:醇的脱氢生成醛(或酮)_羟基胺的脱水_醛(或酮)的加成胺化_烯亚胺的加氢65.影响重氮化反应的速率的因素包括参考答案:无机酸浓度_无机酸性质_芳胺碱性66.从基本原料出发合成精细化学品,路线越短成本一定越低、路线越合理。
大学C++期末考试试卷(含答案)
大学C++期末考试试卷(含答案)中央广播电视大学二年级期末考试试卷本试卷满分共100分考试时间:120分钟一、单项选择题(本大题共6小题,每小题3分,共18分)在每小题列出的四个备选项中,只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1.说明内联函数的关键字是()。
A. inlineB. virtualC. defineD. static2.假定CAb为一个类,则执行CAb oX;语句时将自动调用该类的()A. 有参构造函数B. 无参构造函数C. 拷贝构造函数D. 赋值重载函数3.cin是某个类的标准对象的引用,该类是()。
A. ostream (output)B. istream (input)C. stdoutD. stdin4.下面的哪个保留字不能作为函数的返回类型?()A. void (无返回)B. int (整形)C. newD. long(长整形)5.由于数据隐藏的需要,静态数据成员通常被说明为()。
A. 私有的B. 公有的C. 保护的D. 不可访问的6.基类和派生类可以分别称为()。
A. “大类”和“小类”B. “父类”和“子类”C. “小类”和“大类”D. “子类”和“父类”二、判断正误题(本大题共2小题,每小题3分,共6分)判断正误,在题后的括号内,正确的划上“√”错误的划上“×”。
1.内联函数的定义必须出现在第一次调用内联函数之前。
()2.使用new运算符创建数组时,可以为该数组指定初始值。
()三、填空题(本大题共5小题,每小题2分,共10分)不写解答过程,将正确的答案写在每小题的空格内。
错填或不填均无分。
1.设函数max是由函数模板实现的,并且max(3.5, 5)和max(3, 5)都是正确的函数调用,则此函数模板具有()个类型参数。
2.在C++中,函数重载与虚函数帮助实现了类的()性。
3.由static修饰的数据成员为该类的所有对象()。
天津理工大学C++期末考试
实验一一、明确的概念:(1)理解类和对象的概念;(具体见附一)类是抽象的对象是具体的例如:你、我、他都是人那么你、我、他就是对象人就是类(2)掌握类与对象的定义方法;类的定义:class 类名{ … /*定义这个类*/}; 员名或成员函数不能通过外部直接访问(不声明访问属性时系统默认为私有)当出现对象名.成员(私有)时编译器报错与private类似但protected属性的成员可以继承 private不能继承(4)掌握构造函数和析构函数的含义与作用、定义方式和实现;构造函数:为数据成员开辟存储空间函数名必须与类名相同之前绝对不许说明返回值类型 void也不行构造函数是随着对象的声明而调用的例如:classStudent{Student(){cout<<”Hello.”<<endl;}};Int main(void){cout<<”Hello.”<<endl;Student A;}运行结果:Hello. <<endl;}int getx(){return x;}int gety(){return y;}private:int x, y;};Coordinate::Coordinate(Coordinate &p){<<endl; }int main(){Coordinate p3=p2;cout<<"p3=("<<()<<","<<()<<")"<<endl;}(1)记录程序的运行结果(2)将Coordinate 类中带有两个参数的构造函数进行修改,在函数体内增加如下语句:cout<<”Constructor is called.”<<endl;重新记录程序的运行结果,并解释输出结果。
c期末考试题及答案
c期末考试题及答案一、选择题(每题2分,共20分)1. 以下哪个选项是正确的?A. 地球是平的B. 太阳是银河系的中心C. 水的化学式是H2OD. 光速在真空中是无限的2. 根据牛顿第三定律,作用力和反作用力的大小关系是:A. 相等B. 不相等C. 有时相等,有时不相等D. 无法确定3. 以下哪个不是计算机病毒的特点?A. 破坏性B. 复制性C. 隐蔽性D. 有益性4. 英语中,“apple”的意思是:A. 苹果B. 香蕉C. 橙子D. 梨5. 以下哪个不是中国四大名著?A. 《红楼梦》B. 《西游记》C. 《水浒传》D. 《哈利波特》6. 根据相对论,时间是:A. 绝对的B. 相对的C. 静止的D. 无限的7. 以下哪个不是数学中的基本运算?A. 加B. 减C. 乘D. 排序8. 以下哪个是蛋白质的主要功能?A. 储存能量B. 构成细胞C. 调节体温D. 储存维生素9. 以下哪个不是酸雨的成因?A. 工业排放B. 汽车尾气C. 火山爆发D. 森林火灾10. 以下哪个不是计算机编程语言?A. JavaB. PythonC. HTMLD. C++二、填空题(每空1分,共10分)11. 地球的自转周期是________小时。
12. 光合作用的产物是________和氧气。
13. 牛顿第二定律的公式是________。
14. 计算机的硬件包括输入设备、输出设备、________和存储设备。
15. 英语中,“Hello”的中文意思是________。
三、简答题(每题5分,共15分)16. 请简述牛顿第一定律的内容。
17. 请解释什么是光的折射现象。
18. 请列举三种常见的网络攻击类型。
四、计算题(每题5分,共10分)19. 若一个物体的质量为2千克,受到的重力为19.6牛顿,请计算该物体受到的加速度。
20. 假设一个物体以5米/秒的速度匀速直线运动,求该物体在10秒内行驶的距离。
五、论述题(每题15分,共30分)21. 论述相对论对现代物理学的影响。
天津大学C++期末考试样卷及答案
天津大学C++期末考试样卷及答案一. 单项选择题(每题1分,共20分)1.C++源程序文件的扩展名是。
BA).C B).CPP C).DLL D).EXE2. 下列属于C++合法的字符常量是C 。
A)'\97' B)“A” C)'\t' D)“\0”3.设const int B=6; int a[12]; 则下列错误的是______。
AA)B+=3; B)a[5]=B+3; C)int x[B+3]; D)a[B+3]=25;4. a、b均为int型且b≠0,则表达式a-a/b*b的值为 C 。
A)0 B) a C)a被b除的余数部分D)a被b除商的整数部分5. 设int a=5,b=6,c=7; 则cout<<((a+b)<c&&b!=c)<<","<<((a+b)<c,b=c);的输出是 B 。
A) 0,0 B) 0,7 C) 1,0 D) 1,76. 以下关于编译预处理的叙述中,错误的是C 。
A)预处理命令必须以“#”开始B)一条预处理命令行必须独占一行C)一条预处理命令行必须以分号结束D)预处理命令是在正式编译之前先被处理的7.设int型数据占4个字节,若有定义:int x[10]={0,2,4}; 则sizeof(x)的值为C 。
A) 3 B) 12 C) 40 D) 108.下列关于C++函数的叙述中,正确的是。
A)每个函数至少要有一个形参B)C每个函数都必须有返回值C)函数在被调用之前必须先声明D)函数不能自己调用自己9.下面有关重载函数的说法中正确的是C 。
A) 重载函数必须具有不同的返回值类型B)重载函数形参个数必须不同C) 重载函数必须有不同的形参表D) 重载函数名可以不同10. 表达式strcmp("box","boss") 的值是A 。
天津大学期末试题合集及答案
学平衡常数 KC =(
)。
13 光化学中的量子效率φ 的定义(
)。
14 胶体分散系统的主要特点是(
)。
15 丁达尔现象产生的原因是入射光的波长(
)分散相粒子尺寸时发生光
的( )现象。
二 (29 分)
1
(20 分)气相反应 2A(g) + B(g) → C(g) 的速率方程为 − dpB dt
= kpA pB ,
物理化学期末考题(A) 2001-01-12
题号
1
2
3
4
5
6
7
总分
分数
一 概念题(30 分)
1
离子的极限摩尔电导率
Λ∞ 1 Ca2+
及
Λ∞ Br −
分别为
59.4×10-4与
78.4×10-4S·m2·mol-1,
2
则
Λ∞ CaBr2
=(
)S·m2·mol-1。
2 某电导池中充以 0.10mol·dm3的醋酸水溶液,25℃时测得其电阻为 703 Ω ,已 知该电导池的电导常数为 36.90m-1,则该醋酸溶液的电导率k=( )S·m-1,
摩尔电导率 Λm =( )S·m2·mol-1。
3 已知 25℃下,浓度b=0.20mol·kg-1 Al2(SO4)3的 r± =0.70,则 b± =( ),电解
质Al2(SO4)3的活度a =(
)。
4
电 池 反 应 Pb2+(
aPb2+
)+
SO42−
(
a2− SO42−
)
=
PbSO4
(g)所对应的原电池为
(
)(表示出所设计的电池)。
天津大学版C++答案
练习1 4. (1)5 (2)2 (3)1 (4)0 (5)1 (6)1(7)9(8)13(9)1(10)2(11)5(12)05. (1)D (2)D (3)B 、C (4)C (5)C (6)C6.(1) (2)(3)1234.5 1234 (4)18 第二章2. 阅读下列程序并写出运行结果 (1) ****(2) 6(3) S=11(4) 14(5)执行该程序,当分别输入5238、316、24、0时,输出结果是: 5238k=2 234 220 15*********6 8.1235 -4.062Sum=18316sum=1024sum=6sum=0第三章2.阅读下列程序并写出运行结果(1)(2)(3)(4)第四章2.写出以下程序的运行结果(1)(2)(3)(4)(5)(6)练习52. 单选题(1)A (2)A (3)D (4)C (5)A (6)A 3.写出以下程序的输出结果。
(1)(2)4.程序填空(1)j<p 0 line%11==0 200 obj.Run() (2)long int myclass::sum=0 ob1 或ob2 或ob34.程序填空题(1)j<=p 0 line%10==0200 ob1.Run() (2)long int myclass:: sum=0 ob1或ob2或ob3练习62.选择题(1)A(2)D (3)C (4)A (5)D3.阅读下列程序并写出输出结果(1)(2)4.程序填空题(1)person (n,s) person (n,s)(2)circle table char[strlen(c)+1] strcpy getheight getarea getcolor 练习72.选择题(1)D (2)C (3)A (4)C (5)C3.阅读下列程序并写出输出结果:(1)(2)4.程序填空题const point &p friend练习82.选择题(1)B (2)B (3)D (4)A(5)B 3.阅读下列程序并写出输出结果:(1)(2)(3)4.程序填空题(1)ofstream outfile !outfile 或outfile.fall() outfile outfile.close() (2)”data.dat”outfile练习91.单选题(1)A (2)B (3)D (4)C (5)D (6)B (7)D (8)C(9)B (10)B (11)A (12)C (13)B (14)D2.简答题(6)所有可能的顺序是:1 2 3、1 3 2、2 1 3 、2 3 1、3 2 1(9)LOC(a ij)=LOC(a00)+(j*m+i)*C(11) 6 6 80 0 150 3 220 5 -121 1 111 2 52 3 -74 0 875 2 283.程序填空题:(1) B.ClearList() A.Length() i++ (2)current!=NULL next head->next; (3)len-i-1 A.ClearList();4.算法设计题(1)void Seqlist::Reverse(){char temp;for(int i=0;i<length/2;i++){temp= element [i];element [i]= element [length-1-i] ;element [length-1-i]=temp;}}(2)解法1:void SeqList::Delitem(const char &item){char x;for(int i=0;i<length;i++){Find(i,x);if(x == item) {Delete(i,x);i--;}}}解法2:void SeqList::Delitem(const char &item){int i,j;for(i=0;i<length;i++)if(element[i]==item){for(j=i;j<length-1;j++)element[j]=element[j+1];length--;i--;}}(3)void SeqList ::Half(){char x;for(int i=0;i<length;i++)Delete(i,x);}(4)解法1:增加一个成员函数Max()void Seqlist::Max(int & j , char &max){ max=element[0];int j=0;for (int i=1;i<length;i++)if(element[i]>max) {max=element[i];j=i;}}解法2:不增加成员函数#include “seqlist.h”#include <iostream>using namespace std;void main(){Seqlist list(100);char a[10];cin>>a;for(int i=0;a[i];i++)if(list.Insert(i,a[i])==false) {cout<<”插入异常\n”;break;}int p=0;char x,max,list.Find(0,max);for(i=1; i<list.Length();i++){list.Find(i,x);if(x>max) {max=x;p=i}}cout<<”表中元素最大值为:”<<max<<”位置为:”<<p<<endl; }(5)#include “chain.h”#include “seqstack.h”void reverse(China &A, LinkedStack &B){B.ClearStack();char x;For(int i=0;i<A.Length();i++){A.Find(i,x);B.Push(x);}A.ClearList();i=0wihle(!B.IsEmpty()){Top(ch);A.Insert(i,x);i++;Pop();}B.ClearStack();}(6)void Chain::rInsert(char &x){Node *p=head, *q;q=new Node;q->data=x;while(p->next!=NULL){p=p->next;}q->next= p->next; //或q->next=NULL;p->next=q;length++;}(7)在SeqList类中void SeqList::Insertasc(const char &x){if(length==Maxsize) return;for(int k=length-1; k>=0 && element[k]>x; k--)element[k+1]=element[k];element[k+1]=x;length++;}在Chain类中void Chain::Insertasc(const char &x){Node *p=head;while(p->next != NULL && p->next->data < x)p=p->next;Node *q;q=new Node;q->data=x;q->next=p->next;p->next=q;length++;}(9)void main(){char str[]="C++ FORTRAN 3PASCAL 4basic";Queue Q1(50),Q2(50);int i;for(i=0;str[i]!=’\0’;i++){if(str[i]>='A' && str[i]<='Z')Q1.EnQueue(str[i]);else if(str[i]>='a' && str[i]<='z')Q2.EnQueue(str[i]);}}char ch;while(!Q1.IsEmpty()){Q1.Front(ch);cout<<ch;Q1.DeQueue();}cout<<endl;while(!Q2.IsEmpty()){Q2.Front(ch);cout<<ch;Q2.DeQueue();}cout<<endl;}练习101.单选题(1)C (2)B (3)C (4)B 5)D (6)C (7)B (8)C (9)A (10)B 2.简答题(1)树:二叉树:(2)设树中结点总数为n,叶结点数为n0,则有:n=n0+n1+n2+ ... +n m(1)设树中的边数为b,则有:b=n-1 和b= n1+2*n2+ ... +m*n m于是得:n= n1+2*n2+ ... +m*n m+1 (2)由(1)、(2)得:n0= n2+2*n3+ ... +(m-1)*n m+1(4)需增加4个“虚结点”(5) 先序序列:ABDGCEHIF中序序列:DGBAHEICF 后序序列:GDBHIEFCA (6)50(7)①对 ②错 ③错 ④对 (8)(9) ①右单支树 ②左单支树 ③只有一个结点① ② ③(10)(11) (a) (b)(c) (d)(e)(12)该哈夫曼树共有结点的个数是:2n-1 (13)对应的哈夫曼树是:WPL=(16+17)*2+(9+14+15)*3+6*4+(2+3)*5=229(14)(1)(2)邻接矩阵:0 1 1 0 0 0 0 1 1 1 0 0 0 1 0 0 0 0 0 1 0 0 1 0 0(3)邻接表:(15)是强连通图。
c大一期末考试题及答案
c大一期末考试题及答案# 一、选择题(每题2分,共20分)1. 根据题目所给的四个选项,选择最符合题意的一个。
A. 选项一B. 选项二C. 选项三D. 选项四答案:B2. 下列哪个选项不是大一课程中的内容?A. 微积分B. 线性代数C. 量子物理D. 大学物理答案:C3. 根据题目所给的数学公式,计算下列哪个选项是正确的结果。
\( x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a} \)A. \( x = 1 \)B. \( x = -1 \)C. \( x = 2 \)D. \( x = 3 \)答案:A...(此处省略剩余选择题)# 二、填空题(每空1分,共10分)1. 根据题目所给的函数表达式,求出 \( f(x) \) 在 \( x = 2 \)时的值。
\( f(x) = x^2 - 5x + 6 \)答案:-22. 请写出大一上学期所学的一门基础课程名称。
答案:高等数学...(此处省略剩余填空题)# 三、简答题(每题10分,共20分)1. 简述大一上学期所学的主要课程内容,并列举至少两门课程。
答案:大一上学期主要学习了高等数学、线性代数、大学物理等基础课程。
高等数学主要涉及极限、微分、积分等概念;线性代数则包括矩阵运算、线性空间等基础内容。
2. 描述大一上学期你在学习过程中遇到的一个挑战,并说明你是如何克服它的。
答案:在大一上学期,我在学习高等数学时遇到了理解微积分概念的挑战。
为了克服这个问题,我首先复习了高中数学的相关知识,然后通过参加学习小组和向老师请教,逐渐理解了微积分的基本原理。
# 四、计算题(每题15分,共30分)1. 根据题目所给的物理定律,计算下列物体在特定条件下的运动状态。
答案:(此处应详细描述计算过程和结果)2. 利用线性代数的知识,求解下列矩阵方程。
\( \begin{bmatrix} 2 & 1 \\ 1 & 3 \end{bmatrix} \times\mathbf{x} = \begin{bmatrix} 5 \\ 7 \end{bmatrix} \)答案:(此处应详细描述计算过程和结果)# 五、论述题(每题20分,共20分)1. 论述大一上学期你在学习过程中的收获和感悟。
2021年天津大学管理会计学期末(C)试卷
天津大学管理会计学期末(C)试卷学校___________ 班级_________ 姓名_________ 分数_________一、单项选择题(每小题1分共20分)1、获利指数PI=1+()。
A.内部收益率B.净现值率C.预计贴现率D.年均投资报酬率2、某企业欲购进一台新机器 , 要支付现金 40 万元。
该机器使用寿命为 4 年 , 无残值 , 采用直线法提折旧。
预计每年可产出税前现金流量14 万元 , 如果所得税税率为 40%, 则回收期为 ( ) A.3、品种法是()A.产品成本计算的基本方法B.产品成本计算的辅助方法C.产品成本计算的唯一方法D.产品成本计算的定额方法4、在变动成本法与完全成本法下,引起分期损益产生差异的原因是()A 变动生产成本B 固定性制造费用C 销售收入D 期间费用5、管理会计与财务会计存在着显着区别,但二者之间仍具有一定的联系,主要体现在()A 工作具体目标B 遵循公认会计原则C 资料来源D 工作程序6、按照管理会计的解释,成本的相关性是指()。
A与决策方案有关的成本特性B与控制标准有关的成本特性C与资产价值有关的成本特性D与归集对象有关的成本特性7、管理会计的会计主体不包括()。
A.责任人 B.个别产品 C.总经理 D.个别部门8、设某厂需要零件甲,其外购单价为10元,基自行生产单位变动成本为6元,且需要为此每年追加10 000元的固定成本,通过计算可知,当该零件的年需要量为()件时,两种方案等效。
A.2 500B.3 000C.2 000D.1 8009、相对于短期经营决策而言,属于非相关决策成本的是()A机会成本 B可避免成本C差别成本 D沉落成本10、在长期投资决策中的多方案比较过程中,当对两个投资额不相等的投资方案进行互斥决策时,应当使用的评价指标是()。
A.投资回收期 B.净现值 C.差额投资内部收益率 D.净现值率11、下列选项中,()不是在管理会计初级阶段产生的。
2022年天津大学公共课《C语言》科目期末试卷B(有答案)
2022年天津大学公共课《C语言》科目期末试卷B(有答案)一、填空题1、为建立如图10-5所示的存储结构(即每个结点两个域,data是数据域,next是指向结点的指针域),请将定义补充完整。
struct s{char data;_______}node;2、一个C语言源程序由若干函数组成,其中至少应含有一个________3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。
4、C语言中的标识符可分为关键字、_______和_______3类。
5、已知字母a的ASCIl码为十进制数97,且设ch为字符型变量,则表达式ch='a'+'8'-3'的值为_______。
6、设x=10100011,若要通过x*y使x的高4位取反,低4位不变,则y的二进制数是_______。
7、下面程序段是找出整数的所有因子。
请填空。
scanf("%d",&x);i=1;for(;_______;){if(x%i==0)printf("%3d",i);i++;}8、若有定义:inta[3][4]={{1,2},{0},{4,6,8,10}};,则初始化后,a[1][2]得到的初值是_______,a[2][1]得到的初值是_______。
9、下面程序段的运行结果是_______。
char ch[]="600";int a,s=0;for(a=0;ch[a]>= '0'&&ch[a]<='9';a++)s=10*s+ch[a]-'o';printf("%d",s);10、下面程序段的运行结果是_______。
Char a[]="123456789",*p;inti=0;p=a;while(*p){if(i%2==0)*p='*';p++;i++;}puts(a);二、选择题11、下列4组选项中,不是C语言关键字的选项是。
C期末考试试卷及参考答案
.性,在下面表格中对—学应的题号下填入是非选择,—若正确,则打钩(√);否则,打叉(×)。
—线题号 1 2 3 4 5 6 7 8 9 10—是/否——1. 说明函数原型时不需要指明每个函数参数的名字,只需要说明每个参数的类型和—返回值类型就可以了。
— 2. 函数定义中的形参的作用域是该函数的函数体。
_—__—4. 释放。
elete 来new 动态申请的存空间,必须用d3. 用__—_构造函数和析构函数都可以声明为虚函数。
_—_ 5. 在公有继承中,基类中的公有成员和私有成员在派生类中都是可见的。
_—__类的静态数据成员需要在定义每个类的对象时进行初始化。
6. —名—7. 使用关键字class 定义的类中缺省的访问权限是私有(private)的。
姓—能具有8. 在基类中被说明为虚函数的类的成员函数必须在每个派生类中说明为虚函数,才—多态的特征。
—订程序将流对象看作是文件的化身。
9. C++程序中,—的值不10.如果程序中有多处要抛掷异常,应该用不同的操作数类型来相互区别,操作数—能用来区别不同的异常。
—_—__—_分) 1. 5 分,共15 二、填空题(每小题_—__—以须变量的标识,由组成,而且必量1 .变名是__—_开头。
_—级开始。
2.有了函数原型,函数的作用域就不是从开始,而是从—班。
3.获取一个变量的地址所采用的操作符是装—4.使用const 语句定义一个标识符常量时,则必须对它同时进行。
—,在类外不通过对象名访问该成b AB 中有一个公用属性的静态数据成员b5.假定类—的写法为b 。
员b —_—句的作用为6.typedef 语。
__—_ MFC 7.平时所提到的使用M编程,这里的FC 是的缩写。
_—_8.若要在程序文件中进行标准输入输出操作,则必须在开始的命令中# include _—__—使用头文件。
_—.9C++中,若将操作符插入到输出流中,则以十六进制格式输出。
院—学10.。
天津商业大学往年C语言期末及答案
天津商业大学C 语言期末考试时间:【60分钟】总 分:【100分】题号一总分得分得分评卷人一、单项选择题 (共50题,每题2分,共计100分)( )1、若已有定义语句:inta,b, c; 且变量已正确赋初值,则以下选项中正确的赋值语句是________。
A、a = (b = c) + 8;B、(a = b) = c = 9;C、a = (b == c) = 'A';D、a + b = c + 1;( )2、下列标识符中,不合法的 C语言用户自定义标识符是()。
A、printf B、enum C、_(下划线)D、sin ( )3、设变量x和y均已正确定义并赋值。
以下if语句中,在编译时将产生错误信息的是________。
A、if(x++);B、if(x>y && y!=0);C、if(x>0) x--D、if(y<0) {;}( )4、定义如下变量:int n=10;则下列循环的输出结果是________。
while(n>7){ n--; printf(''%d'',n);}A、1098B、987C、10987D、9876( )5、有以下函数: char fun(char*p){return p;}准考证号:姓名:身份证号:专业班级:该函数的返回值是________。
A、无确功的值B、形参P中存放的地址值C、一个临时存储单元的地址D、形参P自身的地址值()6、已知int a[3][2]=(3,2,1); 则表达式"a[0][0]/a[0][1]/a[0][2]"的值是________。
A、0.166667B、1C、0D、错误的表达式()7、static char str[10]="China";数组元素个数为()。
A、5B、6C、9D、10()8、设x、y、t均为int型变量,则执行语句x=y=3; t=++x||++y; 后,y的值为______。
大学C++期末考试题库与答案
2014 年大学 C++期末考试题库一、单选题:1.能作为 C++程序的基本单位是 ( C ) 。
A.字符B.语句C.函数D.源程序文件2.程序中主函数的名字为( A )。
A. mainB. MAINC. MainD.任意标识符3.关于 C++与 C 语言的关系的描述中,( D)是错误的。
A. C语言是C++的一个子集;B. C语言与C++是兼容的;C. C++对C语言进行了一些改进;D. C++ 和 C语言都是面向对象的4.可用作C++语言用户标识符的一组标识符是( B) 。
A. void define +WORDB. a3_b3 _123 YNC. for-abc CaseD. 2a DO sizeof5.存储以下数据,占用存储字节最多的是(D)。
A. 0B.‘ 0’C.“ 0”D. 0.06.设 int a=12;则执行完语句a+=a*a ;后, a 的值是 ( C )。
A. 12B. 144C. 156D. 2887.假设在程序中 a 、 b、c 均被定义成整型,所赋的值都大于1,则下列能正确表示代数式1的表达式是 (D) 。
abcA. 1.0/a*b*cB. 1/(a*b*c)C. 1/a/b/(float)cD. 1.0/a/b/c8.以下说法中正确的是( B)。
A.C++程序总是从第一个定义的函数开始执行B.C++程序总是从main函数开始执行C.C++函数必须有返回值,否则不能使用函数D.C++程序中有调用关系的所有函数必须放在同一个程序文件中9.下面有关构造函数的描述中,正确的是( B )。
A.构造函数可以带有返回值B.构造函数的名字与类名完全相同C.构造函数必须带有参数D.构造函数必须定义,不能缺省10.10.在声明类时,下面的说法正确的是()。
A.可以在类的声明中给数据成员赋初值B.数据成员的数据类型可以是registerC.private ,public , protected 可以按任意顺序出现D.没有用 private ,public , protected 定义的数据成员是公有成员11. 在下面有关析构函数特征的描述中,正确的是(A)。
天津理工大学C++期末考试
1.一、明确的概念:(1) 理解类和对象的概念;(具体见附一)类是抽象的 对象是具体的 例如:你、我、他 都是人那么 你、我、他就是对象 人就是类(2) 掌握类与对象的定义方法;类的定义:class 类名{…/*定义这个类*/}; //(别忘了最后的分号) 对象的定义:类名对象名(参数);(3)理解类的成员的访问控制的含义,公有和私有成员的区别;public://访问属性为公有通过外部直接访问即:对象名•成员名或成员函数private://访问属性为私有不能通过外部直接访问(不声明访问属性时系统默认为私有)当出现对象名 成员(私有)时编译器报错protected://访问属性为保护 与private 类似 但protected 属性的成员可以继承 private 不能继承(4)掌握构造函数和析构函数的含义与作用、定义方式和实现;构造函数:为数据成员开辟存储空间函数名必须与类名相同 之前绝对不许说明返回值类型void 也不行构造函数不能由用户调用即:对象名•构造函数名(参数)是错误的构造函数是随着对象的声明而调用的例如: class Student{Student (){cout<< "Hello. "<<endl;}};Int mai n (void ) // {cout<< "Hello 丿<<endl; /Stude nt A; " /运行结果: Hello. .. //<-这个Hello 是主函数中的Hello" //<-是声明A 对象时调用的构造函数 构造函数中的Hello 析构函数功能与构造函数相反注意调用时间和顺序(看书)、练习项目输入下列程序,按要求进行实验,并记录实验的结果。
实验一;附:如何知道该程序析构函数的;调用顺序是p3 p2 pl ?;答:将拷贝构造函数中改为 ;x=2*p.x; y=2*p.y;析构函数中在cout«”Destructor :is called ”之后添加 vv”x=”v<xvv ” :;y=”<<y 后面的不变:;运行时析构函数输出结果变为: ! Destructor is called. x=12 y=16 ; Destructor is called. x=6 y=8 ; Destructor is called. x=3 y=4; Press any key to con ti nue:由此可知其调用顺序;或者在拷贝构造函数和析构函数;中的cout 语句的<<endl;之前加#in elude <iostream> using n amespace std;class Coordin ate {public:Coordi nate(i nt x1, i nt y1){x=x1; y=y1;} Coordin ate(Coord in ate &p);~Coord in ate(){cout<<"Destructor is called."<<e ndl;} int getx(){return x;} int gety(){return y;} private: int x, y; };Coordinate::Coordinate(Coordinate 、&p){〃 拷贝构造函数 x=p.x; y=p.y;cout<<"Copy in itia ni zati on con structor i } P89)led."<<endl;int mai n(){ Coordinate p1(3,4); Coordinate p2(p1); Coordin ate p3=p2;cout<<"p3=("<<p3.getx()<<","<<p3.gety()<<")"<<e ndl; +调用构造函数调用拷贝构造函数(见书运行结果:return 0; }___________ 卜程序结束时调用析构函数注意析构函数;的调用顺序 从上至下 依此为p3 p2 p1的! 析构函数[Copy initianization constructor is called. Copy initianization constructor is called. p3=(3,4)i11Destructor is called. (1 ) 记录程序的运行结果 Destructor is called. (2)将Coordinate 类中带有两个参数的构造函数进行修改, 在函数体增加如下语句:cout<< "Constructor is called. ”<endl; 重新记录程序的运行结果,并解释输出结果。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
天津大学C++期末考试样卷及答案一. 单项选择题(每题1分,共20分)1.C++源程序文件的扩展名是。
BA).C B).CPP C).DLL D).EXE2. 下列属于C++合法的字符常量是C 。
A)'\97' B)“A”C)'\t' D)“\0”3.设const int B=6; int a[12]; 则下列错误的是______。
AA)B+=3; B)a[5]=B+3; C)int x[B+3]; D)a[B+3]=25;4. a、b均为int型且b≠0,则表达式a-a/b*b的值为C 。
A)0 B) a C)a被b除的余数部分D)a被b除商的整数部分5. 设int a=5,b=6,c=7; 则cout<<((a+b)<c&&b!=c)<<,<<((a+b)<c,b=c);的输出是 B 。
A) 0,0 B) 0,7 C) 1,0 D) 1,76. 以下关于编译预处理的叙述中,错误的是C 。
A)预处理命令必须以“#”开始B)一条预处理命令行必须独占一行C)一条预处理命令行必须以分号结束D)预处理命令是在正式编译之前先被处理的7.设int型数据占4个字节,若有定义:int x[10]={0,2,4}; 则sizeof(x)的值为C 。
A) 3 B) 12 C) 40 D) 108.下列关于C++函数的叙述中,正确的是。
A)每个函数至少要有一个形参B)C每个函数都必须有返回值C)函数在被调用之前必须先声明D)函数不能自己调用自己。
C .下面有关重载函数的说法中正确的是9.A) 重载函数必须具有不同的返回值类型B)重载函数形参个数必须不同C) 重载函数必须有不同的形参表D) 重载函数名可以不同10. 表达式strcmp(ox,oss) 的值是A 。
A) 正整数B) 负整数C) 0 D) 不确定的数11.设int a[3][4],*p=a[0]; 以下不能正确访问数组元素a[i][j]的是 A 。
A) *(a+i+j) B) *(*(a+i)+j) C) *(a[i]+j) D) p[4*i+j]12.当一个派生类公有继承一个基类时,基类的所有public成员成为派生类的D 。
A) 友元B) private成员C) protected成员D) public成员13.设int a=3,*p=&a; 则*p的值是D 。
A) 变量a的地址值B) 无意义C) 变量p的地址值D) 314.设int i=5,f=15; 则执行语句if(i=0) f-=5; 后i和f的值分别是C 。
A) 5,15 B) 5,10 C) 0,15 D) 0,1015.设int *p;以下对new运算符的正确使用形式是C 。
A) p=new a[10]; B) *p=new int[10];C) p=new int[10]; D) p=new int[5]={1,2,3,4,5,6};16.下列关于动态联编的描述错误的是C。
A) 动态联编在运行时选择联编函数B) 动态联编也称为动态多态性C) 函数重载和运算符重载属于动态联编D) 动态联编可用来选择虚函数17.设二叉树的高度为k(k≥0),若其包含的结点总数为2k+1-1,则该二叉树是B 。
A) 完全二叉树B) 满二叉树C) 二叉排序树D) 普通的二叉树18.设用一个大小为6的一维数组存储顺序循环队列,若当前front和rear的值分别为3和5,当从队列中删除一个元素,再加入两个元素后,front和rear的值分别是 D 。
A)5和0 B)4和7 C)无法完成要求的操作D)4和1。
C .以下关于关键字的描述中错误的是19.A)关键字可由元素的一个或多个数据项组成B) 可以按关键字进行查找C) 不同元素的关键字值可以相同D) 每个元素的关键字必须是唯一的20.直接插入排序在被排序的数据B 时效率较高。
A) 完全无序B) 基本有序C) 逆序排列D) 最大值与最小值相差不大二.写出以下程序的运行结果(每题4分,共20分)1. #include <iostream.h>void main(){int a[8]={12,25,33,5,8,16,51,22},i;int *p=a;for(i=0;i<4;i++)cout<<*(p+i*2)<<endl;}程序运行的结果是:12 33 8 512.#include <iostream.h>int fun(){static int d2=0,d1=1;int t=d2+d1;d1=d2;d2=t;return d2;}void main(){for(int i=0;i<6;i++)cout<<fun()<<“”;cout<<endl;}程序运行的结果是:1 1 2 3 5 83.#include <iostream.h>class A{public:A(){ a=b=10; }A(int i,int j) { a=i; b=j; }void operator+=(const A &x){ a+=x.a; b+=x.b; }void print();private:int a,b;};void A::print(){ cout<<a=<< a<<,b=<< b<<endl; }void main(){A m,n(15,18);m.print(); n.print();m+=n;m.print(); n.print();}程序运行的结果是:a=10, b=10a=15,b=18a=25,b=28a=15,b=184.#include <iostream.h> void main(){int x=3,y=3;switch(x%2) {case 1: switch (y%x){ case 0:cout<<irst\n;case 1:cout<<second\n;break; default: cout<<hellow\n;}case 2:cout<< hird\n;}}程序运行的结果是:firstsecondthird5.#include <iostream.h>#include <string.h>void fun(char *str){char t;int i,j;for(i=1;i<strlen(str);i++){t=str[i];for(j=i-1;j>=0&&t<str[j];j--) str[j+1]=str[j];str[j+1]=t;}}void main(){char s[]=CFBEAD;fun(s);cout<<s<<endl;}程序运行的结果是:ABCDEF6 .#include <iostream.h> class point{private:int x,y;public:point(int x1=0,int y1=0){x=x1;y=y1;}virtual void move(int x1,int y1){ x+=x1;y+=y1;}virtual void disp(){潣瑵?点:(<<x<<','<<y<<')';};class line:public point{private:int xx,yy;public:line(int x1,int y1,int x2,int y2):point(x1,y1){xx=x2;yy=y2;}void move(int x1,int y1){point::move(x1,y1);xx+=x1;yy+=y1;}void disp(){point::disp ();cout<<-点:(<<xx<<','<<yy<<')';}};void main(){line l(2,4,6,8);point p(l),*pp=&l;p.move (3,3);pp->move (4,4);p.disp ();cout<<endl;pp->disp ();cout<<endl;}结果:点:(5,7)点:(6,8)-点:(10,12)Press any key to continue三.程序填空(每空2分,共32分):1. 设一个数列的第1、2项分别为0和1,以后每个奇数编号的项是前两项之和,偶数编号项是前两项之差的绝对值。
下面程序的功能是生成该数列的前20项并存入一个数组x,然后将这20个数存入文本文件data.txt。
#include <fstream.h>#include <math.h>void main() {int x[20],i;x[0]=0;x[1]=1i=2;x[i]= ; //x[i-1]+x[i-2]x[i+1]=abs(x[i-1]-x[i]);i= ; //i+2}while( ); //i<19;if(!fout) return;for( ;i<20 ; j++){ //i=0fout<<x[i]<<“”;fout.close();}2.以下程序实现将任意正整数转换成相应字符串。
例如,将1234转换为“1234”。
#include <iostream.h>class Cstack{ //定义字符栈char s[80];int top; //栈顶指示器public:Cstack() { top=-1 ;} //把栈置为空void push(char ch){ //将ch入栈if(top==79) return;s[++top]= ch ;}char pop(){ //出栈并返回栈顶元素值(栈空时返回0)if(top==-1)return 0;return ; //s[top--]}};void itos(int num, char *str){ //将num转换为字符串并存入strCstack s1;while(num!=0){s1.push( ); // '0'+num_x0010_num/=10;}char ch;for(int i=0;(ch=s1.pop())!=0;i++) ; //str[i]=chstr[i]=0;}void main(){ char s[80]; itos(1234,s); cout<<s<<endl; }3.以下函数的功能是删除字符串最前面和最后面的所有空格。