C++primer 练习4.31-4.35

Exercise 4.31:
编写程序从标准输入设备读入字符串,并把该串存放在字 符数组中。描述你的程序如何处理可变长的输入。提供比 你分配的数组长度长的字符串数据测试你的程序。

        string in_str;
    const size_t str_size = 10;
    char result_size[str_size+1];

    cout<<"Enter a string<="<<str_size<<"characters"<<endl;
    cin>>in_str;

    size_t len = strlen(in_str.c_str());
    if(len > str_size)
    {
        len = str_size;
        cout<<"String is longer than "<<str_size<<"characters and is stored only"<<str_size<<"characters"<<endl;
    }

    strncpy(result_size,in_str.c_str(),len);

    result_size[len+1] = '\0';

Exercise 4.32:
编写程序用 int 型数组初始化 vector 对象。

    const size_t arr_size = 8;
    int int_arr[arr_size];

    cout<<"Enter"<<arr_size<<"Numbers:"<<endl;
    for(size_t ix =0;ix != arr_size;++ix)
    {
        cin>>int_arr[ix];
    }
    vector<int> ivec(int_arr,int_arr+arr_size);

Exercise 4.33:
编写程序把 int 型 vector 复制给 int 型数组。

      vector<int> ivec;
    int ival;

    cout<<"Enter numbers:(Ctrl+z to end)"<<endl;
    while(cin>>ival)
    {
        ivec.push_back(ival);
    }

    int *parr = new int[ivec.size()];
    size_t ix = 0;
    for(vector<int>::iterator iter = ivec.begin();iter != ivec.end();++iter,++ix)
    {
        parr[ix] = *iter;
    }
    delete [] parr;

Exercise 4.34:
编写程序读入一组 string 类型的数据,并将它们存储在 vector 中。接着,把该 vector 对象复制给一个字符指 针数组。为 vector 中的每个元素创建一个新的字符数 组,并把该 vector 元素的数据复制到相应的字符数组 中,后把指向该数组的指针插入字符指针数组。
Exercise 4.35:
输出习题 4.34 中建立的 vector 对象和数组的内容。输 出数组后,记得释放字符数组。

vector<string> svec;
    string str;

    cout<<"Enter string:(Ctrl+z to end)"<<endl;
    while(cin>>str)
        svec.push_back(str);

    char **parr = new char*[svec.size()];

    size_t ix = 0;
    for(vector<string>::iterator iter = svec.begin();iter != svec.end();++iter,++ix)
    {
        char *p = new char[(*iter).size()+1];
        strcpy(p,(*iter).c_str());
        parr[ix] = p;
    }



    //输出vector对象的内容
    cout<<"Content of vector:"<<endl;
    for(vector<string>::iterator iter2 = svec.begin();iter2 != svec.end();++iter2)
        cout<<*iter2<<endl;
    cout<<"Content of character arrays:"<<endl;
    for(ix = 0;ix != svec.size();++ix)
        cout<<parr[ix]<<endl;
    //释放各个字符数组
    for(ix=0;ix != svec.size();++ix)
    delete [] parr;

 

转载于:https://www.cnblogs.com/wxmwanggood/p/9340304.html

C++ Primer第五版_第四章习题答案(31~38) 如果 someValue的值为真,x 和 y 的值都自增并返回 y 值,然后丢弃 y 值,y递减并返回 y 值。如果 someValue的值为假,x 递减并返回 x 值,然后丢弃 x 值,y递减并返回 y 值。本节的程序使用了前置版本的递增运算符和递减运算符,解释为什么要用前置版本而不用后置版本。假设 i 是int类型,d 是double类型,书写表达式 i*=d 使其执行整数类型的乘法而非浮点类型的乘法。逗号表达式的优先级是最低的。根据4.12节中的表说明下面这条表达式的含义。说明下面这条表达式的含义。 阅读详情

相关推荐

C++ Primer第五版_第九章习题答案(31~40)

循环结束后,改变vector的容器大小(元素数量)为原来的1.5倍,使用元素的默认初始化值填充。如果容器的大小超过1024,vector也会重新分配空间以容纳新增的元素。如果上一题的程序读入了256个词,在resize之后容器的capacity可能是多少?在本节最后一个例子中,如果不将insert的结果赋予begin,将会发生什么?假定vi是一个保存int的容器,其中有偶数值也有奇数值,分析下面循环的行为,然后编写程序验证你的分析是否正确。编写程序,探究在你的标准实现中,vector是如何增长的。

Z's Palace 506

C++Primer4.35练习题。

很简单的一断代码,但是被迷惑了。

severnth 613

基于STM32的智能血氧、心率、体温、血压监测系统

摘要:本文设计了一款基于STM32F103C8T6的多功能健康监测系统,可实时检测血氧、心率、体温和血压四项生理参数。系统集成MAX30102、DS18B20等传感器模块,采用OLED显示和蓝牙无线传输技术,实现一键血压测量、阈值报警及手机APP数据管理功能。硬件设计包含传感器采集、电源管理、显示报警等模块;软件采用模块化架构,实现数据采集处理、蓝牙通讯等功能。测试表明系统测量准确可靠,为家庭健康监测提供了便携解决方案。未来可扩展更多监测参数和智能分析功能。

743

C++Primer第五版第四章练习4.31

【代码】C++Primer第五版第四章练习4.31

huguanglinux的博客 592

C++Primer第五版第四章练习4.35

/ival转成double后与1.0相乘。ui转成double与积相减。//ival转成float, 和转成double,和转成char.在下面的表达式中发生了隐式转换吗?//'a'首先转成int, 和转换成char。//ui转成float,积转成double。

huguanglinux的博客 417

