计算机二级C上机:程序改错题
为了使广大考生在备战计算机等级考试时,更快的掌握相应知识点,下面是小编搜索整理的计算机二级C上机:程序改错题,供参考练习,预祝考生们考出自己理想的成绩!
程序改错题
使用VC++6.0打开考生文件夹下的`源程序文件1.cpp,该程序运行时有错,请改正程序中的错误,使程序输出的结果为
150
200
注意:错误的语句在//******error******的下面,修改该语句即可。
提示:定义Numl为一个整型数据位长的变量。
试题程序:
#include
//******error******
struct
{
//******error******
intNuml:1;
intNum2;
}
MyStruct;
voidmain()
{
MyStructmstr;
mstr.Num1=150;
mstr.Num2=15;
//******error******
int*ptr=&mstr.Numl;
cout<<*ptr<<endl;
*ptr=200;
cout<<*ptr<<endl;
}
答案:
(1)“typedefstruct”。
(2)“intNuml:32;”或“intNuml;”。
(3)“int*ptr=(int*)&mstr;”。
【解析】第1处是定义结构体,结构体定义的一般形式为
struct(结构体名>
{
<成员列表>
}
(变量名列表);
程序当中定义结构体名放在后面,MyStruct为结构体变量类型,相当于typedef为已有的类型定义一个新的类型,第1处应改为“typedefstruct”。第2处是定义Numl为一个整型数据变量,整型数据位数为32(4字节),因此第2处应改成“intNuml:32;”或“intNuml;”。ptr为整型数据指针,mstr为MyStruct类型结构变量,两者类型不一致应该做强制类型转换,第3处应改成“int*ptr=(int*)&mstr;”,表示将mstr的地址给ptr,ptr指向MyStruct的第一个域Numl,Numl也是整型,类型一致,故可通过ptr指针来改变Numl的值。
-
2016年二级JAVA考试预测试卷及答案
一、基本操作题(共18分)本题分别比较两个字符串"A"和"a"是否相等,并比较两个字符"A"和"a"是否相等,并输出比较结果。publicclassjaval{publicstaticvoidmain(String[]args){;cl=’A’;c2=’a’;Stringstrl=newString("A"),str2=newString("a"...
-
2016计算机二级《C语言》练习题及答案
2016年3月计算机考试即将在3月26日-29日进行,为了帮助大家顺利通过2016年计算机二级考试,下面本站小编为大家带来2016计算机二级《C语言》练习题及答案,供大家参考学习,预祝考生备考成功!1[单选题]有以下程序:程序运行后的输出结果是()。A.10,One*Dream!B.9,One*Dream...
-
2012年9月全国计算机二级考试C语言真题
(11)以下叙述中正确的是A)在C语言程序中,main函数必须放在其他函数的最前面B)每个后缀为.C的C语言源程序都可以单独进行编译C)在C语言程序中,只有main函数才可单独进行编译D)每个后缀为.C的C语言源程序都应该包含一个main函数(12)C语言中的标识符分为关键字、预...
-
计算机二级《MS Office》判断习题及答案
计算机二级考试是全国计算机等级考试四个等级中的一个等级,由教育部考试中心主办,考核计算机基础知识和使用一种高级计算机语言编写程序以及上机调试的基本技能。下面是小编整理的计算机二级《MSOffice》判断习题及答案,欢迎大家阅读学习。计算机二级《MSOffice》...