C++primer plus

news/2024/10/18 0:35:14/

第四章

1.如何声明下述数据?

a. actor是由30个char组成的数组

b.betsie是由100个short组成的数组

c.chuck是由13个float组成的数组

d.dipsea是由64个long double组成的数组

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

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

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

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

6.声明一个char的数组,并其初始化为字符串中“cheeseburger”

7.声明一个string对象,并将其初始化为字符串"WaldorfSalad"。

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

struct Fish

{

    std::string category;

    int weight;

    float length;

};

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

Fish fish

    {

        "fish",

        12,

        26.3

    };

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

enum Response

    {

        Yes, No, Maybe

    };

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

     double ted = 3.13;

    double *ptr = &ted;

    ptr = &ted;

    std::cout << *ptr << std::endl;

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

    float treacle[] = { 1.2, 3.4, 5.6, 7.8, 9.0, 2.8, 4.6, 6.4, 8.2, 0.9 };
    float* ptr = treacle;
    std::cout << *(ptr) << " " << *(ptr + 9) << std::endl;

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

    unsigned int n;             //无符号表示正整数

    std::cout << "Enter a positive integer";

    std::cin >> n;

    int *p = new int [n];

    delete[] p;

    std::vector<int> ret(n);

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

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

有效,表达式“Home of the jolly bytes” 是一个字符串常量,因此,他表示字符串开始的地址

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

struct Fish

{

    std::string category;

    int weight;

    float length;

};

Fish * pole = new Fish;

std::cout << pole->length;

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

cin.getline(address, 80);

替换为

cin >> address;

将对程序的运行带来什么影响?

使用cin >> address将使得程序跳过空白,知道找到非空白字符为止,然后将读取字符,知道遇到空白为止。因此他将跳过数字输入后的换行符,从而避免这种问题。另一方吧,它只读取一个单词,而不是整行。

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

#include<vector>

#include<string>

#include<array>

const int N = 10;

std::vector <std::string> ret(N);

std::array<std::string, N> res;


http://www.ppmy.cn/news/69818.html

相关文章

学习RHCSA的day.03

目录 2.6 Linux系统的目录结构 2.7 目录操作命令 2.8 文件操作命令 2.6 Linux系统的目录结构 1、Linux目录结构的特点 分区加载于目录结构&#xff1a; 使用树形目录结构来组织和管理文件。整个系统只有一个位于根分区的一个根目录&#xff08;树根&#xff09;、一棵树。…

SolidWorks二次开发(C#)-环境搭建

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 1、前言2、按照Solidworks2022和VS20223、在VS2022中创建一个Winform工程4、添加SolidWorks动态链接库5、在按钮中添加代码6、测试 1、前言 做了有些SolidWorks二次…

浅谈Koa2框架

框架和库 什么是框架 前端框架一般指用于简化网页设计的框架&#xff0c;使用广泛的前端开发套件。 比如&#xff0c;jquery&#xff0c;extjs&#xff0c;bootstrap等等&#xff0c;这些框架封装了一些功能&#xff0c;比如html文档操作&#xff0c;漂亮的各种控件&#xf…

C语言操作符详解(上)

C语言操作符详解&#xff08;上&#xff09; 前言1. 算术操作符2. 移位操作符2.1 左移操作符(<<)2.2 右移操作符&#xff08;>>&#xff09; 3. 位操作符3.1 按位与&#xff08;&&#xff09;3.2 按位或&#xff08;|&#xff09;3.4 按位异或&#xff08;^&am…

node笔记_koa框架的路由

文章目录 ⭐前言⭐koa 原生路由写法⭐引入 koa-router&#x1f496; 安装koa-router&#x1f496; 动态读取路径文件作为路由 ⭐结束 ⭐前言 大家好&#xff0c;我是yma16&#xff0c;本文介绍koa框架的路由。 往期文章 node_windows环境变量配置 node_npm发布包 linux_配置no…

Java面向对象程序设计实验报告(实验三 继承的练习)

✨作者&#xff1a;命运之光 ✨ 专栏&#xff1a;Java面向对象程序设计实验报告 ​ 目录 ✨一、需求设计 ✨二、概要设计 ✨三、详细设计 ✨四、调试结果 ✨五、测试结果 ✨附录&#xff1a;源程序代码&#xff08;带注释&#xff09; demo3类 Person类 Student类 …

RK3568平台开发系列讲解(调试篇)debugfs 分析手段

🚀返回专栏总目录 文章目录 一、enable debugfs二、debugfs API三、使用示例沉淀、分享、成长,让自己和他人都能有所收获!😄 📢Linux 上有一些典型的问题分析手段,从这些基本的分析方法入手,你可以一步步判断出问题根因。这些分析手段,可以简单地归纳为下图: 从这…

CTFHub-ctfhub-Git泄露-Log

CTFHub-ctfhub-Git泄露-Log 当前大量开发人员使用git进行版本控制&#xff0c;对站点自动部署。如果配置不当,可能会将.git文件夹直接部署到线上环境。这就引起了git泄露漏洞。请尝试使用BugScanTeam的GitHack完成本题 1、dirsearch扫描 github上下载dirsearch-master 命令F…