C++primer Plus 第四章复习题

1、如何声明下述数据

a、actor是由30个char组成的数组。 char actor[30] = {0};

b、betsie是由100个short组成的数组。short betsie[100] = {0};

c、chuck是由13个float组成的数组。float chuck[13] = {0};

d、dipsea是由64个long double 组成的数组。long double dipsea[64] = {0};

2、使用模板类array而不是数组来完成问题1.

array<char, 30> actor = {0};

array<short, 100> betsie = {0};

array<float, 13> chuck = {0};

array<long double, 64> dipsea = {0};

3、声明一个包含5个元素的int数组,并将他初始化为前5个正奇数。

int nums[5] = {1, 3, 5, 7, 9};

4、编写一句话,将问题3中数组第一个元素和最后一个元素的和赋给变量even。

even = nums[0] + nums[4];

5、编写一条语句,显示float数组ideas中的第2个元素的值。

float ideas[2] = {0};

cout << ideas[1] << endl;

6、声明一个char数组,并将其初始化为字符串“cheeseburger”。

char char_1[20] = "cheeseburger"

7、声明一个string对象。并将其初始化为字符串“Waldorf Salad”。

string str = "Waldorf Salad";

8、设计一个描述鱼的结构声明。结构中应当包括品种、重量(整数、单位为盎司)和长度(英寸,包括小数)。

struct Fish {
    string Type_Fish;
    int weight;
    double lenght;
};

9、声明一个问题8中定义的结构的变量,并对它进行初始化。

Fish fish_1 = {"xiaojinyu", 2, 3};

10、用enum定义一个名为Response的类型,他包含Yes、No和Maybe等枚举量,其中Yes的值为1,No为0,Maybe为2。

enum Response {

No,

Yes,

Maybe

};

11、假设ted是一个double变量,请声明一个指向ted的指针,并使用该指针来显示ted的值。

double ted = 1;

double *prt = &ted;

cout << *prt << endl;

12、假设treacle是一个包含10个元素的float数组,请声明一个指向treacle的第一个元素的指针,并使用该指针来显示数组的第一个元素和最后一个元素。

float treacle[10] = {0};

float* ptr = treacle;

cout << *ptr << *ptr + 9 << endl;

13、编写一段代码,要求用户输入一个正整数,然后创建一个动态的int数组,其中包含的元素数目等于用户输入的值。首先使用new来完成这项任务,再使用vector对象来完成。

int n;

cin >> n;

int* ptr = new int[n];

vector<int> nums(n);

14、下面的代码是否有效?如果有效,他将打印出什么结果

cout << (int*)"Home of the jolly bytes";

有效,输出地址

15、编写一段代码,给问题8中描述的结构动态分配内存,再读该结构的成员的值

Fish *fish_2 = new Fish;

cin.get(fish_2->Type_Fish).get();

16、程序清单4.6指出了混合输入数字和一行字符串时存储的问题。如果将下面的代码:

cin.getline(address, 80);替换为cin >> address;将对程序的运行带来什么影响?

cin.getline(address, 80)的效果是,读取用户输入的一行,读取的字符数为80,包括空格、tab等,以换行符为止,并将换行符舍弃。将读取的值赋给变量address。

cin >> address;是从第一个非空格、tab或者换行符读取,然后读取到空格、tab、换行符为止,但不舍弃这些。例如输入kunming street,cin只会读取kunming,不会读取空格及以后的字符。

17、声明一个vector对象和一个array对象,他们都包含10个string对象。指出所需的头文件,但不要使用using。使用const来指定要包含的string对象数。

#include<iostream>

#include<vector>

#include<array>

#include<string>

const int num = 10;

std::vector<std::string> vector_1(num);

std::array<std::string> array_1;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值