- 博客(21)
- 收藏
- 关注
原创 求一个数的二进制数中1的个数(lowbit运算)
如果能快速在统计一个 1 之后就删掉它,并不断循环的话就是一个解决思路。正好,在位运算中的 & 可以实现选择性删除。(1&1=1,1&0=0)对于一个二进制数,想要快速统计它 1 的个数,正解大概不会是遍历一遍。我们可以发现,x&=(x-1) 可以实现删除最后一位 1。
2024-01-28 16:23:01
383
原创 dotcpp刷题 1225:文科生的悲哀 1396 程序员的总统梦程序员美工梦
仔细读题如果是政治 下一次一定是历史,所以只有一种可能如果是综合,一定是地理,所以只有一种可能而历史和地理又分别对应两种不同的情况有没有觉得眼熟1 1 2 3 5 8 斐波那契数列所以这题就是一道简单的斐波那契变形题直接上代码。
2023-12-27 17:05:54
432
1
原创 本地信息搜集
kali环境whoami 查看自己身份whoami /all 获取当前域的信息ipconfig 获取IP地址的信息ipconfig /all 获取详细的IP地址信息arp -a 查看arp表systeminfo 查看操作系统信息echo %PROCESSOR_ARCHITECTURE% 查看cpuwmic product 查看安装了什么软件wmic product get name,version 更加详细一点。
2023-12-22 10:43:33
1008
原创 链式访问小练习
由于第一次打印结果为43,所以它的返回值即为2,所以第二次会打印2。首先,根据printf的打印规则,它打印的值是里面函数的返回值。因此,很显然,首先要执行最里面的printf,即打印43.由上图可知,如果成功,那么它的返回值即为写入的字符总数。接着就要考虑下一个printf打印的内容了。首先,由下图可知printf的返回值为int。那么里面的printf的返回值是多少呢?综上,这题的最后结果为 4321。那么,int的返回值又是多少呢。最终打印结果会是多少呢。那么第二次返回值就会是1。
2023-08-11 17:27:35
97
2
原创 C语言 操作符 双目?单目?++-- 一篇文章带你了解操作符
上⾯⽰例中,输出⽂本 %s says it is %d o'clock 有两个占位符,第⼀个是字符串占位 符 %s ,第⼆个是整数占位符 %d ,分别对应 printf() 的第⼆个参数( lisi )和第三个参数 ( 21 )。占位符的第⼀个字符⼀律为百分号 % ,第⼆个字符表⽰占位符的类型, %d 表⽰这 ⾥代⼊的值必须是⼀个整数。上⾯⽰例中, %s 表⽰代⼊的是⼀个字符串,所以 printf() 的第⼆个参数就必须是字符串,这个例 ⼦是 zhangsan。这⾥的+是正号,-是负号,都是单⽬操作符。
2023-08-03 18:33:54
599
原创 分支和循环中的注意点(敲黑板了!)
上⾯的代码排版,让 else 和第⼀个 if 语句对⻬,让我们以为 else 是和第⼀个if匹配的,当 if 语句不成⽴的时候,⾃然想到的就是执⾏ else ⼦句,打印 haha ,但实际上 else 是和第⼆个 if 进⾏匹配的,这样后边的 if...else 语句是嵌套在第⼀个 if 语句中的,如果第⼀个 if 语句就不 成⽴,嵌套 if 和 else 就没机会执⾏了,最终啥都不打印。只要带上适当的⼤括号,代码的逻辑就会更加的清晰,所以⼤家以后在写代码的时候要注意括号的使 ⽤,让代码的可读性更⾼。
2023-08-03 17:31:26
69
原创 输⼊⼀个正整数,计算这个整数是⼏位数?
这⾥并⾮必须使⽤ do while 语句,但是这个代码就⽐较适合使⽤ do while 循环,因为n即使是 0,也是1位数,要统计位数的。输⼊⼀个正整数,计算这个整数是⼏位数?输⼊:1234 输出:4。输⼊:12 输出:2。
2023-08-03 17:30:34
95
原创 分支和循环(下)
在 do while 循环中先执⾏图上的“语句”,执⾏完语句,在去执⾏“判断表达式”,判断表达式的 结果是!到这⾥我们就能分析出来, continue 可以帮助我们跳过某⼀次循环 continue 后边的代码,直接 到循环的判断部分,进⾏下⼀次循环的判断,如果循环的调整是在 continue 后边的话,可能会造成 死循环。其实和 while 循环中的 break ⼀样, for 循环中的 break 也是⽤于终⽌循环的,不管循环还需 要循环多少次,只要执⾏到了 break ,循环就彻底终⽌,我们上代码。
2023-08-01 17:58:33
77
1
原创 小白学C语言 分支和循环(上)
C语⾔是结构化的程序设计语⾔,这⾥的结构指的是顺序结构、选择结构、循环结构,C语⾔是能够实 现这三种结构的,其实我们如果仔细分析,我们⽇常所⻅的事情都可以拆分为这三种结构或者这三种 结构的组合。我们可以使⽤ if 、 switch 实现分⽀结构,使⽤ for 、 while 、 do while 实现循环结构。
2023-07-31 17:41:20
88
2
原创 小白学C语言 swich语句与if语句的对比
2. 每⼀个 case 语句中的代码执⾏完成后,需要加上 break ,才能跳出这个switch语句。1. case 和后边的数字之间必须有空格。
2023-07-31 17:26:35
109
2
原创 小白学C语言,C语言的数据类型和变量
整数变量声明为 unsigned 的好处是,同样⻓度的内存能够表⽰的最⼤整数值,增⼤了⼀倍。C语⾔中把经常变化的值称为变量,不变的值称为常量。其实每⼀种数据类型有⾃⼰的取值范围,也就是存储的数值的最⼤值和最⼩值的区间,有了丰富的类 型,我们就可以在适当的场景下去选择适合的类型。• 局部变量:在⼤括号内部定义的变量就是局部变量 局部变量的使⽤范围是⽐较局限,只能在⾃⼰所在的局部范围内使⽤的。• 全局变量:在⼤括号外部定义的变量就是全局变量 全局变量的使⽤范围更⼴,整个⼯程中想使⽤,都是有办法使⽤的。
2023-07-29 11:22:31
76
1
原创 小白学C语言,ASCll码表,以及程序实现大小写转化,将大小写数目打印出来
在键盘上可以敲出各种字符,如:a,q,@,#等,这些符号都被称为字符,C语⾔中字符是⽤单引号 括起来的,如:'a','b','@'。我们知道在计算机中所有的数据都是以⼆进制的形式存储的,那这些字符在内存中分别以什么样的⼆ 进制存储的呢?如果我们每个⼈⾃⼰给这些字符中的每个字符编⼀个⼆进制序列,这个叫做编码,为 了⽅便⼤家相互通信,不造成混乱,后来美国国家标准学会(ANSI)出台了⼀个标准 ASCII 编码,C语 ⾔中的字符就遵循了 ASCII 编码的⽅式。• 字符a~z的ASCII码值从97~122。
2023-07-28 10:58:09
682
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人