- 博客(26)
- 收藏
- 关注
原创 2024年3月C++等级考试二级题解
第一行包含三个整数:N,NA,NB,分别表示比了N轮,小A出拳的周期长度,小B出拳的周期长度。其中,0表示“石头”,2表示“剪刀”,5表示“布”。现要求你写一个程序将目录下的文件统一规范的格式,即文件名的第一个字符如果是字母要大写,其他字母小写。对于测试数据,猜拳过程为: A:0 2 5 0 2 5 0 2 5 0 B:0 5 0 2 0 5 0 2 0 5 A赢了4轮,B赢了2轮,双方打平4轮,所以A赢的轮数多。输入一行,包含10个整数,彼此以一个空格分开,每个整数的范围是大于等于0,小于等于100。
2024-11-18 10:00:42
1140
原创 输入输出重定向
windows控制台重定向,需要启动windows控制台窗口,可以用cmd,或者 powershell窗。以windows 为例,我们甚至可以编写一个批处理文件my.bat。有足够的shell编程知识的话,可以根据目标答案,直接给程序打分。控制台重定向的方法与操作系统有关,是操作系统提供的功能。这种方法控制灵活,缺点是:操作系统不同,可能语法不同。其实,我们也可以程序中不做重定向,而通过控制台完成。经常,我们调试程序的时候,从键盘输入少量测试数据。cin 默认是键盘,但可以重新定义。
2024-07-06 10:38:45
298
原创 c++文件
1.使用c++风格的 fstream 而不是c的fopen函数,好处是:?c风格用fopen函数,缺点是需要自己管理资源,别忘记关闭!除了有 eof 的说法,in 与 cin 对象的使用完全一样。使用×.•1/这是错的,x可能没有成功读取,还是原来的值。c++ 风格,fstream 对象,在销毁时,对象析构时,会自动关闭文件,避免资源泄漏。对于最后一行有回车,会多读一个数据!可以操纵文本文件,也可以操纵二进制文件。读入,串中含有空格,读入就中止了如何。从键盘读入,从文件读入,完全一样。
2024-07-06 10:02:19
315
原创 C++结构体
struct 中的数据,默认都是public,而class 默认是 private。c, c++ 中都可以用户定义新的类型,新的类型是由已知类型组合而成的。struct 就是class,只是它的默认权限是:public。定义一个Rect 类,包含左上角,右下角两个 Point。好比,int 是一个类,int a;struct 创建的变量可以在栈中,也可以在堆中。对象可以创建在栈里,也可以创建在堆里。写一个函数,给定矩形,求它的面积。struct 创建的变量都在栈中。struct 创建的变量都在堆中。
2024-06-28 12:53:10
243
原创 宏与内联函数
宏的缺点:调试困难,错误不易理解,缺少编译器的监督。每趟从左到右,相邻比较,不行就交换之,最大的数靠右。要求,按从大到小顺序输出这n个整数,空格分开。2.10个数据冒泡排序,一共需要比较多少次?内联提高程序执行效率(增加了执行代码尺寸)宏是c语言的历史遗产,功能很强,但极容易。可以在满足效率的要求下,避免宏的尴尬。先输入一个整数n,表示后面整数个数。原理:用函数代码本身代替函数调用。1.inline 函数的缺点是?程序难于维护,会出现诡异行为。内联并不改变程序的逻辑和功能。生成的执行代码大小可能膨胀。
2024-06-28 12:36:05
295
原创 函数的递归
2.如果一个简单递归程序长久不出来,最后程序崩溃,很可能是什么错误?就是求一个数,能同时除开a和b,如果有很多,求最大那个。定理:a,b最小公倍数=a* b/gcd(a,b)用函数递归形式求解:[a, b]间所有自然数的和。递归就是函数直接或间接地,自己调用自己。1.设法构造相似性,把皮球踢给别人。递归是解決复杂问题的重要手段。递归法,写 strlen()1.c++中使用递归的缺点是。最大公约数和最小公倍数。忘记了设计递归的出口。2.干万别忘记了出口。
2024-06-28 12:17:13
187
原创 函数与指针
根象调用一个函数,从堆上申请一个很大的空间,需要返回所分配的内存地址。2.char*p指向了一个c串,要得到把它复制3倍的串,需要多大空间?c++的函数只能有一个返回值,当需要返回多个值的时候,就需要指针。可以传入多个变量的地址,函数中去改变这些变量,当做返回值。本来可以利用返回值,但返回值可能被其它信息占用了。【例】把一个串复制为双倍(串可能特别大)1.c++函数如何达到返回多个值的目的?参数为指针指针类型,又是何意义?return 多个值,逗号分隔。给定两个正整数,要求同时返回。执行函数的目的,是想。
2024-06-27 12:44:19
277
原创 C++二维数组
因此,给定了第一个元素的位置,可以算出任何行、列下标元素的位置。二维数组是连续的存储区,存完第一行存第二行。从1开始自增,并逐列填充 3x4的二维数组。初看好像挺玄奥,让所有元素都左对齐就好了。构造并输出杨辉三角的前10行。二维数组可以表示数学上的。
2024-06-27 12:27:01
338
原创 c++数组与串
串实际上就是char型的数组,只不过我们规定,它结尾的char值为0,与普通变量类似,数组也可以在堆中分配,获得更长生存期,语法相仿。如果忘记了调用 delete [] p;把它原地反转过来,即是:"abc"变成“cba”通过下标可以访问数组,从0开始,不检查越界。数组是连续多个同类型变量,只有一个名字。3种常见的变量类型:局部,全局,堆。也就是说,空串也要分配1个char。数组下标访问越界时,运行会报错。1.对c语言串的说法正确的是?串中不允许包含字母’0’2.对c数组说法正确的是?
2024-06-26 12:55:26
169
原创 for循环
仅仅使用while循环,我们就可以完成任何需要循环的逻辑,但,有些情况,使用for 循环来表达,会更自然、更易于理解。t的生存期最短,每次进行新一轮循环就会创建t,到大括号尾,释放t。1.整个for循环执行过程中,循环变量会被创建多少次?2.用for语句构建一个无限循环,怎样最恰当?i的生存期次之,在 for 语句块范围内存在。c的生存期最长,在整个函数执行时存在。输出100以内的所有素数,用空格分开。在栈中分配,自动分配,自动释放。for 循环可以嵌套使用。其特点是,循环次数固定。栈变量,即:局部变量。
2024-06-26 12:40:26
226
原创 while循环
break 跳出最内层循环,循环的下一条语句继续。2.do-while 语句的循环体可能执行多少次?循环可以多层嵌套,break 跳出最内层循环。上边的问题也很适合用 do-while 完成。1.对 break 语句说法正确的是?break 从函数执行中返回。输入一个不多于10位的正整数。break 中断当前程序。break 跳出所有循环。与 while 循环相同。也可以用,更容易理解的。如果输入了 12345。要求输出:54321。注意,不要少了分号。
2024-06-26 12:26:43
518
原创 C++函数
我们只能在开口处,放入东西(push),或者拿出东西(pop)1.当调用一个函数的时候,它的形参变量在什么时机被创建?2.函数f调用函数g,g中又调用了函数h,当h返回时。执行完毕,返回到调用语句的下一句继续执行。函数中还可以调用其它函数,甚至是调用自己。但,当参数为指针类型时,会造成影响的假象。栈好比一个很细长的桶,或是“竖井〞重要定理:形参的改变不影响实参。当该函数对应的实参创建的时候。该函数每次被调用开始的时候。LIFO 规则,后进先出,该函数代码装入内存的时候。该函数第一次被调用的时候。
2024-06-26 12:07:55
277
原创 C++指针
它的含义是:另一个数据的内存地址编号(当然是虚拟地址)好比,酱油和醋互换,只换它们的瓶子上的标签。不同类型的指针变量,可能占用不同大小的内存空间。把p内的值加一个定值(与p指向的类型有关)对指针的赋值,会造成多个指针指向同样的数据。它的目的,可以理解为:希望通过一个变量,任何类型的指针变量,都占用同样大小内存。1.关于c++的指针,说法正确的是?2.如果p是指针,p++会怎么操作?类型(有可能不是原来的实际类型)。指针的类型,是它所指向的数据的。对这些数据交换内容,很耗费。不同的编译器有不同的处理。
2024-06-21 12:43:13
384
原创 布尔值逻辑
2.把100&& 0| | 1000 赋值给bool类型,结果相当于?描述:能被4整除,并且不能被100整除的,再加上可以被400整除的。可以考虑打擂台的情况,先一个人站擂台上,以后的人依次打擂。早先C,用整数代替,0为false,其它为true。1.c+499标准中的bool类型占用多少内存?c++99 规定了用1个字节表示bool。布尔类型 c++99里有 bool。其它类型转来的,都转换为0或1。代码逻辑没错,但读起来吃力。输入三个数,要求输出最小值。最后剩下的就是所要求的。与操作系统和编译器有关。
2024-06-20 12:37:30
314
原创 类型强制转换
因为十进制的 0.1没办法用二进制有限小数表示,只好尽可能接近,有微弱误差。浮点数并不精确,太大的数,太小的数有极限,并且有效数字位数有限制。c++99 标准中有 ceil floor round 函数。1.c++中对两个浮点数进行==比较,可能会出现。强制转换的时候,可能会丢失信息,称为:截断。2.当浮点数被强制转换为整数时,可能发生。规则,小的类型可自动升级为大的类型。值其意思是:a与b足够接近吗?如果相反方向,需要强制转换。绝对值(a-b)<很小的数。早期的c没有提供函数。
2024-06-19 13:25:48
454
1
原创 一、整数与字符
由于历史原因,整数在内存中占用多大空间,并不确定,与操作系统有关整数大小可以用sizeof(xxx)进行探测,这个不是函数,就被求值了。
2024-06-19 12:55:29
435
转载 计算机野史-图灵
图灵小传:生得不伟大,死得不光荣作者:尼克Beauty is truth, truth beauty,—that is all Ye know on earth,and all ye need to know.美就是真,真就是美——你只能知道这么多,你只需知道这么多。——John Keats(济慈)图灵(Alan Turing)生于1912年6月23日,逝于1954年6月7日,活了不到42岁。生得不伟大,死得不光荣。一方面由于他的性取向,另一方面由于他在二战中从事过机密工作,图灵
2023-11-23 09:43:08
215
转载 position 属性有哪些值,各有什么特点?
positon定义和用法:position 属性规定元素的定位类型。说明:这个属性定义建立元素布局所用的定位机制。任何元素都可以定位,不过绝对或固定元素会生成一个块级框,而不论该元素本身是什么类型。相对定位元素会相对于它在正常流中的默认位置偏移。—— 来自 w3schoolposition有以下可选值:其中,CSS 定位机制:CSS 有三种基本的定位机制:普通流、浮动和绝对定位。除非专门指定,否则所有框都在普通流中定位。也就是说,普通流中的元素的...
2022-03-22 18:21:43
1256
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