流行病学实习教程答案
实习是大学阶段必不可少的一部分,通过实习大学生不仅能实现理论知识与社会实践的统一,更是能对社会有初步的了解,为毕业后走出社会奠定一定的基础。以下是小编收集整理的《流行病学实习教程答案》,供大家参考借鉴,希望可以帮助到有需要的朋友。
第一篇:流行病学实习教程答案
流行病学实习指导一答案
实习一 描述性研究
【课题一】
(二)疾病的三间分布
1、疾病的时间分布
【课题三】脊髓灰质炎是肠道传染病,肠道传染病夏秋季高发,意大利在北半球,因此,随着夏秋季的来临,脊髓灰质炎发病率逐渐升高,到9-10月份达到发病高峰;而阿根廷在南半球,季节正好与意大利相反,因此,其发病高峰集中在3月份左右。
脊髓灰质炎是肠道传染病,而麻疹是呼吸道传染病,肠道传染病夏秋季高发,而冬春季比较干燥,因此是呼吸道传染病的高发期。
2、疾病的地区分布 【课题四】
各国冠心病死亡率存在差别的可能原因有遗传因素,饮食习惯,生活方式和医疗卫生服务的质量和水平。在分析时应注意各国收集资料的完整性不同可能造成的偏倚。各国诊断水平不同也可能产生偏倚。
【课题五】
从资料可以看出,在地方性甲状腺肿流行地区,该病的发生与当地环境中的碘含量有关。(相关资料,海洋是地球上碘的重要蓄积场所,来自海洋的碘蒸汽和微量碘尘与空气混合后,流向地区各地区时,引起分子量叫空气的平均分子量29大,所以距海洋远或被高山隔绝的地区,空气中含碘量也较少,此外,一地区的环境含碘量还与地势变化和被水冲刷,淋失有关。)
3、疾病的人群分布 【课题六】
一方面,婴儿由母体获得的抗体在出生后即逐渐下降,
另一方面,6个月龄后婴儿麻疹发病率逐渐上升,使感染者血清中出现相应抗体。 【课题七】
红绿色盲和血友病是X连锁隐性遗传病,由于女性体细胞有两条x染色体,当隐性致病基因在杂合状态(XAXa)时,隐性基因控制的性状或遗传病不显示出来,这样的女性为表型正常的致病基因携带者。只有当两条X染色体上等位基因都是隐性致病基因纯合子(XaXa)时才表现出来。在男性体细胞中,只有一条X染色体,Y染色体上缺少同源阶段,所以只要X染色体上有一个隐性致病基因(XaY)就发病,因此红绿色盲和血友病的发病率均为男性高于女性。
第二篇:皮肤性病学病例分析及答案
1、患者,女,28岁。右足趾间瘙痒伴丘疹、水疱1月余,未给予治疗,昨日突发右侧足背、小腿红肿、疼痛。体检:T38.5℃,右足趾间针头大小丘疹,水疱伴轻度糜烂;右足背至胫前大片红斑、肿胀,紧张发亮,皮温高、触痛,右腹股沟可扪及肿大淋巴结;左腿正常。WBC 12.5×109/L,N85%。 1)最有可能的诊断
(丹毒)
2)可以通过哪些检查确定诊断
(血常规
皮损真菌学直检)
3)首选的治疗
全身治疗: 青霉素,480万单位静脉点滴,每日2次。
局部治疗:0.1%依沙丫啶溶液湿敷。
2、患者,男,67岁。右侧胸部出现水疱伴剧烈疼痛4天。现病史:患者4天前,于右侧胸部开始出现疼痛,而后相继起红斑及水疱,沿肋间分布,未超过正中线,皮损破溃、糜烂,局部脓性分泌物;剧烈疼痛,夜不能寐。 1)最有可能的诊断
(带状疱疹)
2)拟定治疗方案
(抗病毒 、消炎、止痛、局部对症处理)
抗病毒:阿昔洛韦,每次200~800mg,每4小时一次,一日5次,连用7~10天。 也可用伐昔洛韦
镇静止痛:口服去痛片;睡前服用 地西泮或安定 5.0mg 。肌注或口服VB12及VB1
糖皮质激素
口服
泼尼松30~40mg/d
理疗
中医中药内服龙胆泻肝丸
3、患者,女,30岁。全身泛发皮疹伴发热6天。患者6天前因咳嗽、流涕,自服阿莫西林、板蓝根冲剂等药物,6天前出现皮疹,渐泛发全身,伴发热、食欲不振,大小便正常。既往有头孢类药物过敏史。查体:全身泛发红斑、部分呈靶形损害,对称分布、以四肢伸侧为主,口腔黏膜糜烂。
1)最有可能的诊断及可能出现的并发症
药物性皮炎(阿莫西林过敏)
2)首要的处理措施
停止服用致敏药物,控制感染。
内服:尽早应用糖皮质激素,如氢化可的松200~400mg ,或地塞米松10~20mg ,每日一次静脉滴注,待全身症状好转后逐渐减量至停药;及时选用抗生素控制和预防感染;
外用:
皮肤损害:炉甘石洗剂、糖皮质激素乳剂。口腔 粘膜损害:复方硼砂溶液或2%碳酸氢钠溶液漱口。忌辛辣腥。
4、患者,男,18岁。全身瘙痒半月余,当地医院拟皮炎或湿疹治疗无效,且皮 损加重,夜间瘙痒明显。查体:全身以腹部、大腿内侧为主,散在分布针头大小红色或皮色丘疹,部分结痂少许渗出,手指间渗出明显;阴囊、包皮可见散在结节。家中多人出现类似皮疹。
1)最有可能的诊断及诊断依据
(疥疮) ;依据: 夜间瘙痒明显,家庭多人被传染,皮损部位外阴。
2)拟定治疗方案及注意事项
治疗:10%硫磺软膏外用
洗澡后用该药涂抹全身皮损处无皮损也涂,早晚各一次,连用3—7天。用药期间不洗澡不换衣服。用药结束后次日洗澡,换下衣服烫洗灭虫。家庭成员应同时治疗,治疗后观察两周如有复发应重复治疗。
5、患者,女,20岁,不规则低热6月,伴双膝、踝关节肿痛、下肢浮肿,近2月面部出现水肿性红斑,似蝶形。双眼浮肿,畏光,易腰酸,全身乏力。医院门诊化验:血沉100mm/h,血Hb 86g/L,WBC 2.3×109/L ,RBC 3.0×1012/L,血小板51×109/L;尿蛋白(+++)。
1)最可能的初步诊断及诊断依据 (诊断:系统性红斑狼疮 ;依据:蝶形红斑、畏光、尿蛋白(+++)、、、、、、、血液学异常
2)患者入院后,可做哪些检查
抗核抗体反应 、抗双链DNA抗体反应 、Sm抗体检查
该病的临床诊断标准 1. 2. 3. 4. 5. 6. 7. 8. 9. 蝶形红斑 盘状红斑 光敏感; 口腔或鼻咽部溃疡; 非侵蚀性关节炎; 浆膜炎(胸膜炎或心包炎); 神经系统病变:癫痫或精神症状; 肾损害:1.持续性蛋白尿,每日尿蛋白>0.5g或“+++”以上;或②细胞管型; 血液学异常:①溶血性贫血;或②白细胞<4000/mm3,两次;或淋巴细胞<15000mm3,两次;或④血小板<10万/mm3 10. 免疫学异常:①LE细胞;或②抗dsDNA抗体滴度异常;或③有抗Sm抗体;或④梅毒血清学反应假阳性; 11. 荧光抗核抗体阳性
6、患者,女,45岁。一年前开始出现低热、乏力,近半年来逐渐出现四肢肌肉酸痛,举手及爬楼困难,同时于眼睑、指关节伸侧面出现红色皮疹。 1)最有可能的诊断
皮肌炎 2)为明确诊断,最佳的辅助检查有哪些
血清霉(肌酸磷酸激酶和醛缩酶) 3)首选的治疗
糖皮质激素联合甲氨蝶呤
7、男性患者,26岁,未婚。患者阴茎部出现钱币大小浅表溃疡20余天,无其他不适,自服抗生素,外涂百多邦等治疗无效。体检:阴茎部可见钱币大的浅表溃疡,表面湿润,上有少许分泌物,无脓。 其余均正常。 1)最可能的初步诊断 早期梅毒
2)如需确诊,还需哪些检查 病史,体检,性病实验室特殊检查
3)治疗方案 苄星青霉素G240万单位,分两侧臀部肌肉注射,每周一次,共3周;或普鲁卡因青霉素G,每日80万单位,肌肉注射,每日一次,连续15日。 代替方案:头孢曲松1g,肌肉注射,或静脉给药,连续10天.
8、男,46岁。患皮肤病10余年,反复发作,累及全身。躯干及四肢伸侧分布大小不
一、界限清楚的红色斑块,表面覆有多层鳞屑,鳞屑易剥除,下方呈发亮 淡红色薄膜及点状出血。头部皮损表面有较厚鳞屑,头发成束。手足甲呈凹陷点,甲床增厚。
1)最可能的初步诊断及诊断依据 寻常型银屑病 依据:多层鳞屑,鳞屑易剥除,下方呈发亮淡红色薄膜及点状出血。头发成束。
2)拟定治疗方案
内用:甲氨蝶呤
维A酸类。 外用:急性期不宜用刺激性药物
物理疗法:水疗
光疗
3)该病的临床分型
寻常型 、脓疱型 、关节病型 、红皮病型
第三篇:皮肤性病学三基考试试题及答案
姓名:
科室:
得分:
1、单项选择题(25题,每题2分)
C(1)目前被称为“超级癌症”的性传播疾病是:
A.梅毒 B.淋病 C.艾滋病 D.软下疳 E.巨大湿疣
D(2)下列不属于性传播疾病的是:
A.生殖器疱疹 B.传染性软疣 C.软下疳
D.女性假性湿疣 E.性病性淋巴肉芽肿 E(3)二期梅毒的骨关节损害最常见的是:
A.骨折 B.骨软同有炎 C.关节强直 D.骨髓炎 E.骨膜炎
E(4)关于一期梅毒,哪项是错误的?
A.一般患者起病前有不洁性交史
B.潜伏期是2~4周左右 C.硬下疳是主要的表现
D.在硬下疳处取材以暗视野检查可见苍白螺旋体
E.梅毒血清试验阴性可排除一期梅毒 B(5)当前我国性传播疾病中居首位的是:
A.梅毒
B.淋病
C.尖锐湿疣 D.生殖器疱疹
E.非淋菌性尿道炎
C(6)非淋病性尿道炎的潜伏期一般是:
A.1周内 B.1~2周 C.1~3周 D.3~4周 E.4~5周
E(7)非淋病性尿道炎的主要病原体是:
A.厌氧革兰阴性杆菌 B.阴道毛滴虫 C.金黄色葡萄球菌
D.链球菌 E.沙眼衣原体或解脲支原体 A(8)头面部的带状疱疹可引起面瘫、耳痛、外耳道疱疹三联征,称 A.Ramsay-Hunt综合征 B.哈钦森三联征 C.Gottron征 D.Auspitz征
E.Stevens-Johnson征
B(9)下列关于寻常型银屑病的病理,哪个不正确
A.角化不全 B.颗粒层增厚 C.棘层增厚
D.表皮突规则下延
E.真皮浅层淋巴细胞浸润
C(10)下列不是带状疱疹分型的是 A.无疹型 B.出血疹 C.局限型 D.坏血型 E.泛发型
A(11)艾滋病已成为流行于何处的传染病 A.全世界五大洲 B.美国 C.非洲 D.亚洲
E.美洲与非洲
C(12)药疹的治疗哪项是错误的 A.可用钙剂 B.给抗过敏药
C.所有药疹都必须内用糖皮质激素 D.只有重症药疹才能内用糖皮质激素 E.可给维生素
B(13)关于银屑病治疗的注意事项,不正确的是
A.避免诱发因素
B.追求彻底治愈,可全身使用糖皮质激素 C.对于进行期皮损,禁用刺激性强的药物 D.应针对不同病因、类型、病期给药 E.局限性皮损,以局部外用药为主
A(14)一妇女染发几小时后,面部出现红斑,肿胀明显,应考虑 A.变态反应性接触性皮炎 B.原发刺激性接触性皮炎 C.过敏
D.特应性皮炎 E.急性湿疹
C(15)快速鉴别头癣类型的方法是 A.镜检 B.培养 C.伍氏灯 D.病理 E.视诊
B(16)患者女,21岁,面部皮疹两月余,无自觉症状,皮疹为米粒大到绿豆大扁平隆起的丘疹,表面光滑,质硬,浅褐色,圆形、椭圆形或多角形,有的呈串珠状排列,可能
的诊断为 A.寻常疣 B.扁平疣 C.丝状疣 D.湿疹 E.老年疣
A(17)关于痤疮以下哪种说法不对 A.只有青年人才发病 B.发病与多种因素有关 C.可造成多种形态的损害 D.常反复发作持续数年 E.可有婴儿痤疮
C(18)某病人于颜面部反复出现蝶形皮损,其上覆有银白色鳞屑,冬季症状加重,久治不愈,考虑为
A.慢性单纯性苔藓 B.摩擦性苔藓 C.银屑病
D.光化性皮炎 E.湿疹
E(19)股癣发生的部位不包括 A.腹股沟
B.会阴 C.肛周 D.臀部 E.大腿
B(20)诊断接触性皮炎最常做的皮肤试验是
A.皮肤划痕试验 B.皮肤斑贴试验 C.皮内试验
D.被动转移试验 E.食物排除试验
B(21)在二期梅毒的皮疹是下列那一种 A.软下疳 B.扁平湿疣 C.尖锐湿疣 D.树胶肿
E.结节性梅毒疹
B(22)关于结节性痤疮及囊肿性痤疮哪项错误
A.多见于男性 B.多见于女性 C.不易消退
D.愈后遗留萎缩性或增生性瘢痕
E.继发细菌感染时皮损红肿明显、有压痛 C(23)下列有关湿疹的治疗叙述错误的是 A.内服药的目的主要是抗炎止痒 B.合并感染者,可加用抗生素
C.慢性湿疹迁延不愈者,需口服糖皮质激素
D.根据皮疹形态特点,选用适当的剂型和药物
E.消除体内慢性病灶及其他全身性疾病 B(24)下列哪种疾病与水痘为同一病因 A.妊娠疱疹 B.带状疱疹 C.单纯疱疹
D.Kaposi水痘样疹 E.天花
A(25)药疹与下列哪项关系正确
A.皮疹与药理作用无关,与服药量无一定相关性
B.皮疹与药理作用有关,与服药量有一定相关性
C.剂量大才能发生皮疹
D.与季节有关,春夏季易发 E.与服药时间有关
2、名词解释(共4题,每题5分) (1)丘疹 (2)丹毒 (3)雷诺现象 (4)角化不良 (5)赫氏反应
3、问答题(共3题,每题10分)
(1)淋菌性尿道炎与非淋菌性尿道炎的区别
(2)简述一期梅毒的诊断要点。
(3)简述急性湿疹的皮损特点及外用治疗原则。 答案 一:
1-5
CDEEB
6-10
CEABC 11-15 ACBAC
16-20 BACEB 21-25 BBCBA 二:
1、 丘疹为一限局性隆起皮肤表面的实质性损害。视诊可看到,触诊可触及丘状损
害,一般范围较小其直径通常在1cm以内。若丘疹扩大或丘疹互相融合成扁平隆起呈片状则称为斑块。
2、 丹毒(Erysipelas) 是皮肤及其网状淋巴管的急性炎症。好发于下肢和面部。其病原菌是A族乙型溶血性链球菌,多由皮肤或粘膜破伤而侵入,但亦可由血行感染。
3、 雷诺现象和雷诺病合称雷诺综合征,最早由Raynaud医生报道而得名,是一种以皮肤苍白、青紫而后潮红为特征的疾病。病因尚不明确,多有寒冷、情绪波动以及其他诱发因素,是由于间歇性末梢小动脉痉挛、管腔狭窄引起的一种血管疾病。
4、 角化不良(dyskeratosis)也称错角化,是指在上皮的棘层或基底层出现个别或成群的细胞角化。角化不良有两种情况:一种是良性角化不良,多在高度增生的上皮钉突中出现,细胞分化好;另一种为恶性角化不良,有时可见细胞核,细胞形态有异型性,见于重度异常增生、原位癌及鳞状细胞癌。
5、 钩体病患者在接受首剂青霉素或其他
抗菌药物后,可因大量勾体被杀死而释放毒素引起临床症状的加重反应,常为高热、寒战、血压下降,称为赫克斯海默尔反应,简称赫氏反应。 三:
1、非淋菌性尿道炎和淋病的主要区别如下:(1)病原体不同;(2)临床症状不同;(3)治疗方法不同。
(1)病原体不同。非淋菌性尿道炎的病原体是沙眼衣原体和支原体、白色念珠菌、阴道毛滴虫等,而淋病的病原体是淋病双球菌。
(2)临床症状不同。非淋菌性尿道炎的临床症状是分泌物呈乳白色,以慢性尿道炎的形式表现出来;而淋病的开始症状是自尿道口流出大量黄色脓性分泌物,以急性尿道炎的形式表现出来。
(3)治疗方法不同。非淋菌性尿道炎的治疗药物以四环素类、红霉素药物为主;而淋病的治疗药物以青霉素类、头孢菌素类药物为主。
2、1)有不洁性交、嫖娼、配偶感染史或同性
恋史。
2)潜伏期2—4周。
3)主要表现为硬下疳,常为单个、无痛无痒、境界清楚、直径1—2Cm大小、触之如软骨样硬度,表面可糜烂或浅溃疡,渗出物中有大量的梅毒螺旋体。
4)常发生在外生殖器部位,如男性的冠状沟,龟头,系带及包皮,女性的大阴唇,小阴唇,宫颈等部位,男性同性恋者可发生在肛周及直肠、偶见于唇、咽等处。
5)局部淋巴结肿大,单侧或双侧。
6)不经治疗3—8周内硬下溶可自然消失,不留痕迹或仅留轻度萎缩性疤。
7)分泌物涂片作暗视野显微镜检查,可见多数活动的螺旋体。梅毒血精试验:硬下疳早期阴性,7—8周后大部分患者呈阳性结果。
3、急性湿疹表现为原发性和多形性皮疹,常在红斑基础上有针头大小的丘疹,丘疱疹严重时有小水疱,常融合成片,境界不清,在损害周边,丘疱疹逐渐稀释。皮疹分布对称,多见于面、耳、手、足、前臂、小腿外
露部位,严重 科弥漫全身,自觉瘙痒较重,常因骚抓形成点状糜烂面,有结合明显浆液行渗出,如继发感染,则形成脓疱、脓液。 外用治疗:应充分遵循外用药物的使用原则。急性期无渗液或渗出不多者科用氧化锌油,渗出多者可用3%硼酸溶液作湿敷,渗出减少后用糖皮质激素霜剂,可和油剂交替使用。
第四篇:党课教程前四讲答案
第一讲 第一题
如何理解中国共产党领导的多党合作和政治协商制度的历史必然性和巨大优越性? 必然性:中国共产党领导的多党合作和政治协商制度是我国的一项基本政治制度。这项制度是党领导人民争取民族独立和人民解放的长期武装斗争历程中逐步形成的,是在我们党领导全国人民进行社会主义建设和改革开放的伟大实践中不断完善发展的。长期的革命和建设实践证明,只有社会主义才能救中国,没有共产党就没有新中国,领导我们事业的核心力量是中国共产党,实行中国共产党领导的多党合作和政治协商制度,是我党与民主党派及全国各族人民共同作出的完全正确的历史抉择。
优越性:我国政党制度有利于发展社会主义民主政治;有利于社会和谐稳定;有利于加强执政党建设。 第二讲 第一题
新民主主义革命胜利的伟大历史意义和基本经验有哪些?
历史意义:首先,中国新民主主义革命的胜利,结束了帝国主义,封建主义和官僚资本主义在中国的统治,建立了新中国;其次,中国新民主主义革命的胜利,对世界历史的发展产生了深远的影响;最后,中国革命的胜利,是马克思列宁主义、毛泽东思想的胜利。
基本经验:首先,中国共产党之所以能够把中国革命引向胜利,是由于坚持了马克思列宁主义的普遍真理同中国革命的具体实践相结合的正确方向;其次,没有中国共产党的领导,就没有新中国;再次,建立一个最广泛的革命统一战线是中国革命胜利的基础;最后,在中国实行人民民主专政制度,是中国革命发展的历史必然性。 第三题
请简要谈一下如何正确认识和把握党的历史?
(1)党性原则。党性原则是党史党性的必然要求,根本上是要坚持以马克思主义的辩证唯物主义和历史唯物主义观点。
(2)实事求是原则。要全面记载和客观反映党的历史,充分肯定党对中华民族和中国人民的伟大贡献,正确对待党在前进道路上经历的失误和挫折,深入总结正反两方面经验,科学分析和评价历史事件和人物,使党史成果经得起历史和人民检验。 (3)不过分追究个人责任的原则。
第三讲
第1题 为什么说马列主义是中国共产党的根本指导思想?
马克思主义作为我们党和国家的根本指导思想,是因为马克思主义具有严密的科学体系 ,鲜明的阶级立场,巨大的实践指导作用。
1借助马克思主义,现代无产阶级第一次具有了阶级意识,成为自己解放自己的历史主体。
2只有马克思主义、而没有别的什么主义能够成为无产阶级及其政党的指导思想。 3如何对待马克思主义,无论是革命还是建设,都是第一位重要的问题 第2题 中国特色社会主义理论体系包含哪些内容?P59 答:中国特色社会主义理论体系,就是包括邓小平理论、“三个代表”重要思想以及科学发展观等重大战略思想在内的科学理论体系,是对马克思列宁主义、毛泽东思想的坚持和发展。它系统回答了什么是社会主义、怎样建设社会主义,建设什么样的党、怎样建设党,实现什么样的发展、怎样发展等一系列重大问题。
1.邓小平理论主要内容:
社会主义本质理论。社会主义的本质,是解放生产力,发展生产力,消灭剥削,消除两极分化,最终达到共同富裕。
社会主义初级阶段理论。我国还处于社会主义初级阶段,这是一个至少上百年的历史阶段,
社会主义市场经济理论。“四项基本原则”,即坚持社会主义道路,坚持人民民主专政,坚持中国共产党的领导,坚持马克思列宁主义毛泽东思想,这是立国之本。
2.“三个代表”重要思想
中国共产党必须始终代表中国先进生产力的发展要求,代表中国先进文化的前进方向,代表中国最广大人民的根本利益。回答了新历史条件下建设什么样的党、怎样建设党这一重大问题。
3.科学发展观
科学发展观,第一要务是发展,核心是以人为本,基本要求是全面协调可持续发展,根本方法是统筹兼顾。 解放思想、实事求是、与时俱进、求真务实,是科学发展观最鲜明的精神实质。
第3题 如何理解科学发展观?P62 答:
(一)科学发展观内涵
科学发展观,第一要务是发展,核心是以人为本,基本要求是全面协调可持续发展,根本方法是统筹兼顾。 解放思想、实事求是、与时俱进、求真务实,是科学发展观最鲜明的精神实质。
1. 必须坚持把发展作为党执政兴国的第一要义。要牢牢扭住经济建设这个中心,坚持聚精会神搞建设、一心一意谋发展,不断解放和发展社会生产力。要着力把握发展规律、创新发展理念、转变发展方式、破解发展难题,提高发展质量和效益,实现又好又快发展。
2. 必须坚持以人为本。要始终把实现好、维护好、发展好最广大人民的根本利益作为党和国家一切工作的出发点和落脚点,尊重人民主体地位,发挥人民首创精神,保障人民各项权益,走共同富裕道路,促进人的全面发展,做到发展为了人民、发展依靠人民、发展成果由人民共享。
3. 必须坚持全面协调可持续发展。要按照中国特色社会主义事业总体布局,全面推进经济建设、政治建设、文化建设、社会建设,促进现代化建设各个环节、各个方面相协调,促进生产关系与生产力、上层建筑与经济基础相协调。
4. 必须坚持统筹兼顾。要正确认识和妥善处理中国特色社会主义事业中的重大关系,统筹个人利益和集体利益、局部利益和整体利益、当前利益和长远利益,充分调动各方面积极性。既要总揽全局、统筹规划,又要抓住牵动全局的主要工作、事关群众利益的突出问题,着力推进、重点突破。
(二)贯彻落实科学发展观的基本要求
深入贯彻落实科学发展观,要求我们始终坚持“一个中心、两个基本点”的基本路线。党的基本路线是党和国家的生命线,是实现科学发展的政治保证。以经济建设为中心是兴国之要,是我们党、我们国家兴旺发达和长治久安的根本要求;四项基本原则是立国之本,是我们党、我们国家生存发展的政治基石;改革开放是强国之路,是我们党、我们国家发展进步的活力源泉。
深入贯彻落实科学发展观,要求我们积极构建社会主义和谐社会。深入贯彻落实科学发展观,要求我们继续深化改革开放。深入贯彻落实科学发展观,要求我们切实加强和改进党的建设。
第4题 为什么说,当代中国,坚持中国特色社会主义理论体系,就是真正坚持马克思主义?P65
答:中国特色社会主义理论体系,既坚持了科学社会主义的基本原则,又根据我国实际和时代特征赋予其鲜明的“中国特色”。在当代中国,坚持马克思主义,就必须坚持中国特色社会主义理论体系;坚持中国特色社会主义理论体系,就是真正坚持马克思主义。
1. 中国特色社会主义理论体系是同马克思列宁主义、毛泽东思想既一脉相承又与时俱进的理论体系。
中国特色社会主义理论体系,坚持了马克思主义的辩证唯物主义和历史唯物主义的根本方法,创造性地运用它们分析当今世界和当今中国的实际,推动马克思主义理论品质的与时俱进和不断创新,这都充分表明这一理论体系既具有鲜明的时代特征,又坚持和发展了马克思列宁主义、毛泽东思想,是真正的马克思主义。
2. 中国特色社会主义理论体系,坚持和发展了马克思列宁主义、毛泽东思想,凝结了几代中国共产党人带领人民不懈探索实践的智慧和心血,是马克思主义中国化的最新理论成果。
实践证明,中国特色社会理论体系,就是实现中华民族伟大复兴的科学理论。在当代中国,坚持马克思主义,就是坚持中国特色社会主义理论体系。
3. 只有高举中国特色社会主义旗帜,才能发展中国、发展社会主义,实现中华民族的伟大复兴。
在当代中国,只有中国特色社会主义旗帜而不是别的什么旗帜能够最大限度的团结和凝聚不同社会阶层、不同利益群体人们的智慧和力量,只有中国特色社会主义能够解决当代中国的前途和命运问题。高举中国特色社会主义旗帜,是历史的选择、时代的选择、人民的选择。
第5题 如何理解当代大学生要自觉用中国特色社会主义理论体系武装头脑?P65 答:大学生要坚持以十八大精神为指导,用中国特色社会主义理论体系武装头脑,坚定走中国特色社会主义道路的理想信念。
首先,要加强学习,坚定信念。„„ 其次,要用于实践,求真务实。„„ 大学生要坚持用邓小平理论、“三个代表”重要思想以及科学发展观武装头脑,把理想信念建立在对科学理论的理性认同上,建立在对历史规律的正确认识上,建立在对基本国情的准确把握上,不断增强道路自信、理论自信、制度自信,增强对坚持党的领导的信念,永远紧跟党,高高举起中国特色社会主义旗帜。
3.5 如何理解当代大学生要自觉用中国特色社会主义理论体系武装头脑?
答:大学生要坚持以十八大精神为指导,用中国特色社会主义理论体系武装大脑,坚定走中国特色社会主义道路的坚定信念。
首先,要加强学习,坚定信念。通过学习,大学生要不断增强坚持中国特色社会主义道路、中国特色社会主义理论体系,深入实践党的创新理论,不断增强政治意识、责任意识、忧患意识,大力弘扬党的优良传统和作风,艰苦奋斗、埋头苦干,奋发进取、开拓创新,进一步确立为中华民族伟大复兴而奋斗的理想和跟党走中国特色社会主义道路的坚定信念。
其次,要勇于实践,求真务实。求真务实是中国特色社会主义理论特色的集中表现。实践发展永无止境,认识真理永无止境,理论创新永无止境。中国特色理论只有体现为当代大学生自觉行动,才能真正凸显其价值。 4.1 如何全面把握党的性质?
中国共产党是中国工人阶级先锋队,同时也是中国人民和中华民族的先锋队,是中国社会主义事业的领导核心。代表中国先进生产力发展要求;代表中国先进文化的前进方向;代表中国最广大人民的根本利益。
4.2 “发展为了人民、发展依靠人民、发展成果由人民共享”的认识?
坚持发展为了人民,就是要把实现好、维护好、发展好最广大人民的根本利益,作为党和政府一切方针政策和各项工作的根本出发点和落脚点,坚持用人民拥护不拥护、赞成不赞成、高兴不高兴、答应不答应来衡量一切决策,把发展的目的真正落实到满足人民需要、实现人民利益、提高人民生活水平上。
坚持发展依靠人民,就是要尊重人民的主体地位和首创精神,密切联系群众,始终相信群众,紧紧依靠群众,最充分地调动人民群众的积极性、主动性、创造性,最大限度地集中全社会全民族的智慧和力量,最广泛地动员和组织亿万群众投身中国特色社会主义伟大事业。
坚持发展成果由人民共享,就是要把改革发展取得的各方面成果,体现在不断提高人民的生活质量和健康水平上,体现在不断提高人民的思想道德素质和科学文化素质上,体现在充分保障人民享有的经济、政治、文化、社会等各方面权益上,让经济社会发展的成果惠及全体人民。
4.3 党的最高纲领和最低纲领分别是什么? 答:最高纲领:实现共产主义
最低纲领:党在社会主义初级阶段奋斗目标,是建设中国特色社会主义,把我国建设成为富强民主和谐的社会主义现代化国家。
4.4 怎样正确理解党在社会主义初级阶段的基本路线和基本纲领?
答:基本路线是:领导和团结全国各族人民,以经济建设为中心,坚持四项基本原则,坚持改革开放,自力更生,艰苦创业,为把我国建设成为富强、民主、文明的社会主义现代化国家而奋斗。
基本纲领:主要包括发展中国特色社会主义经济、政治、文化、社会、生态文明五个方面。 4.5 全面建成小康社会的主要目标是什么?
答:全面建成小康社会,是一个宏观与微观,城市和农村,经济、政治、文化、社会与生态环境以及人的全面发展在内的综合性、系统性目标。表现为:国家工业化基本实现、综合国力显著增强、国内市场总体规模居世界前列、人民富裕程度普遍提高、生活质量明显改善、生态环境良好、人民享有更加充分民主权利、具有更高文明素质和精神追求,我国成为各方面制度更加完善,社会更加充满活力而又安定团结的国家,成为对外更加开放,更具有亲和力,为人类文明做出更大贡献。
第五篇:面向对象程序设计教程 答案
面向对象程序设计教程(C++语言描述)题解与课程设计指导
第1章
面向对象程序设计概论
一、 名词解释 抽象封装消息 【问题解答】
面向对象方法中的抽象是指对具体问题(对象)进行概括,抽出一类对象的公共性质并加以描述的过程。
面向对象方法中的封装就是把抽象出来的对象的属性和行为结合成一个独立的单位,并尽可能隐蔽对象的内部细节。
消息是面向对象程序设计用来描述对象之间通信的机制。一个消息就是一个对象要求另一个对象实施某种操作的一个请求。
二、 填空题 (1) 目前有面向过程的结构化程序设计方法和面向对象的程序设计方法两种重要的程序设计方法。
(2) 结构化程序设计方法中的模块由顺序、选择和循环3种基本结构组成。 (3) 在结构化程序设计方法中,程序可表示为程序=数据结构+算法; 而面向对象的程序设计方法,程序可表示为程序=对象+消息。 (4) 结构化程序设计方法中的基本模块是过程; 而面向对象程序设计方法中的基本模块是类。
(5) 面向对象程序设计方法具有抽象性、封装性、继承性和多态性等特点。
三、 选择题(至少选一个,可以多选)
(1) 面向对象程序设计着重于( B )的设计。 A. 对象B. 类C. 算法D. 数据 (2) 面向对象程序设计中,把对象的属性和行为组织在同一个模块内的机制叫做( C )。
A. 抽象 B. 继承 C. 封装 D. 多态
(3) 在面向对象程序设计中,类通过( D )与外界发生关系。 A. 对象 B. 类 C. 消息 D. 接口
(4) 面向对象程序设计中,对象与对象之间的通信机制是( C )。 A. 对象 B. 类 C. 消息 D. 接口
(5) 关于C++与C语言的关系的描述中,( D )是错误的。 A. C语言是C++的一个子集 B. C语言与C++是兼容的
C. C++对C语言进行了一些改进 D. C++和C语言都是面向对象的
【结果分析】
C语言是面向过程的。C++语言是一种经过改进的更为优化的C语言,是一种混合型语言,既面向过程也面向对象。
(6) 面向对象的程序设计将数据结构与( A )放在一起,作为一个相互依存、不可分割的整体来处理。 A. 算法 B. 信息 C. 数据隐藏 D. 数据抽象 (7) 下面( A )不是面向对象系统所包含的要素。
A. 重载 B. 对象 C. 类 D. 继承 【结果分析】
面向对象=对象+类+继承+消息+多态 (8) 下面说法正确的是( BC )。
A. 将数据结构和算法置于同一个函数内,即为数据封装 B. 一个类通过继承可以获得另一个类的特性
C. 面向对象要求程序员集中于事物的本质特征,用抽象的观点看待程序 D. 同一消息为不同的对象接受时,产生的行为是一样的,这称为一致性 【结果分析】
面向对象程序设计方法具有抽象性、封装性、继承性和多态性等特点。将数据结构和算法置于同一个类内,即为数据封装。同一消息为不同的对象接受时,产生的行为可能是不一样的,这称为多态性。 (9) 下面说法正确的是( AD )。
A. 对象是计算机内存中的一块区域,它可以存放代码和数据 B. 对象实际是功能相对独立的一段程序
C. 各个对象间的数据可以共享是对象的一大优点
D. 在面向对象的程序中,对象之间只能通过消息相互通信 【结果分析】
对象是计算机内存中的一块区域。在对象中,不但存有数据,而且存有代码,使得每个对象在功能上相互之间保持相对独立。对象之间存在各种联系,但它们之间只能通过消息进行通信。
四、 判断题
(1) 在高级程序设计语言中,一般用类来实现对象,类是具有相同属性和行为的一组对象的集合,它是创建对象的模板。( √ )
(2) C++语言只支持面向对象技术的抽象性、封装性、继承性等特性,而不支持多态性。( × ) 【结果分析】
C++语言不仅支持面向对象技术的抽象性、封装性、继承性等特性,而且支持多态性。
(3) 面向对象程序设计中的消息应该包含“如何做”的信息。( × ) 【结果分析】
消息是面向对象程序设计用来描述对象之间通信的机制。向对象“发送消息”只需告诉对象做什么,对象根据这个消息决定如何做。 (4) 一个消息只能产生特定的响应效果。( × ) 【结果分析】
当一个对象发出消息时,由于接收对象的类型可能不同,所以,它们可能做出不同的反应。这样,一个消息可以产生不同的响应效果,这种现象叫做多态。 (5) 类的设计和类的继承机制实现了软件模块的可重用性。( √ ) (6) C++语言和Java语言均不是一个纯正的面向对象的程序设计的语言。( × ) 【结果分析】
Java语言是一个纯正的面向对象的程序设计语言。 (7) 学习C++语言是学习面向对象的程序设计方法的唯一途径。( × ) 【结果分析】
程序设计方法是独立于具体程序设计语言的一种技术,学习C++语言是学习面向对象程序设计方法的重要途径之一。
(8) 在C++语言中,类是支持数据封装的工具。( √ )
五、 简答题
(1) 什么是结构化程序设计方法?它有哪些优点和缺点? 【问题解答】
结构化程序设计方法着眼于系统要实现的功能,从系统的输入输出出发,分析系统要做哪些事情,进而考虑如何做这些事情,自顶向下地对系统的功能进行分解,来建立系统的功能结构和相应的程序模块结构,有效地将一个较复杂的程序系统设计任务分解成许多易于控制和处理的子任务,便于开发和维护。 随着程序规模与复杂性的增长,这种面向过程的结构化程序设计方法存在明显的不足之处。首先是数据安全性问题。由于数据被每个模块所共用,因此是不安全的,一旦出错,很难查明原因。其次是可维护性及可重用性差。它把数据结构和算法分离为相互独立的实体,一旦数据结构需要改变时,常常要涉及整个程序,修改工作量极大并容易产生新的错误。每一种相对于老问题的新方法都要带来额外的开销。另外,图形用户界面的应用程序,很难用过程来描述和实现,开发和维护也都很困难。
(2) 什么是面向对象程序设计方法?它有哪些优点? 【问题解答】
面向对象的程序设计方法中,将程序设计为一组相互协作的对象而不是一组相互协作的函数。在程序中,属性用数据表示,用来描述对象静态特征; 行为用程序代码实现,用来描述对象动态特征。可见,在面向对象的程序设计方法中,对象是数据结构和算法的封装体。对象之间存在各种联系,它们之间通过消息进行通信。程序可表示为:
程序=对象+消息
在面向对象程序设计中应着重于类的设计。类正是面向对象语言的基本程序模块,通过类的设计来完成实体的建模任务。类通过一个简单的外部接口与外界发生关系。一个类中的操作不会处理到另一个类中的数据,这样程序模块的独立性、数据的安全性就有了良好的保障。程序的执行取决于事件发生的顺序,由顺序产生的消息来驱动程序的执行。不必预先确定消息产生的顺序,更符合客观世界的实际。并且面向对象程序设计方法提供了软件重用、解决大问题和复杂问题的有效途径,具有抽象性、封装性、继承性和多态性等特点。
(3) 结构化程序设计方法与面向对象程序设计方法在对待数据结构和算法关系上有 什么不同? 【问题解答】
结构化程序设计方法中,把数据结构和算法分离为相互独立的实体; 而在面向对象程序设计中,数据结构和算法封装在一起,结合成一个独立的单位,即对象,并尽可能隐蔽对象的内部细节。对象的私有属性只能由这个对象的行为来读取和修改,与外部的联系通过公有行为充当外部接口。 第 2 章
从C到C++
面向对象程序设计教程(C++语言描述)题解与课程设计指导
第2章 从C到 C++
一、 名词解释
引用内联函数重载函数 【问题解答】
所谓引用就是给对象取一个别名,使用该别名可以存取该对象。换句话说是使新对象和原对象共用一个地址。
内联函数是使用inline关键字声明的函数。
重载函数指在同一个作用域内名字相同而参数不同的函数。重载函数通常用来对具有相似行为而数据类型或数据个数不同的操作提供—个通用的名称。
二、 填空题
(1) 一般情况下,用C++语言编写的程序是由函数加上类组成的。 (2) C++有两种注释符号,一种是//,另一种是 /*„„*/。
(3) 使用C++风格的输入输出,在程序中必须包含头文件“iostream”。 (4) cin是预定义的标准输入流对象,>>是输入操作符,也称提取运算符。 (5) cout是预定义的标准输出流对象,<<是输出操作符,也称插入运算符。 (6) 指针的值是它所指向那个对象的地址值。指针的类型是它所指向对象的类型。指针的内容便是它所指向对象的值。
(7) C++使用运算符&来定义一个引用,对引用的存取都是对它所引用的对象的存取。 (8) 当一个函数调用出现在函数定义之前时,必须先用函数原型对函数进行声明。
(9) C++有值传递和引用传递两种参数传递机制。 (10) 使用关键字inline声明的函数称为内联函数。 (11) 运算符new用于进行动态内存分配,运算符delete用于释放动态分配的内存。
(12) 下面程序的输出结果为x=10,y=10;
x=100,y=100。
#include
using namespace std;
int main()
{
int x=10,&y=x;
cout<<"x="<
int *p=&y;
*p=100;
cout<<"x="<
return 0;
}
三、 选择题(至少选一个,可以多选)
(1) 在整型指针变量p
2、p3的定义中,错误的是( A )。 A. int p1,*p2,p3; B. int*p2,p1,*p3; C. int p1,*p2=&p1,*p3; D. int*p2,p1,*p3=&p1; 【结果分析】
指针定义的具体格式如下所示:
<类型> *<指针名1>,*<指针名2>,„;
(2) 若有定义“double xx=3.14,*pp=&xx; ”,则*pp等价于(A. &xxB. *xxC. 3.14D. xx 【结果分析】
pp指向xx所在的内存单元,这样*pp和xx等价。 (3) 下面对引用的描述中( C )是错误的。 A. 引用是某个变量或对象的别名 B. 建立引用时,要对它初始化
)。 C C. 对引用初始化可以使用任意类型的变量 D. 引用与其代表的对象具有相同的地址 【结果分析】
所谓引用就是给对象取一个别名,使用该别名可以存取该对象,所以对引用初始化必须使用同类型的变量。
(4) 函数没有返回值的时候,应该选择( A )的函数类型。 A. void B. int C. 不确定 D. float (5) 在函数的定义格式中,下面各组成部分中,( D )是可以省略的。 A. 函数名 B. 函数体 C. 返回值类型 D. 函数参数 【结果分析】
函数的定义可以缺省形式参数,此时称为无参函数。
(6) 对重载的函数来说,下面叙述不正确的是( D )。 A. 参数的类型不同 B. 参数的顺序不同 C. 参数的个数不同
D. 参数的个数、类型、顺序都相同,但函数的返回值类型不同 【结果分析】
对重载的函数来说,编译系统将根据函数参数的类型和个数来判断使用哪一个函数,所以重载函数参数的个数、类型、顺序不能都相同。
(7) 下列有关设置函数参数默认值的描述中,( D )是正确的。 A. 对设置函数参数默认值的顺序没有任何规定 B. 函数具有一个参数时不能设置默认值
C. 默认参数要设置在函数的原型中,而不能设置在函数的定义语句中 D. 设置默认参数可使用表达式,但表达式中不可用局部变量 【结果分析】
在C++中,在函数原型中可以为一个或多个参数指定默认值。对函数参数设置默认值要注意以下几点。 ◆若没有声明函数原型,参数的默认值可在函数定义的头部进行设置,否则必须在函数原型中进行设置。
◆在一个指定了默认值的参数右边不能出现没有指定默认值的参数。 ◆设置默认参数可使用表达式,但表达式中不可用局部变量。 (8) 下面说法正确的是( BC )。 A. 所有的函数都可以说明为内联函数
B. 具有循环语句、switch语句的函数不能说明为内联函数
C. 使用内联函数,可以加快程序执行的速度,但会增加程序代码的大小 D. 使用内联函数,可以减小程序代码大小,但使程序执行的速度减慢 【结果分析】
内联函数主要是解决程序的运行效率问题。在程序编译时,编译系统将程序中出现内联函数调用的地方用函数体进行替换,进而减少了程序运行的时间,但会增加程序代码的大小。它是以空间换取时间,因此内联函数适用于功能不太复杂,但要求被频繁调用的函数。
(9) 一个函数功能不太复杂,但要求被频繁调用,应选用( A )。 A. 内联函数 B. 重载函数 C. 递归函数 D. 嵌套函数 (10) C++对C语言做了很多改进,下列描述中使得C语言发生了质变,即从面向过程变成面向对象的是( D )。 A. 增加了一些新的运算符
B. 允许函数重载,并允许设置默认参数 C. 规定函数说明必须用原型 D. 引进了类和对象的概念 【结果分析】
面向对象=对象+类+继承+消息+多态
四、 判断题
(1) C++程序中,不得使用没有定义或说明的变量。( √ ) (2) 使用const说明常量时,可以不必指出类型。( × ) 【结果分析】
如果用const 定义的是一个整型常量,则类型说明符int可以省略。 (3) 引用被创建时可以用任意变量进行初始化。( × ) 【结果分析】
对引用初始化必须使用同类型的变量。
(4) 一个返回引用的调用函数可以作为左值。( √ ) (5) 函数可以没有参数,也可以没有返回值。( √ ) (6) 没有参数的两个函数是不能重载的。( √ ) (7) 函数可设置默认参数,但不允许将一个函数的所有参数都设置为默认参数。( × )
【结果分析】
函数可设置默认参数,且允许将一个函数的所有参数都设置为默认参数。 (8) 运算符new分配的空间由运算符delete释放。( √ )
五、 简答题
(1) 名字空间的用途是什么? 【问题解答】
名字空间用来防止命名的冲突。 (2) 引用有何用处? 【问题解答】
除了独立引用外,在C++程序中,引用的主要用途是用作函数参数和函数的返回值。
(3) 比较值调用和引用调用的相同点与不同点。 【问题解答】 在值调用机制中,作为实参的表达式的值被复制到由对应的形参名所标识的一个对象中,作为形参的初始值。函数体对形参的访问、修改都是在这个标识对象上操作的,与实参无关,即数据的传递是单向的。
使用引用作函数的形参时,调用函数的实参要用变量名。实参传递给形参,相当于在被调用函数中使用了实参的别名。于是,在被调用函数中对形参的操作实质是对实参的直接操作,即数据的传递是双向的。 (4) 内联函数有什么作用?它有哪些特点? 【问题解答】
内联函数是使用inline关键字声明的函数。在程序编译时,编译系统将程序中出现内联函数调用的地方用函数体进行替换,进而减少了程序运行的时间。 使用内联函数应注意以下几点。 ◆递归函数不能定义为内联函数。
◆内联函数一般适合于不含有switch和while等复杂的结构且只有1~5条语句的小函数,否则编译系统将该函数视为普通函数。
◆内联函数只能先定义后使用,否则编译系统也将该函数视为普通函数。 ◆对内联函数也不能进行异常接口声明。 (5) 函数原型中的参数名与函数定义中的参数名以及函数调用中的参数名必须一致吗?
【问题解答】
不必一致。所有的参数是根据位置和类型而不是名字来区分的。 (6) 重载函数时通过什么来区分? 【问题解答】
编译系统将根据函数参数的类型和个数来判断使用哪一个函数。
六、 程序分析题(写出程序的输出结果,并分析结果)
#include
using namespace std;
int main()
{
int num=50;
int& ref=num;
ref=ref+10;
cout<<"num="<
num=num+40;
cout<<"ref="<
return 0; }
【输出结果】
num=60
ref=100
【问题分析】
本题主要考查引用的含义。 【结果分析】
程序首先定义一个int类型的对象num,并给它赋初始值50。然后又定义了一个int类型的引用ref,并将它和num相联系。这样,无论是对num还是对ref进行操作,实际上都是对那个一开始放着50的物理单元的内容进行操作。
七、 程序设计题
写出一个完整的C++程序,使用系统函数pow(x,y)计算xy的值,注意包含头文件cmath。 【问题分析】
本题主要考查简单的输入输出和标准库函数的调用方法。 【解题思路】
① 由于要用到系统函数pow(x,y),所以要包含头文件cmath。
② 要计算xy的值,首先必须知道x和y的值。为了程序的通用性,最好通过交互的方式输入x和y的值。 【参考程序】
// xt2_1.cpp
#include
#include
using namespace std;
int main()
{
float x,y;
cout<<"please input 2 floats to x,y:";
cin>>x>>y;
float z=pow(x,y);
cout<<"pow("<
return 0; } 【输出结果】
please input 2 floats to x,y:3.1 2
pow(3.1,2)=9.61
第 3 章
类与对象
面向对象程序设计教程(C++语言描述)题解与课程设计指导
第3章
类 与 对 象
一、 填空题 (1) 类定义中关键字private、public和protected以后的成员的访问权限分别是私有、公有和保护。如果没有使用关键字,则所有成员默认定义为private权限。具有public访问权限的数据成员才能被不属于该类的函数所直接访问。 (2) 定义成员函数时,运算符“∷”是作用域运算符,“MyClass∷”用于表明其后的成员函数是在“MyClass类”中说明的。
(3) 在程序运行时,通过为对象分配内存来创建对象。在创建对象时,使用类作为样板,故称对象为类的实例。
(4) 假定Dc是一个类,则执行“Dc a[10],b(2)”语句时,系统自动调用该类构造函数的次数为11。 【结果分析】
创建10个数组元素需调用构造函数10次,创建对象b需调用构造函数1次,所以系统自动调用该类构造函数的总次数为11。
(5) 对于任意一个类,析构函数的个数最多为1个。
(6) delete运算符通常用于实现释放该类对象中指针成员所指向的动态存储空间的任务。 (7) C++程序的内存格局通常分为4个区: 数据区、代码区、栈区和堆区。 (8) 数据定义为全局变量,破坏了数据的 封装性; 较好的解决办法是将所要共享的数据定义为类的 静态成员。
(9) 静态数据成员和静态成员函数可由 任意访问权限许可的函数访问。 (10) 友元函数和 友元类统称为友元。 (11) 友元的正确使用能提高程序的效率,但破坏了类的封装性和数据的隐蔽性。 (12) 若需要把一个类A定义为一个类B的友元类,则应在类B的定义中加入一条语句: friend class A;。
二、 选择题(至少选一个,可以多选) (1) 以下不属于类访问权限的是( B )。 A. public B. staticC. protectedD. private 【结果分析】
类的访问权限有public、protected 和private。 (2) 有关类的说法不正确的是( BC )。 A. 类是一种用户自定义的数据类型
B. 只有类的成员函数才能访问类的私有数据成员
C. 在类中,如不做权限说明,所有的数据成员都是公有的 D. 在类中,如不做权限说明,所有的数据成员都是私有的 【结果分析】
类是一种用户自定义的数据类型,类中成员均具有一种访问权限。关键字public、protected 和private以后的成员的访问权限分别是公有、保护和私有的,所有成员默认定义为private的。
私有成员是被隐藏的数据,只有该类的成员函数或友元函数才可以访问它。 (3) 在类定义的外部,可以被任意函数访问的成员有( C )。 A. 所有类成员 B. private或protected的类成员 C. public的类成员 D. public或private的类成员 【结果分析】
类是一种用户自定义的数据类型,类中成员均具有一种访问权限。公有成员定义了类的外部接口。私有成员是被隐藏的数据,只有该类的成员函数或友元函数才可以引用它。保护成员具有公有成员和私有成员的双重性质,可以被该类或派生类的成员函数或友元函数引用。可见在类定义的外部,可以被任意函数访问的成员是public的类成员。
(4) 关于类和对象的说法( C )是错误的。 A. 对象是类的一个实例
B. 任何一个对象只能属于一个具体的类 C. 一个类只能有一个对象
D. 类与对象的关系和数据类型与变量的关系相似 【结果分析】
C++语言的类就是一种用户自己定义的数据类型,类和对象的关系就相当于基本数据类型与它的变量的关系,所以任何一个对象只能属于一个具体的类,但一个类可以有多个对象。 (5) 设MClass是一个类,dd是它的一个对象,pp是指向dd的指针,cc是dd的引用,则对成员的访问,对象dd可以通过( B )进行,指针pp可以通过( D )进行,引用cc可以通过( B )进行。
A. ∷ B. . C. & D. -> (6) 关于成员函数的说法中不正确的是( C )。 A. 成员函数可以无返回值 B. 成员函数可以重载 C. 成员函数一定是内联函数
D. 成员函数可以设定参数的默认值 【结果分析】
与普通函数不同的是,成员函数是属于某个类的。成员函数的实现,可以放在类体内,也可以放在类体外。在类体外实现的成员函数不再是内联函数。 (7) 下面对构造函数的不正确描述是( B )。 A. 系统可以提供默认的构造函数
B. 构造函数可以有参数,所以也可以有返回值 C. 构造函数可以重载
D. 构造函数可以设置默认参数 【结果分析】
构造函数不能指定返回类型,即使是void类型也不可以,当然不可能有返回值。 (8) 假定A是一个类,那么执行语句“A a,b(3),*p; ”调用了( B ) 次构造函数。
A. 1 B. 2 C. 3 D. 4 【结果分析】
声明指针是不会调用构造函数的。
(9) 下面对析构函数的正确描述是( AC )。 A. 系统可以提供默认的析构函数 B. 析构函数必须由用户定义 C. 析构函数没有参数
D. 析构函数可以设置默认参数 【结果分析】
析构函数的作用是在对象消失时执行一项清理任务。如果一个类中没有定义析构函数,系统将自动生成一个默认析构函数。析构函数没有参数,当然不可能设置默认参数。
(10) 类的析构函数是( D )时被调用的。
A. 类创建 B. 创建对象 C. 引用对象 D. 释放对象
(11) 创建一个类的对象时,系统自动调用( B ); 撤销对象时,系统自动调用( C )。
A. 成员函数 B. 构造函数 C. 析构函数 D. 复制构造函数 (12) 通常拷贝构造函数的参数是( C )。
A. 某个对象名 B. 某个对象的成员名 C. 某个对象的引用名 D. 某个对象的指针名 (13) 关于this指针的说法正确的是( B )。
A. this指针必须显式说明B. 当创建一个对象后,this指针就指向该对象 C. 成员函数拥有this指针D. 静态成员函数拥有this指针。 【结果分析】
this指针是由C++编译器自动产生且较常用的一个隐含对象指针,它不能被显式声明。当创建一个对象时,this指针就初始化指向该对象。但只有非静态成员函数才拥有this指针,并通过该指针来处理对象。 (14) 下列关于子对象的描述中,( B )是错误的。 A. 子对象是类的一种数据成员,它是另一个类的对象 B. 子对象可以是自身类的对象
C. 对子对象的初始化要包含在该类的构造函数中 D. 一个类中能含有多个子对象作其成员 【结果分析】
子对象不可以是自身类的对象。
(15) 对new运算符的下列描述中,( B )是错误的。 A. 它可以动态创建对象和对象数组 B. 用它创建对象数组时必须指定初始值 C. 用它创建对象时要调用构造函数
D. 用它创建的对象数组可以使用运算符delete来一次释放 【结果分析】
使用运算符new创建对象数组的格式如下:
new <类型说明符> [<算术表达式>]
其中,<算术表达式>给出数组的大小,后面不能再跟构造函数参数,所以用它创建对象数组时不能指定初始值。
(16) 对delete运算符的下列描述中,( D )是错误的。 A. 用它可以释放用new运算符创建的对象和对象数组
B. 用它释放一个对象时,它作用于一个new所返回的指针
C. 用它释放一个对象数组时,它作用的指针名前须加下标运算符[ ] D. 用它可一次释放用new运算符创建的多个对象 【结果分析】
用delete一次只能释放用new创建的1个对象,但可释放一个对象数组。 (17) 关于静态数据成员,下面叙述不正确的是( C )。 A. 使用静态数据成员,实际上是为了消除全局变量
B. 可以使用“对象名.静态成员”或者“类名∷静态成员”来访问静态数据成员
C. 静态数据成员只能在静态成员函数中引用 D. 所有对象的静态数据成员占用同一内存单元 【结果分析】
静态数据成员可以在静态成员函数中引用,也可以在非静态成员函数中引用。 (18) 对静态数据成员的不正确描述是( CD )。 A. 静态成员不属于对象,是类的共享成员 B. 静态数据成员要在类外定义和初始化
C. 调用静态成员函数时要通过类或对象激活,所以静态成员函数拥有this指针 D. 只有静态成员函数可以操作静态数据成员 【结果分析】 this指针是一个局部量,局部于某个对象,而静态成员函数是属于整个类而不是某个对象,它没有this指针。静态成员函数和非静态成员函数均可操作静态数据成员。
(19) 下面的选项中,静态成员函数不能直接访问的是( D )。 A. 静态数据成员 B. 静态成员函数 C. 类以外的函数和数据 D. 非静态数据成员 【结果分析】
由于静态成员函数没有this指针,它只能直接访问该类的静态数据成员、静态成员函数和类以外的函数和数据,访问类中的非静态数据成员必须通过参数传递方式得到对象名,然后通过对象名来访问。
(20) 在类的定义中,引入友元的原因是( A )。
A. 提高效率 B. 深化使用类的封装性 C. 提高程序的可读性 D. 提高数据的隐蔽性 【结果分析】
友元的作用主要是为了提高效率和方便编程,但友元破坏了类的封装性和隐蔽性,使用时要权衡利弊。
(21) 友元类的声明方法是( A )。
A. friend class<类名>; B. youyuan class<类名>; C. class friend<类名>; D. friends class<类名>; (22) 下面对友元的错误描述是( D )。 A. 关键字friend用于声明友元
B. 一个类中的成员函数可以是另一个类的友元 C. 友元函数访问对象的成员不受访问特性影响 D. 友元函数通过this指针访问对象成员 【结果分析】
友元函数是一个放在类中的普通函数,它没有this指针。 (23) 下面选项中,( C )不是类的成员函数。
A. 构造函数 B. 析构函数 C. 友元函数 D. 拷贝构造函数
三、 简答题
(1) 类与对象有什么关系? 【问题解答】
类是一种用户自己定义的数据类型,和其他数据类型不同的是,组成这种类型的不仅可以有数据,而且可以有对数据进行操作的函数。程序员可以使用这个新类型在程序中声明新的变量,具有类类型的变量称为对象。创建对象时,类被用做样板,对象称为类的实例。
(2) 类定义的一般形式是什么?其成员有哪几种访问权限? 【问题解答】
定义类一般形式为:
class类名{
public:
<公有数据和函数>
protected:
<保护数据和函数>
private:
<私有数据和函数> };
访问权限共有3种: 分别是公有(public)、保护(protected)和私有(private)。 (3) 类的实例化是指创建类的对象还是定义类? 【问题解答】
指创建类的对象。
(4) 什么是this指针?它的主要作用是什么? 【问题解答】
this指针是C++语言为成员函数提供的一个隐含对象指针,它不能被显式声明。this指针是一个局部量,局部于某个对象。不同的对象调用同一个成员函数时,编译器根据this指针来确定应该引用哪一个对象的数据成员。 (5) 什么叫做拷贝构造函数?拷贝构造函数何时被调用? 【问题解答】
拷贝构造函数是一种特殊的构造函数,它的作用是用一个已经存在的对象去初始化另一个对象。为了保证所引用的对象不被修改,通常把引用参数声明为const参数。
在以下3种情况下,拷贝构造函数都会被自动调用: ◆当用类的一个对象去初始化该类的另一个对象时; ◆当函数的形参是类的对象,进行形参和实参结合时;
◆当函数的返回值是类的对象,函数执行完成返回调用者时。
四、 程序分析题(写出程序的输出结果,并分析结果) (1)
#include
using namespace std;
class Test {
private:
int num; public:
Test();// 默认构造函数
Test(int n); // 带一个参数构造函数
};
Test∷Test()
{
cout<<"Init defa"<
num=0; }
Test∷Test(int n)
{
cout<<"Init"<<" "<
num=n; }
int main()
{
Test x[2];// 语句1
Test y(15); // 语句2
return 0; }
【输出结果】
Init defa Init defa
Init 15
【问题分析】
本题主要考查构造函数的调用时机和构造函数的匹配问题。 【要点提示】
构造函数在创建对象时被自动调用,具体调用哪个构造函数将由编译系统根据重载函数的匹配原则来确定。 【结果分析】
① 程序声明了2个对象x和y,类中有2个构造函数。
② 程序首先执行语句1,创建对象x,调用默认构造函数。由于对象x是对象数组,每个数组元素被创建时都要调用构造函数,所以默认构造函数被调用了2次,输出第
1、2行结果。程序接着执行语句2,创建对象y,调用带一个参数的构造函数,输出第3行结果。 (2)
#include
using namespace std;
class Xx {
private:
int num;
public:
Xx(int x){num=x;} // 构造函数
~Xx(){cout<<"dst "<
};
int main()
{
Xx w(5); // 语句1
cout<<"Exit main"<
return 0; }
【输出结果】
Exit main
dst 5
【问题分析】
本题主要考查析构函数的调用时机。 【要点提示】
析构函数在释放对象时被自动调用。 【结果分析】
① 程序声明了一个对象w。
② 程序首先执行语句1,创建对象w,调用构造函数,num得到初值5。程序接着执行语句2,输出第1行结果。当程序结束时,释放对象w,析构函数被调用,输出第2行结果。
(3) 将例3.10中的Whole类如下修改,其他部分不变,写出输出结果。
class Whole {
public:
Whole(int i); // Whole的有参构造函数
Whole(){}; // Whole的无参构造函数
~Whole(); // Whole的析构函数
private:
Part p1;// 子对象1
Part p2;// 子对象2
Part p3;// 子对象3 }; Whole∷Whole(int i):p2(i),p1()
{
cout<<"Constructor of Whole"<
Whole∷~Whole()
{
cout<<"Destructor of Whole"<
【输出结果】
Default constructor of Part
Constructor of Part,3
Default constructor of Part
Constructor of Whole
Destructor of Whole
Destructor of Part,0
Destructor of Part,3
Destructor of Part,0
【问题分析】
本题主要考查子对象初始化的方法和含有子对象时构造函数和析构函数的调用顺序。
【要点提示】
◆当建立X类的对象时,先调用子对象的构造函数,初始化子对象,然后才执行X类的构造函数,初始化X类中的其他成员。
◆对子对象构造函数的调用顺序取决于这些子对象在类中的说明顺序,与它们在成员初始化列表中给出的顺序无关。
◆如果X类的构造函数没有给出成员初始化列表,表明子对象将使用默认构造函数进行初始化。 ◆析构函数的调用顺序与构造函数的调用顺序正好相反。 【结果分析】
程序的Whole类中出现了类Part的3个对象p
1、p2和p3,作为该类的数据成员,则p
1、p2和p3被称为子对象。当建立Whole类的对象w时,子对象p
1、p2和p3被建立,相应的构造函数被执行。由于p1在Whole类中先说明,所以先执行它所使用的构造函数,即类Part的默认构造函数,接着p2执行它所使用的有参构造函数,紧接着初始化p3,由于Whole类构造函数的成员初始化列表中没有子对象p3进行初始化的选项,所以执行类Part的默认构造函数,当所有子对象被构造完之后,对象w的构造函数才被执行,从而得到前4行输出结果,而后4行是执行相应析构函数的输出结果。 (4)
#include
using namespace std;
class Book {
public:
Book(int w);
static int sumnum;
private:
int num; };
Book∷Book(int w)
{
num=w;
sumnum-=w; }
int Book∷sumnum=120;// 语句1 int main()
{
Book b1(20);// 语句2
Book b2(70);// 语句3
cout<
return 0; }
【输出结果】
30
【问题分析】
本题主要考查“在类的范围内所有对象共享静态成员的数据”的含义。 【结果分析】
程序中语句1对静态成员sumnum进行初始化,sumnum得到初值120。执行语句2时,调用构造函数,sumnum变为100。接着语句3,再调用构造函数,sumnum变为30。
五、 程序设计题
(1) 声明一个Circle类,有数据成员radius(半径)、成员函数area(),计算圆的面积,构造一个Circle的对象进行测试。 【问题分析】
本题主要考查类定义的形式、对象成员访问和对象初始化的方法。要求理解类和构造函数的真正含义,特别注意如何将客观事物的属性和行为抽象为类的成员。 【解题思路】
① 题目中已给出了类的基本部分,需要增加一个构造函数来初始化数据成员radius。
② 为了程序的通用性,圆的半径由键盘输入。 【参考程序】
// xt3_1.cpp
#include