C++ Primer4章 习题4.35

//4.35.cpp //读入一组string类型的数据,并将它们存储在vector中 //接着,把vector对象复制给一个字符指针数组 //为vector中的每个元素创建一个新的字符数组, //并把该vector元素的数据复制到相应的字符数组中 //然后把指向该数组的指针插入字符指针数组中 //输出建立vector对象和数组的内容 #include #include #include usin

巫山老妖 1128

c++ Primer 第七章:类 练习答案记录

c++ Primer 第七章:类 练习答案记录

Is_Superman的博客 2018

C++ Primer学习练习—— 第二章 变量和基本类型

变量和基本类型

weixin_43488529的博客 875

C++ Primer学习练习——第三章 字符串、向量和数组

字符串、向量和数组

weixin_43488529的博客 1112

C++ Primer(第五版)6.3.2--6.4练习

6.30 1)for循环中的return没有返回值,编译器报错; 2)for循环之后没有return语句,编译器无法发现这一错误。 6.31 当引用绑定的是函数的局部变量时,返回的引用或常量引用都是无效的。 6.32 合法。功能是把数组按照其索引号赋值。get函数接受一个数组指针和索引号为参数,返回数组该元素的引用,然后在main函数的for循环中赋值。...

wlli1985的博客 577

C++ Primer(第五版) 2.4--2.5.3节练习

2.26 (a)错误,const对象必须初始化; (d)错误,const对象的值不能再改变。 2.27 (a)错误,非常量引用不能绑定到字面值; (b)合法; (c)合法,常量引用可以绑定字面值; (d)合法,p3指向的值和自身都不能改变; (e)合法; ...

wlli1985的博客 590

C++ Primer(第五版)4.9--4.11.3节练习

4.28 #include <iostream> using namespace std; int main() { cout << "char: " << sizeof(char) << endl; cout << "short: " << sizeof(short) << endl; co...

wlli1985的博客 350

c++ Primer 第二章:变量和基本练习 练习答案记录

c++ Primer 第二章:变量和基本练习 练习答案记录

Is_Superman的博客 697

C++ Primer 第五版 第十章 练习题编程题目答案

https://github.com/jzplp/Cpp-Primer-Answer 练习10.110.1程序代码 练习10.210.2程序代码 练习10.310.3程序代码 练习10.4 会舍弃每个double中的小数部分,得到的结果是一个整数 练习10.5 会比较两个roster中对应C风格字符串的地址是否一致 练习10.610.6程序代码 练习10.7 (a) vector<int> vec; list<in

Coding home - 漂流瓶jz 604

c++ Primer 第六章:函数 练习答案记录

c++ Primer 第六章:函数 练习答案记录

Is_Superman的博客 1189

C++ Primer (第五版)第三章习题部分答案

C++ Primer (第五版)第三章习题部分答案

weixin_48467622的博客 1607

C++ Primer 第五版 第三章 练习题编程题目答案

https://github.com/jzplp/Cpp-Primer-Answer 练习3.1重写1.9程序代码重写1.10程序代码重写1.11程序代码重写1.20程序代码重写1.21程序代码重写1.22程序代码重写1.23程序代码重写1.25程序代码 练习3.2读入整行程序代码读入词程序代码 练习3.3 string类的输入运算符遇到空白字符就停止输入。 getline遇到换行符才停止输入,并丢弃换行符。 练习3.4比较字符串相等程序代码比较字符串长度程序代码

Coding home - 漂流瓶jz 548

c++ Primer 第三章:字符串、向量和数组 练习答案记录

【代码】c++ Primer 第三章:字符串、向量和数组 练习答案记录。

Is_Superman的博客 1798

C ++ Primer(第五版)第十章练习答案

C ++ Primer(第五版)第十章练习答案10.1 节练习练习 10.1练习 10.210.2.1 节练习练习 10.3练习 10.4练习 10.510.2.2 节练习练习 10.6练习 10.7练习 10.810.2.3 节练习练习 10.9练习 10.1010.3.1 节练习练习 10.11 10.1 节练习 练习 10.1 头文件 algorithm 中定义了一个名为 count 的函数,它类似 find,接受一对迭代器和一个值作为参数。count 返回给定值在序列中出现的次数。编写程序,读取

不是机器人的博客 1323

YOLOv8改进 | 细节涨点篇 | DySample一种超级轻量的动态上采样算子(效果完爆CARAFE)

本文给大家带来的改进机制是一种号称超轻量级且有效的动态上采样器——DySample。与传统的基于内核的动态上采样器相比,DySample采用了一种基于点采样的方法,相比于以前的基于内核的动态上采样器,DySample具有更少的参数、浮点运算次数、GPU内存和延迟。此外,DySample在包括语义分割、目标检测、实例分割、全景分割和单目深度估计在内的五个预测任务中,性能均优于其他上采样器(截至目前最有效的上采样算子)。

Snu77的博客 1万+

2025更新!华证ESG评级-得分数据(2009-2024.12)

参考《经济研究》中方先明(2023)的做法,将华证ESG评级进行赋值,指标包含C、CC、CCC、B、BB、BBB、A、AA、AAA共9个等级,将上市公司ESG等级从低到高分别赋值为1至9团队将华证ESG评级得分数据,更新至2024年12月31日,并统计上市公司-ESG各年评级得分数据!数据介绍数据名称:2025更新!华证ESG评级-得分数据数据范围:A股上市公司时间范围:2009-2024年样本数量:5.48万条数据来源:华证ESG评级

上一篇: C/C++中各种类型int、long、double、char表示范围(最大最小值)
下一篇: cmake 手册详解
dayan2391
博客等级 码龄10年 2粉丝 0原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值