自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 收藏
  • 关注

原创 C语言:指针1

所以得出结论:指针的类型决定了,对指针解引用的时候有多大权限(一次能操作几个字节)short*的指针解引用能访问两个字节,float*指针解引用能访问四个字节。char*的指针解引用只能访问一个字节,int*的指针解引用能访问四个字节。代码1会将n的四个字节全部改为0,但是代码2只是将n的第一个字节改为0。指针的类型决定了,对指针解引用的时候有多大权限(一次能操作几个字节)2.指针的类型决定了指针向前或者向后走一步有多大(距离)char*类型的指针变量+1跳过1个字节......

2024-05-25 16:17:46 113 1

原创 C语言中signed和unsigned

char不等同于signed char,它可能是signed char,也可能是unsigned char。整数变量声明为unsigned的好处是,同样长度的内存能够表示的最大整数值增大了一倍。unsigned关键字表示该类型不带有正负号,只能表示零和正整数。C语言使用signed和unsigned关键字修饰字符型和整型。C语言中规定char类型默认是否带有正负号由当前系统决定。int 默认带有正负号,int 等同于signed int。signed关键字表示一个类型带有正负号,包含负值。

2024-05-25 15:43:28 150

原创 找出二进制整数中的偶数位和奇数位

开始我想的是从第一位开始遍历去打印,但是这样打印是与正确答案相反的,不是题目要求打印的顺序,所以要倒序遍历。一开始我想的方法不对,在看了别的方法后还是有些不理解。经过思考 看图得到了解答。

2024-05-15 20:16:37 101

原创 C语言找出数组中只出现一次的数字

下面为另一种方法,此方法我只想到一半,后面怎么打印出异或后为1的数字这点是看网上学习。先强调此代码中用到的知识点。

2024-05-15 19:20:13 96

原创 输入一个整数n,统计二进制中1的个数

【代码】输入一个整数n,统计二进制中1的个数。

2024-05-11 17:18:32 107 1

原创 C语言中的操作符:位操作符,逗号表达式

逗号表达式,就是用逗号隔开多个表达式,从左向右依次执行。整个表达式的结果是最后一个表达式的结果。简单来说用二进制补码进行计算,都为1等于1,其中有0则为0。用二进制补码进行计算,有1为1,都为0则为0。再看第二个逗号,a=b+10=2+10=12。先看第一个逗号,a>b是假的,为0。第四个,b=a+1=13+1=13。位操作符:&.|.^.~

2024-05-11 16:09:52 189 1

原创 原码,反码,补码

2进制中,最高位的1位被当作符号位,剩余的都是数值位。整数的2进制表示方法有三种,原码。反码:原码的符号位不变,其他位次按位取反得到。符号位都是用0表示“正”,用1表示“负”。原码:将数值按照正负数的形式转成二进制得到。反码得到原码可以使用:取反,+1的方法。5转化为二进制:00000101。负整数的三种表示方法各不相同。将-5转成二进制的补码。反码:11111010。补码:11111011。

2024-05-10 19:44:34 109

原创 递归方式实现打印一个整数的每一位

Print(123)拆分为Print(123/10)+printf(123%10)Print(1234)//打印1234的每一位。其中1234中4通过n%10得到。Print(1234)拆分为。

2024-05-10 19:06:12 185

原创 递归求n的阶乘

【代码】递归求n的阶乘。

2024-05-10 18:15:45 67

原创 递归,输入一个整数返回组成他的数字之和

写一个递归函数DigitSum(n),输入一个非负整数,返回组成它的数字之和。

2024-05-10 18:14:57 147

原创 递归求n的k次方

【代码】递归求n的k次方。

2024-05-10 18:13:26 79

原创 C语言中函数的递归

递归是把一个大的问题转化为与原问题相似但规模较小的子问题求解,直到子问题不能再被拆分递归就结束了。递归中递是递推,归是回归。1.递归存在限制条件,当满足这个限制条件的时候,递归不再继续。2.每次递归调用之后越来越接近这个限制条件。3.递归层次太深会出现栈溢出现象。这是一个例子,用递归求n的k次方。

2024-05-10 18:12:14 117

原创 C语言中分支和循环,if, switch,for

switch语句是一种特殊形式的if...else结构,用于判断条件多个结果的情况。把多重的else if 语句改成了更简单容易的形式。可以发现,5/5商1与余数为0,应该执行case 0,但是case 1的结果也被打印了,这是因为case后面没有break.上面代码中,根据表达式的变化执行不同的case 分支,如果都没有,就执行default.if语句我在上一篇博客中已经写过,如果有缺少后面会慢慢补充。1.switch语句是C语言中常见的语句,用于判断。2.case后的值,必须是整型常量表达式。

2024-04-05 16:21:08 463 1

原创 if语句在C语言中的使用

输入为15,执行的结果应该为未成年,然而实际两句话都打印了,这是因为if语句都只能控制一条语句,则是printf("未成年,......")printf("成年了,......")是独立存在的,不管if语句的条件真假都会执行。如果想要避免这类问题,最好的办法是日常中代码格式规范。if语句在C语言中是常用且重要的语句,下面来记录一下if语句的一些用法和注意事项。4.悬空else的问题 else总是跟最接近的if匹配。很多人会认为这段代码的执行结果是lala,其实不是,正确的格式是这样的。

2024-04-05 15:50:32 140 1

原创 计算1/1-1/2+1/3-1/4+1/5 …… + 1/99 - 1/100 的值,打印出结果

此时注意,因为是分数计算,即为小数计算,变量的类型为float(浮点数),必须写成浮点数的运算。.例如6/4的结果是1.0不是1.5.原因在于C语言里面的整数除法是整除,只会返回整数部分,丢弃小数。如果希望得到浮点数即小数(此题中分数为小数)两个运算数必须至少有一个浮点数,这时C语言会执行浮点数除法。第二步,判断分母i的奇偶,如果为偶数,负数除以i,如果为奇数,正数除以i.分数求和,首先观察到分子都是1,分母为1-100遍历。当分母为奇数时为正分数,分母为偶数时为负分数。

2024-04-05 15:13:51 608 1

原创 C语言将三个数从大到小输出

参考代码int main()int a = 2;int b = 3;int c = 1;if(a<b)a = b;b = tmp;if(a<c)a = c;c = tmp;if(b<c)b = c;c = tmp;return 0;

2024-04-05 14:10:25 171 1

原创 理解C语言中EOF的用法

用户输入数据、按下回车键后,scanf函数就会处理用户的输入,将其存入变量。所以,用户输入的数据之间,有一个或多个不影响scanf函数解读数据。另外,用户使用回车键,将输入分成几行,也不影响解读。一般来说,它的返回值是成功读取元素的个数。但是当遇到读取失败时,它的返回值是-1(也就是它自己返回一个EOF)。名称是文件结束标志,定义为-1(不是ASCII码值为-1),可以通过Ctrl+Z直接键入。输入三个整数,根据三个数之间的关系来判断是等边三角形,等腰三角形或者其余三角形。当人为的输入EOF时结束循环。

2024-04-02 20:31:05 385

原创 C语言中求十个整数最大值

C语言中求十个整数最大值

2024-04-02 20:28:53 88

原创 我的第一篇博客

如何学习编程:在校合理安排学习时间,多去网上了解行业动态,知识及时更新,不要做一个封闭的编程人。今天开始学习编程 ,从零开始成为一个合格的编程人,向码农进发。大家一起up ,字节跳动 美团 在向你招手。定个目标:一周学习15H+hi,我是921小梦。

2023-11-21 13:28:20 16

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除