一、单项选择题
1.下列选项中不是C++关键字的是()。
A.typedef
B.mycase
C.typeid
D.typename
答案解析:
如下图
图片标红都是C++关键字,故选B
2.下列选项中不是C++语言合法标识符的是()。
A.area
B._age
C.-xy
D.w123
答案解析:
标识符,应该以字母或,下划线开头,且开头不能是数字 由选项可知,正确答案C
2.3.下列选项中正确的标识符是()。
A. case
B. de。fault
C .c_case
D. a.b
答案解析:
标识符中有的特殊符号,只能有下划线 由选项可知,正确答案C
二、填空题
1.用来处理标准输入的是_____,用来处理屏幕输出的是____。
答案解析:课本p4 1.1初识C++的函数和对象—>3.使用输出输入对象
使用标准输入(键盘输入)cin及标准输出(屏幕输出)cout前,要在主函数 前使用#include 将C++标准输入输出库头文件iostream将其包 括。
故答案为 cin,cout
2.动态分配内存使用关键字_____,释放内存使用关键字______。
答案解析:课本p10 1.2认识C++语言面向过程编程的特点---->1.2.3动态内存分配
new 类型名[size] //申请可以存储size个该数据类型的对象
不再使用时,必须使用delete 指针名;来释放已经申请的存储空间。
故答案为 new,delete
3.为整数55分分配一块内存的语句为_____。
答案解析:课本p10 1.2认识C++语言面向过程编程的特点---->1.2.3动态内存分配
C++为结构动态分配内存一般格式为:
指针名=new 结构名; //分配
delete 指针名; //释放
故答案为 new int (55);
三、改错题题
1.分析主程序中的错误。
void main(){
int& ref=num;
ref=fef+100;
num=num+50;
}
答案解析:变两要先声明后使用
没有定义变量num
2.分析如下程序中的错误。
void main(){
int x=58, y=98;
const int *p=&x;
y=*p;
*p=65;
p=&y;
}
答案解析:课本p13 1.2认识C++语言面向过程编程的特点---->1.2.5对指针使用const限定符----->2.指向常量的指针
不能给变量x,声明指向常量的指针const int *p=&x; 如果吧x定义为常量const,*p不能当作“左值”。
3.分析如下主程序的错误。
void main(){
int x=58,y=98,z=55;
int *const p=&x;
*p=65;
p=&y;
z=*p;
}
答案解析:课本p13 1.2认识C++语言面向过程编程的特点---->1.2.5对指针使用const限定符----->4.指向常量的常量指针
p为常量指针,不能吧p作为“左值”,p=&y,错误。
四、编程题
1. 分别用字符和ASCII码形式输出整数值65和66。
#include < iostream >
using namespace std;
void main()
{
int ascii_1=65,ascii_2=66;//ASCII码中的,65和66
cout<<