365文库
登录
注册
搜索
下载二维码
App功能展示
海量免费资源 海量免费资源
文档在线修改 文档在线修改
图片转文字 图片转文字
限时免广告 限时免广告
多端同步存储 多端同步存储
格式轻松转换 格式轻松转换
用户头像
非鱼 上传于:2024-05-17
选择填空:(每题1分,共10分) 1. 已知各变量的类型说明如下: int a = 1; double x = 1.42; char ch; 则以下不符合C++语言语法的表达式是 C A、a += 0x123fd B、x = 12e-8 C、ch = “x” D、ch = ‘\a\’ 2.下面 D 是死循环。 A、for(i=0; i<10; i++) cout << i << " "; B、for(i=10; i>=1; i--) cout << i << " "; C、i=10; do { cout << i-- << " "; } while(i > 0); D、i=0; while(i <= 10); cout << ++i << " "; 3. C++语言的跳转语句中,对于break和continue说法正确的是 C : A、break语句只应用于循环体中   B、continue语句用于跳出循环语句   C、continue语句用于跳出当前的循环周期   D、break语句用于跳出当前的循环周期 4. 有如下定义语句:int a[] = {1,2,3,4,5};,则对语句int *p=a;正确的描述是 B 。 A、语句 int *p = a;定义不正确 B、语句 int *p=a;初始化变量p,使其指向数组对象a的第一个元素 C、语句int *p=a; 是把数组a的值赋给变量p D、语句int *p=a; 是把a[0]的值赋给变量p 5 若有以下定义和语句,则合法的表示是 C char a[ ] = ”abcdefg”; char *p=a; A、变量p和变量a是等价的 B、数组a的长度是7 C、p[7]的值是’\0’ D、a[7]的值是‘0’ 6下列语句正确的是 A A char a[2] = {’a’}; B char 3a = ’\0’; C char a[ ] = 'abc'; D char a = "\0"; 7、ch为char类型,判断ch为小写字符的表达式是 C 。 A、’a’<= ch <= ’z’ B、(ch >= ’a’) & ( ch <= ’z’) C、(ch >= ’a’) && (ch <= ’z’) D、(ch >= ’a’) || (ch <= ’z’) 8.链表结点的结构类型为 struct linkRec {int data; linkRec *next;},如果指针rear指向尾结点,将节点p链入表尾,并将p作为新的表尾可用语句 B A、 rear->next=p->next; rear=p; B、rear->next=p; rear=p; C、 rear->next= rear; p->next= p; D、 (*rear ).next= rear; (*p).next =p; 简答题(16分) 1. 写出完成下列任务的表达式(6分): a. 取出整型变量n的个位数 b. 取出整型变量n的十位以上的数字 c. 将整型变量a和b相除后的商存于变量c,余数存于变量d d. 将字符变量ch中保存的小写字母转换成大写字符 e. 将double型的变量d中保存的数字按四舍五入的规则转换成整数 f 判断指针p是否为空指针 2. 重写代码(5分): a.用一个switch语句重写下列代码(3分) if (ch == ‘E’ || ch ==’e’) ++countE; else if (ch ==’A’ || ch ==’a’) ++countA; else if (ch ==’I’ || ch ==’I’) ++countI; else cout << “error”; b.用一个if语句重写下列代码(2分) if (ch ==’E’) ++c; if (ch ==’E’) cout << c << endl; 3. 当遇到下列情况时,你将怎样编写for语句的控制行。(5分) a.从1计数到100。 b.从2, 4, 6, 8, …计数到100。 c.从0开始,每次计数加7,直到成为三位数。 d.从100开始,反向计数,99, 98, 97, …直到0。 e.从’a’变到’z’。 程序理解:(每题3分,共30分) 1. 写出下面程序的执行结果 int main() { for (char ch = ‘A’ ; ch < ‘G’; ++ch) switch(ch) { case ‘A’ : case ‘B’ : cout << ch; case ‘C’: cout << ‘C’ << endl; break; case ‘D’: case ‘E’: cout << ch << endl; break; case ‘F’: cout << ch; default: cout << ch << endl;} return 0;} 请写出下列程序段的输出结果 for (k = 0; k < 2; ++k); for (m = k; m >= 0; --m) cout << k << m << endl; 3. 写出以下程序的输出结果。 int main( ) { char a[10] = {'a’,'b','c','d','e','f','7','8','9',0}; char *p; int i = 8; p = a + i; cout << (p - 2); return 0 ;} 4. 已知华氏温度到摄氏温度的转换公式为  EMBED Equation.3  某同学编写了一个将华氏温度转换成摄氏温度的程序: int main() { int c, f;  cout << “请输入华氏温度:“ ; cin >> f ; c = 5 / 9 * ( f – 32) ; cout << “对应的摄氏温度为:” << c; return 0;} 但无论输入什么值,程序的输出都是0.请你帮他找一找哪里出问题了。 5 写出运行结果 int main() { int a[3]={1, 2 , 3}, *p; int i, b[6]; p = a; b[0] = *p; p++; b[1] = *p; b[2] = *p; b[3] = *(p – 1); b[4] = (*p) + 1; b[5] = *(p + 1); for(i=0; i<6; i++) cout << b[i] << " ";} 6 写出运行结果: void foo( int &c){ static a = 1; c += a++;} int main() {int a; int &b = a; a = 10; foo(a); cout << a << endl; foo(++b); cout << a << endl; return 0;} 7 写出运行结果 template T avg(T x[],int n); int main() { int a[] = {4,5,2,8,9,3}; double b[] = {3.5,6.7,2,5.2,9.2}; cout << "average of A: " << avg(a,6) << endl; cout << "average of B: " << avg(b,5) << endl; return 0;} template T avg(T x[],int n) { int i; T maxv = x[0]; for(i=1;i
下载二维码
网站备案:鄂ICP备2021004464号 网络文化经营许可证:鄂网文[2024]95956-12号
© 2009-2023 www.365docx.com All rights reserved 版本号:1.2.1.154
开发者:武汉妙游互动信息技术有限公司 免责声明:本站文档为网友上传,如有侵权,请联系删除
地址:武汉东湖新技术开发区凌家山南路1号武汉光谷企业天地4号楼12层03室(自贸区武汉片区)
服务条款 免责声明 隐私政策 侵权处理
下载二维码
tj