- 博客(32)
- 收藏
- 关注
原创 c——通讯录的模拟
for (j = i;printf("请开始输入要添加的信息(名字,年龄,性别,电话)\n");printf("通讯录中没有找到该用户\n");printf("通讯录中存在该用户\n");printf("通讯录中存在该用户\n");printf("通讯录中存在该用户\n");printf("该用户不在通讯录中\n");printf("请输入你要查找的用户\n");printf("不存在该用户\n");printf("通讯录暂时还没有用户\n");printf("通讯录中暂时没有用户\n");
2024-04-16 14:59:22
1510
原创 c-结构体内存对齐,位段
首先就是解释为什么要这么处理:处理器在处理已经对齐的变量时只需要一次就能够读取,而没对齐时可能就需要将该变量读取两次,(既4个字节,读了前三个字节,还剩一个字节就需要再读取一次)2.从第二个开始每一个存放时都要放在偏移量为(默认值与字节数较小值)的整数倍处。为了减小损耗一般在没有固定要求的情况下把小字节的变量放前面进行定义。3.最后得出来的那个值要是(几个变量字节最大的那个)的整数倍处。0~7加起来刚好8个是4的整数倍,所以不需要额外扩展一个空间。1.第一个直接放在偏移量为0的地方,不管是什么类型的变量。
2024-04-14 11:02:02
200
原创 c---内置函数模拟(memset,memcmp,memcpy,memmove)
assert(s1);return ret;return 1;return -1;return 0;else {return ret;return ret;
2024-04-12 18:10:13
319
原创 c语言字符串函数(模拟实现)
/真正的strlen是unsigned int。//能够判断为不为空指针。用递归的方式完成strlen。用指针的方法完成strlen。用数组的方法完成strlen。
2024-04-08 11:19:15
182
原创 c语言进阶之函数指针的使用(计算器的模拟,以及qsort函数的模拟)
void *的指针是不能直接解引用的,因为void相当于与个存放器,是为了方便存放(无具体类型的指针)在下面这个例子中作用体现得就很明显。//函数指针//这里的取地址符合是可以省略的。//*号是为了便于理解,其实是摆设。printf("请输入你要选择的运算1:加法,2乘法,3减法,4除法\n");printf("请输入你想选择的操作数\n");
2024-04-02 20:29:10
740
原创 记录自己学习c语言的各种报错
1.在输入多个字符时(有空格)要用gets()//scanf(“%s",)是读到空格会停止的。4printf(" ")这样才是来个空格,printf(' ')这样调试的时候才会显示报错。2在使用getchar时要记得多留一个去吃回车。5进行判断语句的时候也要小心不要用成双引号。3单个字符要使用%c,字符串才使用%s。
2024-03-24 15:05:06
100
原创 c语言入门之初级指针个人理解
/通过这个例子也能知道*(arr+i)=arr[i] *(arr[i]+j)这个移动的是列不是移动行。//下面这个例子是c语言指针比较的标准,可以后越界不可前越界比较,(有的编译器会报错)int* parr[3] = { arr1,arr2,arr3 };//用指针构造2维数组。
2024-03-20 15:05:26
196
1
原创 c语言入门,寻找正序数组中位数,并合并数组(老套路总结)
/非c99,也不想动态分配,就默认少于20。//第一步就是合并数组,前面已经发过好几个类似的了,但是力扣好像很喜欢搞这种题,我是随便。//用于传入数组的大小。//找题练手的,都是套路。
2024-03-19 18:09:25
193
原创 c语言入门之不创建新的参数完成ab值的交换
/0000001//实现过程 (左边) 原理 a^a=0000000 a^b^a=a^a^b=b。a = a ^ b;//相同为0,相异为1(有结合律)
2024-03-19 16:16:15
82
原创 c语言入门之聪明的三子棋(划水的风华独家版)
还是有点问题的,以后有空再优化(已经优化),现在还有破绽,就是比如11 13 中间有个空格电脑不会去堵你,还有反对角线没有判断(已经优化),但是4乘4其实不知道这个bug还是不好赢的(完善版已发)要优化找最近的就行了
2024-03-16 15:02:54
339
1
原创 c语言入门之无重复字符长度
for (j = 0;j < len-1;j++) {count++;else {count = 0;return 0;
2024-03-14 22:25:38
309
1
原创 c语言入门之冒泡排序 3.11
for (i = 0;i++) {//这里如果没有减1的话会白白多走了一轮,不减1也是能走通的。for (j = 0;j++) {//这里记得要多减一个1,不然越界了。1.在对数组进行比较 a[j]>a[j+1]的for循环要想好会不会越界的情况。
2024-03-11 14:27:30
311
原创 c语言入门之单调+等差判断 3.11
2.if - else if - else 如果使用 if -if -else 的话是第一个if成为单分支。1.用数组把要储存的数储存进去,如果要确定数组大小要使用动态内存分配。printf("请输入你要输入多少个数字(不要大于100)");//标志2用于判断是否等差。//标志1用于判断单调性。printf("为恒定值");printf("不单调");printf("为等差");printf("不为等差");printf("为单调");
2024-03-11 11:13:11
398
原创 c语言入门之找字符串第一个符合的下标 3.10
for (j = 0;j++) {//第一轮不能少,不然判断不了第二个字符串为单个字符。//找到了直接从后门走,不让i继续循环。//用于储存i的索引用于进行for循环判断后续字母是否对应。//直接出去让i接着增加即可。printf("找不到");printf("请让长度长的字符放在前面输入");
2024-03-10 18:12:37
381
1
原创 c语言学习入门之字母异性词 3.8
/用于移动位置时充当空杯子。这是我的低效做法,很低效,只适合于跑通,(优势就是思路很简单)高效做法得另学。printf("是字母异位的词");printf("不是字母异位的词");//分别对两个word的字母进行排正。
2024-03-08 13:47:58
368
1
原创 Manim-基础入门图形,坐标轴
axis_config={"stroke_color":RED}#这个是设置xy轴颜色用的。axis_config={"stroke_color":RED}#这个是设置xy轴颜色用的。axis_config={"stroke_color":RED}#这个是设置xy轴颜色用的。axis.add_numbers([-1,2])#这个不是一个区间,是两个点,表示展示两个点的刻度值。# self.add(axes.get_axis_labels())#获取x,y。path_arc=-4.39#拉直线为弧线。
2024-03-06 14:24:41
494
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人