备考11408
记录C语言,Linux,操作系统,计算机组成原理,数据结构,计算机网络的学习历程
混迹网络的权某
26考研土木跨考11408
展开
-
每天一道C语言精选编程题之逆序字符串
因此,我们可以定义两个指针分别指向字符串⾸位和末位,对其进⾏交换操作,然后将两个指针相向移动⼀位,继续交换剩余字符。直⾄两个指针的相对位置发⽣变化时结束操作,最终得到的字符串即为逆序后的字符串。最中间的两位互换,或者字符串⻓度为奇数时,中间字符不变。输⼊⼀个字符串,写⼀个函数将⼀个字符串的内容逆序过来。第⼆位与倒数第⼆位互换;原创 2024-08-25 23:42:05 · 300 阅读 · 0 评论 -
每天一道C语言精选编程题之求求字符串长度【进阶版】
在递归函数中,函数会调⽤⾃⼰,并在每次调⽤中传⼊不同的参数,直到达到某个基准条件,然后递归结束并返回结果。输⼊⼀个字符串(字符串⻓度⼩于等于30,中间不包含空格),使⽤Strlen函数可以求字符串的⻓。1. 递归结束条件:递归必须有⼀个结束条件,否则会导致⽆限递归,最终导致堆栈溢出等问题。写⼀个函数Strlen,可以求字符串⻓度,除了函数的形参,函数中不能使⽤多余的变量。3. 递归传参:递归函数每次调⽤⾃⾝时,需要传⼊不同的参数,以处理不同的情况。2. 递归调⽤:字符串的⻓度=1+后⾯⼦字符串的⻓度;原创 2024-08-25 23:35:15 · 246 阅读 · 0 评论 -
每天一道C语言精选编程题之求字符串长度
指针是⼀种可以指向内存地址的数据类型,我们可以通过移动指针的位置来访问内存中的不同数据。在本题中,我们可以定义⼀个指向字符串开头的指针,并不断地移动它来计算字符串⻓度。中,以字符数组的形式存在,数组的最后⼀个元素是空字符'\0',⽤来表⽰字符串的结束。⽐如说字符串"hello",在内存中存储的形式就是'h'、'e'、'l'、'l'、'o'、'\0'。输⼊⼀个字符串(字符串⻓度⼩于等于30,中间不包含空格),使⽤Strlen函数可以求字符串的长度,并返回。⾸先,我们需要了解字符串的存储⽅式。原创 2024-08-25 22:55:59 · 327 阅读 · 0 评论 -
每天一道C语言精选编程题之printf两个整数的平均值
1. 两数本⾝和两数的平均数不会溢出,考虑平均数与其中⼀个数的差:(x+y)/2-x=(y-x)/2;2. 要求得 (x+y)/2,我们可以先求得 x 与 (y-x)/2,然后求得他们的和即可;输⼊2个整数m和n,写⼀个函数average,求2个整数的平均值,考虑整数过⼤溢出的问题。本题最直观的解法为:两数相加后除以⼆向下取整。不过因为整数过⼤时,两数相加会溢出的问题,3. x 与 (y-x)/2 在计算过程中都不会溢出,因此这个⽅法成⽴。原创 2024-08-19 23:55:49 · 267 阅读 · 0 评论 -
每天一道C语言精选编程题之交换两个整数
5. 在调⽤函数时,将需要交换值的两个整数变量的地址作为参数传递给函数,可以使⽤ & 运算符 来获取变量的地址。1. 定义⼀个函数 Swap ,参数是两个整型指针,表⽰需要交换值的两个整数变量的地址。明确函数的作⽤,即交换两个整数的值。写⼀个函数Swap,可以交换两个整数的内容。注意必须实现成函数完成。输⼊2个整数,调⽤⾃定义函数Swap,完成2个整数的交换。2. 在函数中,使⽤⼀个临时变量来存储第⼀个整数变量的值。3. 将第二个整数变量的值赋给第⼀个整数变量。4. 将临时变量的值赋给第二个整数变量。原创 2024-08-18 23:46:02 · 648 阅读 · 0 评论 -
每天一道C语言精选编程题之字符转换
输⼊⼀个字符串,将字符串中⼤写字⺟全部转为⼩写字⺟,⼩写字⺟转成⼤写字⺟,其他字符保持不变。1. 对于每个字符,我们检查它是⼤写字⺟、⼩写字⺟还是其他字符;注:字符串的⻓度⼩于等于30,其中字符串中包含空格。2. 如果它是⼤写字⺟,我们将其转换为⼩写字⺟;3. 如果它是⼩写字⺟,我们将其转换为⼤写字⺟;1. islower():判断字符是否为⼩写字⺟。2. isupper():判断字符是否为⼤写字⺟。3. tolower():将字符转换为⼩写字⺟。4. toupper():将字符转换为⼤写字⺟。原创 2024-08-18 23:43:09 · 354 阅读 · 0 评论 -
每天一道C语言精选编程题之空瓶子换汽水
两个空瓶⼦可以换到⼀瓶汽⽔和⼀个空瓶⼦,相当于⼀个空瓶⼦可以 喝到⼀瓶汽⽔,⽽最后⼀定会剩余⼀个空瓶⼦⽆法继续购买汽⽔。⽔已知1瓶汽⽔1元,2个空瓶可以换⼀瓶汽⽔,输⼊整数n(n>=0),表⽰n元钱,计算可以多少汽⽔。2. 每次将剩余的空瓶⼦ empty 除以 2,表⽰可以换取的汽⽔数量,将这些汽⽔数量加到 total 中。3. 将剩余的空瓶⼦ empty 除以 2 向上取整,表⽰剩余的空瓶⼦买了汽⽔后喝完剩下的空瓶⼦数量。每次尽可能地⽤空瓶⼦去换取汽⽔,直到剩余的空瓶⼦不⾜以再换⼀瓶汽⽔为⽌。原创 2024-08-15 23:38:49 · 217 阅读 · 0 评论 -
每天一道C语言精选编程题之printf菱形
1. ⾸先打印上半部分的菱形。需要注意的是,上半部分共有 n ⾏,第 i ⾏需要打印 2*i-1 个符号,⽽ 且这些符号需要居中对⻬。为了实现居中对⻬,我们可以在每⼀⾏的前⾯打印 n-i 个空格。与上半部分类似,下半部分共有 n-1 ⾏,第 i ⾏需要打印 2*(n-i)-1个符号,同样需要居中对⻬,并且需要在每⼀⾏的前⾯打印n - (n - i)个空格。来说,我们可以使⽤⼀个循环来遍历每⼀⾏,并使⽤另⼀个循环来打印空格和符号。输⼊⼀个整数n,打印对应2*n-1⾏的菱形图案。输⼊的整数n决定了图案的⼤⼩。原创 2024-08-15 23:28:59 · 464 阅读 · 0 评论 -
每天一道C语言精选编程题之自幂数
我们可以使⽤⼀个循环遍历 1~100000 并检查每个数是否为⾃幂数。写⼀个代码打印1~100000之间的所有的⾃幂数,中间⽤空格分隔。3. 判断 sum 与 i 是否相等,相等则 i 是⾃幂数。2. 计算 i 的每⼀位的 n 次⽅之和 sum;注:可以使⽤ pow 函数求得某个数的次⽅数。幂数,因为 1^3+5^3+3^3=153。1. 计算 i 的位数 n;⾃幂数是指⼀个数的位数的n次。原创 2024-08-15 23:25:21 · 379 阅读 · 0 评论 -
每天一道C语言精选编程题之四人推理盗窃者
真正的盗窃者只有⼀个,因此我们可以假设其中⼀⼈为盗窃者,通过对每个嫌疑⼈的供词进⾏分析, 逐⼀排除嫌疑⼈。• 如果D说真话,则C在胡说,即C说假话,盗窃者不是D;如果D说假话,则盗窃者不是C。某地发⽣了⼀件盗窃案,警察通过排查确定盗窃者必为4个嫌疑⼈的⼀个。• 如果A说真话,则盗窃者不是A;如果A说假话,则盗窃者是A。• 如果B说真话,则盗窃者是C;如果B说假话,则盗窃者不是C。• 如果C说真话,则盗窃者是D;如果C说假话,则盗窃者不是D。已知3个⼈说了真话,1个⼈说的是假话。原创 2024-08-12 23:57:39 · 288 阅读 · 0 评论 -
每天一道C语言精选编程题之排序整形数组
冒泡排序是⼀种基础的排序算法,其基本思想是⽐较相邻的两个元素,如果它们的顺序错误就交换它 们的位置,直到整个序列有序为⽌。2. 在对序列中的所有相邻元素都进⾏了⼀次⽐较之后,第⼀轮排序结束,此时最后⼀个元素已经是整个序列中最⼤的元素。1. 从序列的第⼀个元素开始,对相邻的两个元素进⾏⽐较,如果顺序错误就交换它们的位置,使较。若在某⼀轮排序中未进⾏交换操作,则当前序列已经是升序状态,可以结束排序。⼩的元素排在前⾯,较⼤的元素排在后⾯。原创 2024-08-12 23:54:13 · 413 阅读 · 0 评论 -
每天一道C语言精选编程题之计算最大值和最小值的差值
我们可以使⽤⼀个变量记录输⼊的数,在每次需要更新最值前,输⼊⼀个数与之进⾏判 断,从⽽避免了定义数组。然后我们通过循环,将剩余的 9 个数与当前的最⼤值和最⼩值进⾏⽐较,更新 max 和 min 的。在循环的过程中,⽤两个变量 max 和 min 分别记录当前已经输⼊的最⼤值和最⼩值,分别初始。我们可以使⽤⼀个循环来输⼊这10个整数并记录在⼀个数组中,然后使⽤另⼀个循环查找两个最。输⼊10个整数,写代码找出其中最⼤值和最⼩值,计算最⼤值和最⼩值的差,并打印出差值结果。值,直到所有的数都输⼊完毕。原创 2024-08-10 23:14:37 · 314 阅读 · 0 评论 -
每天一道C语言精选编程题之分数求和
计算 1/1 - 1/2 + 1/3 - 1/4 + 1/5 - …+ 1/99 - 1/100 的值,并打印出结果。注:除法分为整数除法和 浮点数除法,要计算出⼩数,得采⽤浮点数除法,浮点数除法的操作数中⾄少要保证有⼀个浮点数。3. 对于奇数 i,将 1/i 加⼊到sum中,对于偶数 i,将 sum 减去 1/i。我们就可以得到所求的。在计算 1/i 时,需将除法转化为浮点数除法,可以将 1 写为 1.0 实现。1. ⾸先,我们可以定义⼀个变量sum来记录计算结果,初始值为0;可以⽤⼀个循环来计算。原创 2024-08-10 23:04:33 · 344 阅读 · 0 评论 -
自学C语言——数组(一)
1.数组的概念数组是一组相同类型元素的集合。数组中存放的是1个或多个数据,但是数组元素个数不能为0。数组中存放的多个数据,类型是相同的。数组分为一维数组和多维数组,多维数组一般比较多见的是二维数组。原创 2024-08-10 22:58:41 · 828 阅读 · 0 评论 -
每天一道C语言精选编程题之printf最小公倍数
最⼩公倍数是指两个或多个整数共有倍数中最⼩的⼀个。为了求出两个数的最⼩公倍数,可以采⽤枚 举试除法。2. 从⼩到⼤依次判断能否同时整除这两个数,若某个数满⾜同时被两个数整除,则其为公倍数;特别地,最⼩公倍数可以由两数乘积除以两数的最⼤公约数求得。3. 从⼩到⼤遍历找到公倍数时,此数即为最⼩公倍数,此时应当结束循环;1. 具体来说,公倍数⼀定⼤于两个数,从两个数中的较⼤值开始枚举;输⼊2个整数m和n,计算m和n的最⼩公倍数,并打印出结果。原创 2024-08-07 23:49:46 · 343 阅读 · 0 评论 -
每天一道C语言精选编程题之计算最大公约数
最后,通过数学归纳法证明,在辗转相除的过程中,每次都将较⼤的数除以较⼩的数取余数,余数⽐ 上⼀轮操作的被除数⼩,最终余数为0时,较⼩的数就是 a 和 b 的最⼤公约数。bq + r ,那么 d 也是 b 和 r 的公约数,因为 d 能整除 a 和 b ,所以 d 也能整除 a - bq ,学原理:如果 a 和 b 是两个正整数,且 a>b ,则a和b的最⼤公约数等于 b 和 a%b ( a 除以 b。假设我们已经知道a和b的最⼤公约数为 d ,即 d 是 a 和 b 的公约数,那么根据带余除法, a =原创 2024-08-07 23:43:45 · 481 阅读 · 0 评论 -
自学C语言——分支和循环应用(猜数字游戏)
猜数字游戏游戏要求1.电脑随机生成一个1~100之间的随机数2.如果猜小了,电脑提示:猜小了如果猜大了,电脑提示:猜大了如果猜对了,电脑提示:恭喜你,猜对了,游戏结束3.结束游戏后,可以重新游玩随机数生成rand函数,可以生成随机数原创 2024-08-05 17:49:31 · 558 阅读 · 0 评论 -
每天一道C语言精选编程题之判断三角形
判断三角形题目描述输⼊三个整数a,b,c,判断由a,b,c作为三条边组成的三⻆形,如果不能组成三⻆形则输出:⾮三⻆形;如果是三⻆形,再继续判断,如果是等边三⻆形,则输出:等边三⻆形;如果是等腰三⻆形,则输出:等腰三⻆形;否则输出普通三⻆形。输⼊:3 4 5输出:普通三⻆形输⼊:3 3 3输出:等边三⻆形输⼊:3 3 4输出:等腰三⻆形解法思路三⻆形的判断⽅法是:对于三条边⻓a、b、c,若任意两边之和⼤于第三边,那么就可以组成⼀个三 ⻆形,即a+b>c, a+c>b, b+c>a。原创 2024-08-03 23:33:09 · 509 阅读 · 0 评论 -
每天一道C语言精选编程题之printf素数
素数是指只能被1和它本⾝整除的正整数。使⽤C语⾔写⼀个程序打印100~200之间的素数,数字中间使⽤空格分割。原创 2024-07-31 17:05:17 · 454 阅读 · 0 评论 -
每天一道C语言精选编程题之printf乘法口诀表
*”是乘号,乘号前⾯和后⾯的数叫做因数,“=”是等于号,等于号后⾯的数叫做积。3. 然后使⽤ printf 函数打印出每⼀项,包括被两个因数和乘积,它们⽤空格隔开,并且使⽤ %2d 格式控制符将乘积左对⻬输出,使得每个乘积占两个字符宽度;2. 在内部循环中,我们⽤ j 迭代列号,从 1 到 i ,表⽰第 i ⾏中的第 j 列;4. 在打印完每⼀⾏后,需要继续打印⼀个 '\n',表⽰当前⾏遍历结束,开始下⼀⾏的打印;1. 在外部循环中,我们⽤ i 迭代⾏号,从 1 到 9 ,表⽰乘法表中的第 i ⾏;原创 2024-07-30 12:18:25 · 401 阅读 · 0 评论 -
每天一道C语言精选编程题之printf奇数
打印 1~100之间的奇数题目描述:使⽤C语⾔写⼀个程序打印 1~100之间的奇数,要求输出的数字中间加上空格。原创 2024-07-29 23:56:02 · 281 阅读 · 0 评论 -
考研数据结构(一)——数据结构的基本概念
逻辑结构是指数据元素之间的逻辑关系,即从逻辑关系上描述数据,它与数据的存储无关,是独立于计算机的数据的逻辑结构,分为线性结构和非线性结构,线性表是典型的线性结构,集合、数和图是典型的非线性结构。数据是信息的载体,是描述客观事物属性的数字符及所有能输入到计算机中,并被计算机程序识别和处理的符号的集合。数据的逻辑结构和存储结构是密不可分的两个方面,一个算法的设计取决于所选定的逻辑结构,而算法的实现依赖于所采用的存储结构。数据对象是具有相同性质的数据元素的集合,是数据的一个子集。在此集合上的一组操作的总称。原创 2024-07-28 23:56:00 · 709 阅读 · 0 评论 -
C语言程序设计练习(四)
1.某幼儿园里有五个小朋友编号为12345,他们按自己的编号顺序围坐在一张圆桌旁,他们身上都有若干个糖果(键盘输入),现在他们做一个分糖果游戏,从一号小朋友开始将自己的糖果均分三份,如果有多余的糖果则立即吃掉,自己留一份,其余两份分给他的相邻的两个小朋友,接着二号,三号,四号,五号小朋友,同样那么做。4.给定一个字符*,用它来构造一个对角线长5个字符,倾斜放置的菱形。3.读入一个双精度浮点数,输出保留12位小数的浮点数。2.读入一个单精度浮点数,输出保留3位小数的浮点数。原创 2024-07-26 23:56:13 · 484 阅读 · 0 评论 -
自学C语言——分支和循环(三)
接上一篇 自学C语言——分支和循环(二)原创 2024-07-25 19:56:15 · 867 阅读 · 0 评论 -
C语言程序设计练习(三)
2.浮点型数据类型存储空间大小。1.整型数据类型存储空间大小。3.其他数据类型存储空间大小。7.整型与布尔型的转换。5.打印ASCII码。原创 2024-07-24 23:57:51 · 649 阅读 · 0 评论 -
C语言程序设计练习(二)
1.给定两个整数A和B,输出A+B的值。保证A、B及结果均在整型范围内。3.给定3个整数a、b、c,计算表达式(a+b)/c的值。2.给定3个整数a、b、c,计算表达式(a+b)*c的值。原创 2024-07-23 23:57:34 · 180 阅读 · 0 评论 -
自学C语言——分支和循环(二)
接上一篇 自学C语言——分支和循环(一)swish语句是一种特殊形式的if……else结构,用于判断条件有多个结果的情况原创 2024-07-22 23:54:49 · 323 阅读 · 0 评论 -
C语言程序设计练习(一)
C语言程序设计练习(一)10道题原创 2024-07-21 23:55:51 · 320 阅读 · 0 评论 -
自学C语言——分支和循环(一)
C语言支持的三种结构:顺序,选择,循环原创 2024-07-20 23:42:51 · 617 阅读 · 1 评论 -
自学C语言——数据类型和变量(二)
printf——printf format按照指定的格式在屏幕上打印不会自动换行,需要加\n使用库函数:#include printf()可以在输出文本中指定占位符,占位符(可以用其他值占用)int main()return 0;//输出there are 3 apples占位字符串用%s,"zhangsan"占位符的第一个字符一律为百分号%原创 2024-07-19 23:18:01 · 1301 阅读 · 0 评论 -
自学C语言——C语言常见概念(二)&数据类型和变量(一)
sizeof 运算符的返回值,C语言只规定是无符号整数,并没有规定具体的类型,而是留给系统自己去决定,sizeof 到底返回什么类型。不同的系统中,返回值的类型有可能是 unsigned int,也有可能是unsigned long,甚至是 unsigned long long,对应的 printf()占位符分别是 %u、%lu。对应当前系统的 sizeof 的返回值类型,可能是unsigned int,也可能是 unsigned long long。接上一篇 自学C语言——C语言常见概念(一)原创 2024-07-18 23:15:21 · 1369 阅读 · 0 评论 -
自学C语言——C语言常见概念(一)
include //.h头文件,include包含,stdio(standard input output 标准输入输出)VS创建项目步骤:创建项目-空项目-下一步-解决方案资源管理器(创建成功)视图-添加新项,显示所有模板-.cpp改.c-关键字int、if、return......(保留字),不能和关键字重复,不能自己创造,每个关键字都有自己特殊的含义。main后不能忘记(),不能出现中文符号,一条语句结束好要有分号。main函数——主函数,必须有且仅能有一个。原创 2024-07-17 21:38:55 · 409 阅读 · 1 评论