首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi 1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为: sizeof(strl)=5 sizeof(str2)=10 sizeof(str3)=l
使用VC6打开考生文件夹下的源程序文件modi 1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为: sizeof(strl)=5 sizeof(str2)=10 sizeof(str3)=l
admin
2019-07-10
72
问题
使用VC6打开考生文件夹下的源程序文件modi 1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为:
sizeof(strl)=5
sizeof(str2)=10
sizeof(str3)=l
注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在//********error********的下面。
(1)不能删除assert()语句;
(2)只能修改后面的数字。
提示:assert()函数如果为假,则会产生一个中断异常。
1 #include
2 #include
3 void main()
4 {
5 char*strl=”abc”;
6 //********error********
7 assert(sizeof(strl)==3);
8 cout<<"sizeof(strl) = 5"<
9 char str2[10]="ab";
10 //********error********
11 assert(si zeof(str2)==2);
12 cout<<"sizeof(str2)=10"<
13 char str3=23 ;
14 //********error********
15 assert(sizeof(str3)==4);
16 cout<<"si zeof(str3)=1"<
17 return;
18 }
选项
答案
(1)assert(Si zeof(strl)==4); (2)assert(Sizeof(str2)==10); (3)assert(Sizeof(str3)==1);
解析
本题的功能是利用assert()函数,则会产生一个中断异常。从已定源程序的main主函数开始入手,依次执行程序中的语句,输出题目中要求的输出值。本题在调试的时候并不会产生错误,它的错误是逻辑错误。
[解题思路]
(1)assert()函数如果为假,则会产生一个中断异常。所以要让它正常执行输出结果,那么assert()函数就要为真,才不会产生中断异常。“assert(sizeof(strl)==3);”语句中“sizeof(strl)==3”为假,这个会使程序产生异常,不能正常执行。凶为strl的值为abc但是它还有一个尾符,所以它的长度应该是4,而不是3,所以第1个标识下修改为“assert(sizeof(str 1)==4);”。
(2)同(1),str2[10]说明,str2的空间为10,第2个标识下修改为“assert(sizeof(str2)--lO);”。
(3)同(1),char str3=23;语句说明23是字符,占空间为l,所以修改为“assert(sizeof(str3)==1);”。
转载请注明原文地址:https://kaotiyun.com/show/LW8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是【】。#include<iostream.h>voidmain(){inta=0;a+=(a=8);cout<<a;
有如下的程序:#include<iostream>#include<fstream>usingnamespacestd;intmain(){chars[25]="Prog
请将下列程序的横线处补充完整,使得输出结果为bbaa#include<iostream>usingnamespacestd;classA{public:______{cout<<"aa
在结构化程序设计中,模块划分的原则是A)各模块应包括尽量多的功能B)各模块的规模应尽量大C)各模块之间的联系应尽量紧密D)模块内具有高内聚度,模块间具有低耦合度
下面程序的运行结果为#include<iostream.h>voidmain(){chara=’3’;switch(a){case’3’:cout<<"3"
下面有关重载函数的描述中正确的是
对二叉树从1开始进行连续编号,要求每个结点的编号大于其左右孩子的编号,同一个结点的左右孩子中,其左孩子的编号小于其右孩子的编号,则可采用______遍历实现编号。
下列选项中,不属于模块间耦合的是
下列选项中不属于软件生命周期开发阶段任务的是()。
随机试题
急性化脓性胆囊炎时,最易穿孔的胆囊部位是
假定某投资中心的经营资产为400000元,经营净收益为120000元。要求:(1)计算该投资中心的投资利润率。(2)如果利息按140A,计算,其剩余利润为多少?(3)如果采用投资利润率来衡量其工作业绩,预计对管理
施工企业各管理层、职能部门、岗位的安全生产责任应形成责任书,并应经责任部门或责任人确认。责任书的内容不包括()。
上题图中所示的外伸梁C处截面的弯矩和剪力分别为多大?
建设项目管理的工作内容主要包括( )。
圣诞树用成套灯具
证券公司对客户融资融券的额度按现行规定不得超过客户提交保证金的2倍,期限不超过9个月。()
相对于派发现金股利,企业发放股票股利的优点有()。
下列情形中,不违背货币资金“不相容岗位相互分离"控制原则的是()。
By using(26), a 600M -byte music CD can be compressed to 50M bytes or less. It can be streamed(downloaded in chunks) so that you
最新回复
(
0
)