C++学习
副露のmagic
这个作者很懒,什么都没留下…
展开
-
C++语言基础学习13
3. 在 main 函数中,创建一个包含一组整数数据的链表,然后调用链表的输出方法将所有元素打印出来。复活,正好算法方面也学习到这,尝试手写一下:先贴个成熟代码在这,等我回来看看我写的答辩。2. 提供一个 linkedList 类来管理链表,包含构建链表和输出链表元素的方法。构建一个单向链表,链表中包含一组整数数据。输出链表中的所有元素。按照顺序打印出链表中的元素,用空格隔开,最后一个元素后没有空格。每组的第一行包含一个整数 n,表示需要构建的链表的长度。接下来一行包含 n 个整数,表示链表中的元素。原创 2023-11-15 14:15:38 · 45 阅读 · 0 评论 -
C++基础知识学习12
首先读取n确定有几个字符串要获取,建立string来收纳内容,然后获取每个字符串(好像cin或者getline都可以),然后进行遍历,根据下标,设计一个空字符串a,进行s【奇数】,s【偶数】的交换。结果一下就对了,乐。以下是使用函数的方法,注意在使用函数时,要修改传入参数的情况下要使用&符号。输入的第一行是一个整数n,表示有测试数据。给定一个长度为偶数位的字符串,请编程实现字符串的奇偶位互换。接下来是n组测试数据,保证串长为偶数位(串长原创 2023-11-10 23:12:32 · 66 阅读 · 1 评论 -
C++基础知识学习11
如果后面还需要将小写字符转换成大写,那我们还需要再写一次,代码就会显得有些冗余,更致命的是,如果这是一段很长的代码,并且在多个地方应用,当我们有了新的需求,需要对这一段代码进行修改时,我们需要一处处的找出再修改,这种情况下我们可以使用第一节中提到的函数,将代码模块化,并在合适的地方重用,从而增加代码的复用性和可维护性。代码结果如下,注意result每一次依然要制空。a -= 32;return a;int n;cin >> n;getchar();//吸收一个回车符号。原创 2023-11-10 15:35:48 · 132 阅读 · 1 评论 -
C++语言基础学习10
每组输出结果占一行。如果输入的大写字母都在集合{A,B,C,D,F}中,则输出对应的平均绩点,结果保留两位小数。否则,输出“Unknown”。每门课的成绩分为A、B、C、D、F五个等级,为了计算平均绩点,规定A、B、C、D、F分别代表4分、3分、2分、1分、0分。设置 string字符串,按行收纳字母,后读取判断,获得相应的分数并加入到sum中,除以string长度来获得最终均分。每组输入数据占一行,由一个或多个大写字母组成,字母之间由空格分隔。原创 2023-11-09 21:50:22 · 56 阅读 · 1 评论 -
C++语言基础学习9
程序应该接受用户输入的正整数作为正方形的边长,并打印相应大小的正方形框。请注意,内部为空白,外部是由 "*" 字符组成的框。二维数组,它是由行和列组成的表格状数据结构,可以理解为包含其他数组的数组,二维数组的元素可以通过两个索引来访问,一个索引表示行,另一个表示列, 比如。由于是二维的,显然这个时候想要直接通过一层for循环来实现遍历是不太现实的,这就需要使用到前言中所讲的。接受边长n,先打印n个星号,然后换行,在第1和第n个位置打星号,如此重复n-2次,最后打印n个星号。表示第一行第一列的元素,值为1,原创 2023-11-09 21:09:10 · 77 阅读 · 1 评论 -
C++语言基础学习8
改进博客手法尝试。原创 2023-11-09 20:43:10 · 89 阅读 · 1 评论 -
C++语言基础学习7和学习反思
一天,他把许多积木块组成了好多高度不同的堆,每一堆都是一个摞一个的形式。代码结果如上:中间需要对vector进行遍历:将每个元素进行赋值,值的大小等于每一堆积木的积木块的数量,并计算总积木数量。其实很多概念没有完全搞清楚,然后也一直会犯一些不应该出现的错误,导致学习进度慢的同时,反复再做时还是没办法一下作对。总之还是多做吧,感觉也没有那么蠢,主要还是没去认真学概念打代码吧,就像做数学一样很想当然的就写答案这样。总体来说思想还是很简单的 :也即首先算出平均数,然后用高于平均的堆做差,累加即可。原创 2023-11-09 19:30:48 · 174 阅读 · 1 评论 -
C++语言基础学习6
2. 从正序数组中,每隔一个单位(即索引为奇数的元素),输出其值,同样用空格分隔。数组和容器相对操作比较复杂,需要记住的比较多,这里也会多打几次巩固记忆。1. 将输入的整数数组倒序输出,每个数之间用空格分隔。这一节主要是讲数组和vector(容器)用于存储。学校体测耽误了时间,补一补,题目如下。原创 2023-11-09 19:12:33 · 38 阅读 · 1 评论 -
C++语言基础学习5
本题是A+B系列的最后一题,也是前面几道题的综合,不涉及到新的语法知识点,我们可以把这节内容当成对之前学习的一个练习,但是仍然可以从这道题目中。先来看题目要求:输入的第一行为一个整数N,接下来N行每行会先输入一个整数M,然后在同一行内输入M个整数, 然后计算这M个整数的和。这个部分中,尾部std::endl的意思是如果有新的内容,则另起一行。如上是题目的注解,很遗憾写的时候没有注意到第二点,打印出来格式错误。会有多个N的输入,也就是说,会有多组测试数据。如有错误,敬请指正,不胜感激!原创 2023-11-06 22:07:54 · 36 阅读 · 0 评论 -
C++语言基础学习4
整体来说思路比较简单:首先检验n是否为0,为零直接break;不为零则开始逐步读取后续的值。很容易想到设定一个result用于计算总和。其中result = result + a;也可以写成 result += a;需要计算若干个整数的和,每行第一个数n表示后面有n个数,后面的几个数是输入的整数,如果n为0时,结束输入。(彩蛋:为什么我的代码经常报错)如有错误,敬请指正,不胜感激!原创 2023-11-06 21:32:26 · 39 阅读 · 0 评论 -
C++语言基础学习3
使用if和else做判断。如果if的条件成立,则运行if里的内容,否则运行else内的内容。也可以用else if建立多个分支结构。其中,break表示跳出而离它最近的while、do while、for语句的,break之后的代码都不会再执行。,但是会有一对是0和0,标志着输入结束,这意味着我们在遇到这种情况时需要主动退出循环操作,那我们就需要使用到。而continue则是,该次语句不执行,跳过该次,下次继续执行。语句来给程序加上一个退出的条件。留意:与&& 或|| 非!在本题中,任务仍然是计算。原创 2023-11-06 20:56:30 · 38 阅读 · 0 评论 -
C++语言基础学习2
此处判错,意思为只要有可输入的a,b就继续输入。实际上答案打印出来没问题,但是和题目意义不相符。如果N为10,有15行数对要输入就会出现错误。此外,也可以使用while控制次数。while的判断条件控制到0即停止,因此形如。如果是--a,则先计算后判断,简单记就是a离得近就先判断,离得远就先算。a=9,true,运行,a=8,打印。也即:a=10,true,运行,a=9,打印。同时,也可以用while嵌套判断,如下图所示。如有错误,敬请指正,不胜感激!如图,为a--的结果。如图,为--a的结果。原创 2023-11-06 20:44:00 · 33 阅读 · 0 评论 -
C++语言基础学习1
最后结果如上,连续的输入两组a和b,计算他们的结果,大致如图。cin》a》b这个表达式只要有a和b,且能输入就可以视为“正确的”。用于while的正确性判断。中间简单的出错了一次,没有习惯先注明定义的“result”的数据类型。其他总体来说比较简单。为了学习算法,先学习C++基础知识,希望尽快掌握和熟练基本知识。总体来说还是要熟悉语言的大致形状?如有错误,敬请指正,不胜感激!第一节 问题是计算a+b。原创 2023-11-06 19:56:05 · 41 阅读 · 0 评论