![](https://i-blog.csdnimg.cn/direct/04593a79e320467e88f645c25440caf7.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
C语言练习
文章平均质量分 62
平时的练习
只对您心动
认真学习代码in
展开
-
【C语言】 插入排序和快速排序
插入排序和快速排序,利用递归的思想,有点不好理解,需要通过画图结合着看原创 2024-07-24 20:47:09 · 103 阅读 · 0 评论 -
【C语言】 二叉树创建(结构体,先序遍历,中序遍历,后续遍历)
二叉树的创建:首先先定义一个结构体,里面包含数据(data),指向左子树的指针(L),指向右子树的指针(R)三个部分 在创建树的函数中,首先先输入一个数,且当输入'#'的时候,表示这个位置没有值输入,返回NULL;成功输入值后,用malloc申请一个结点,B->data = data;然后再次调用创建函数(函数本身),但是是这个结点的左子树B->L = tree_create();以此类推就能成功创建一颗树了。 3种遍历方法结构基本差不多,无非是输出的时机不一原创 2024-07-24 19:44:43 · 307 阅读 · 0 评论 -
【C语言】 利用栈完成十进制转二进制(分文件编译,堆区申请空间malloc)
利用栈先进后出的特性,在函数内部,进行除二取余的操作,把每次的余数存入栈内,最后输出刚好就是,为二进制数学习过程中,对存储栈进行堆区的内存申请时候,并不是很熟练,一开始还在想去接收的类型应该是什么,后面发现直接用去进行接收即可,本身就是类型。原创 2024-07-22 19:07:03 · 356 阅读 · 0 评论 -
【C语言】 约瑟夫环,循环链表实现
1、循环链表实现约瑟夫环,每次经过特定步数删除一个元素更新一下,昨天的代码有点问题,没有考虑到头结点的影响,我的方法是:在进行步数位移的时候判断标记点是否走到头结点;同时在后面删除元素的时候,再次判断位移点有不有走到头结点,如果走到了的话,就直接再往后移动一位,这样就成功跳过头结点了原创 2024-07-22 20:42:27 · 556 阅读 · 0 评论 -
【C语言】 链表实现学生管理系统(堆区开辟空间)
总体思路都能写出来,问题是感觉稍微比之前的麻烦一些,在刚开始创建结构体的时候,并没有去按照链表的思路去写,导致写成了顺序表,后面就一直纠结空间怎么开辟。链表是由一个头节点和其它申请出来的小节点连起来的,需要分开开辟空间,然后进行连接等等的操作。需要先申请节点,为了方便就封装一个申请节点的函数,然后再实现功能的时候去调用就行 还有一个点,在后期遇到一个问题,不管我输入什么东西,打印数据的时候,我的最后一个数据不知道为什么会一直加一,后面发现是我在声明变量的时候写了Clas原创 2024-07-20 17:05:32 · 240 阅读 · 0 评论 -
【C语言】链表+实现函数封装
链表,创建链表,申请节点,判空,头插,遍历输出,通过位置查找节点,任意位置插入,头删,任意位置删除,安置查找返回位置,按位置进行修改,按值进行修改,翻转链表,释放链表,链表的排序,反转链表(递归实现)原创 2024-07-19 20:47:13 · 246 阅读 · 0 评论 -
【C语言】学生管理系统(2)(分文件编译,班级创建在堆区 malloc申请)
和上一篇几乎没差,学习了顺序表,简单实现了按位置增添学生信息和删除学生信息1、完成学生信息管理系统要求:定义一个班级,包括多个学生,以及记录实际学生的个数1> 完成班级的创建,创建时,需要传递班级实际人数2> 完成班级学生的信息录入工作3> 完成将班级学生按成绩进行降序排序工作4> 输出班级中成绩最好和最差学生的信息5> 完成信息的输出工作6> 完成班级的销毁工作7>按位置插入学生8>按位置删除学生原创 2024-07-18 17:34:09 · 144 阅读 · 1 评论 -
【C语言】学生管理系统(分文件编译,班级创建在堆区 malloc申请)
1、完成学生信息管理系统要求:定义一个班级,包括多个学生,以及记录实际学生的个数1> 完成班级的创建,创建时,需要传递班级实际人数2> 完成班级学生的信息录入工作3> 完成将班级学生按成绩进行降序排序工作4> 输出班级中成绩最好和最差学生的信息5> 完成信息的输出工作6> 完成班级的销毁工作要求:班级创建在堆区,尽量分文件编译完成C语言笔记原创 2024-07-17 20:55:11 · 159 阅读 · 0 评论 -
【C语言】 学生管理系统(结构体实现)
使用结构体完成学生(学号、姓名、性别、成绩)管理系统1> 使用菜单实现2> 功能1:完成对学生信息的录入,确定人数,完成输入2> 功能2:完成对学生信息的输出3> 功能3:输出成绩最高和最低学生的信息4> 功能4:输出学生的总成绩和平均成绩5> 功能5:对学生信息按成绩进行排序,根据传入的升降序,确定排序功能、6> 功能6:提示并输入要查找的学生名字,查找该名字是否存在于该班级7> 功能0:退出原创 2024-07-16 20:48:29 · 213 阅读 · 0 评论 -
【C语言】 指针实现strlen,strcpy,strcmp和strstr功能
1、自定义函数(my_strlen)实现strlen函数的功能2、自定义函数(my_strcpy)实现strcpy函数的功能3、自定义函数(my_strcmp)实现strcmp函数的功能4、自定义函数(my_strcat)实现strcat函数的功能5、自定义函数(my_strstr)实现求src字符串中是否包含子串dest字符串原创 2024-07-12 19:06:01 · 183 阅读 · 0 评论 -
【C语言】使用递归实现 求 n 的 k 次方、实现 strlen 的功能
1>使用递归实现 求 n 的 k 次方2>使用递归实现 strlen 的功能3>使用递归实现汉诺塔问题(君子作业)4>定义一个函数将一个字符串从大到小排序5>实现一个函数,用于检查一个字符串是否是回文字符串(正序和反序都相同)6>使用指针完成判断自己的主机存储多字节整数时,是大端存储还是小端存储7>有一段文本,写一段程序统计其中的单词数。例如:Do one thing at a time.and do well.注意:单词间的间隔不一定是一个空格原创 2024-07-11 20:41:32 · 231 阅读 · 0 评论 -
【C语言】学生管理系统
成学生管理系统1> 使用菜单完成2> 有学生的信息录入功能:输入学生个数,并将学生的姓名、分数录入3> 查看学生信息:输出所有学生姓名以及对应的分数4> 求出学习最好的学生信息:求最大值5> 按姓名将所有学生进行升序排序6> 按成绩将所有学生进行升序排序要求每个功能使用函数完成>>>>>>>>>>实现的函数类型是有参数,无返回值的函数原创 2024-07-10 20:16:39 · 281 阅读 · 0 评论 -
【C语言】提示并输入一个字符串,统计该字符串中字母、数字、空格以及其他字符的个数、提示并输入一个字符串,求出该字符串中所有数字的总和
1、提示并输入一个字符串,统计该字符串中字母、数字、空格以及其他字符的个数2、提示并输入一个字符串,求出该字符串中所有数字的总和3、定义一个4*3的二维整形数组,完成对二维数组的输入、输出。并将该二维数组中每一行的最值放入到一个一维数组中,并对该一维数组进行升序排序后输出。4、提示并输入两个一维整形数组,求这两个数组的交集。5、完成注册和登录功能:使用两个一维字符数组存储账户和密码注册:完成对账号和密码的输入登录:将登录账号和密码跟注册的账号和密码进行匹配,如果相等,则登录成功,否原创 2024-07-09 20:41:09 · 266 阅读 · 0 评论 -
【C语言】 终端输入一个日期,判断是这一年的第几天scanf(“%d-%d-%d“,&y,&m,&d);闰年2月29天,平年2月28天
【代码】C语言作业3 终端输入一个日期,判断是这一年的第几天scanf(“%d-%d-%d“,&y,&m,&d);闰年2月29天,平年2月28天(C语言实现)原创 2024-07-04 18:58:29 · 176 阅读 · 0 评论 -
【C语言】 宏定义的替换+C基础思维导图整理
1.进行简单的宏定义替换2.第6行替换后变为 a /= k+m*k+m/k+m*k+m=73.a /= 75.通过gcc -E 文件名.c -o 文件名.i(此步骤为gcc编译的第一步,预处理阶段,会生成一个.i文件,此文件进行了宏定义的替换,注释的删除,头文件的展开)原创 2024-07-03 18:42:18 · 199 阅读 · 0 评论 -
【C语言】解析代码:分析每一步变量的取值
1.梳理笔记(原创!!!1.梳理笔记(原创!!!2.解析代码:分析每一步变量的取值。原创 2024-07-02 18:27:34 · 129 阅读 · 0 评论 -
【C语言】用指针实现strlen,strcpy,strcat,strcmp、用一个swap函数实现两数交换
1、用指针实现strlen,strcpy,strcat,strcmp;2、用一个swap函数实现两数交换原创 2024-02-12 14:19:26 · 354 阅读 · 1 评论 -
【C语言】一些题目的练习
33.若有定义int x[4][3]={1,2,3,4,5,6,7,8,9,10,11,12};34.若有说明:char *language[]={“FORTRAN”,”BASIC”,”PASCAL”,”JAVA”,”C”};28.若有定义:int x[10]={0,1,2,3,4,5,6,7,8,9},*p1;19.若有程序段:int a[2][3],(*p)[3];25.若有定义:int b[4][6],*p,*q[4];s=”china”;原创 2024-02-08 16:58:00 · 363 阅读 · 0 评论 -
【C语言】已知数据data,给data的第六个bit位置1,对data的第4个bit位置0
已知数据data,给data的第六个bit位置1,对data的第4个bit位置0原创 2024-02-07 22:40:02 · 248 阅读 · 0 评论 -
【C语言】实现strcat函数、实现strcmp函数
1、实现strcat函数2、实现strcmp函数原创 2024-02-06 21:31:41 · 383 阅读 · 1 评论 -
【C语言】实现strlen函数、实现strcpy函数
1、实现strlen函数2、实现strcpy函数3、完成试卷A4、冒泡排序(要求:从终端获取十个数,升序排序);5、编写strcpy函数6、有一个3×4的矩阵,要求输出其最大值以及它的行号和列号。7、写一个函数,统计一个unsigned int类型的值中有多少位为18、给定一个字符串“I love china”,编写程序完成以单词为单位的逆序,如“china love i”,并要求不允许使用第三方变量保存数据,但可以使用辅助指针变量等。原创 2024-02-05 22:00:35 · 437 阅读 · 1 评论 -
【C语言】使用break关键字,完成求[3-100]中的质数
const char *p : 可以修改指针p指向的空间;不可以修改指针p指向的内容const (char *)p : 无效char *const p : 可以修改指针p指向的内容;不可以修改指针p指向的空间const char* const p : 不可以修改指针p指向的空间,不可以修改指针p指向的内容char const *p : 可以修改指针p指向的空间;不可以修改指针p指向的内容(char *) const p : 无效。原创 2024-02-04 20:59:06 · 539 阅读 · 1 评论 -
【C语言】打印字母图形、输出1000-10000中的四叶玫瑰数、输入三个整数x、y和z,请把这三个数由小到大输出
1、打印字母图形编辑2、输出1000-10000中的四叶玫瑰数(四叶玫瑰数,各位数字的四次方和等于其本身)3、输入三个整数x、y和z,请把这三个数由小到大输出原创 2024-02-03 16:28:03 · 1051 阅读 · 1 评论 -
【C语言】百钱买百鸡、终端输入行数,打印金字塔
printf("翁%d只,母%d只,雏%d只\n",x,y,z);printf("请输入你需要打印金字塔的行数>>");原创 2024-02-02 22:47:57 · 428 阅读 · 0 评论 -
【C语言】函数封装strcat、strcmp、strcpy(指针,主函数调用函数)
printf("第 %d 项斐波那契数列为:%d\n", num, sum);printf("请输入要求第几项斐波那契数列的值(大于等于1):");printf("比较的结果为:%d\n",len1);printf("请输入字符串a>>");printf("请输入字符串b>>");printf("请输入字符串a>>");printf("请输入字符串b>>");printf("请输入字符串a>>");printf("请输入字符串b>>");printf("组合的结果为:");printf("结果为:");原创 2024-01-22 20:43:48 · 952 阅读 · 0 评论 -
【C语言】用指针封装strcpy、strcmp、strcat
1.用指针封装strcpy2.用指针封装strcmp3.用指针封装strcat4.在终端输入一串字符,统计空格的个数(用指针方法)5. 冒泡排序(用指针方法实现)原创 2024-01-19 20:29:24 · 834 阅读 · 0 评论 -
【C语言】封装strcpy;封装strcmp;终端输入一个字符串,再输入一个字符a,判断这个字符在字符串有几个?
1、封装strcpy2、封装strcmp(a>b输出1,a< b输出-1,a=b输出0)3、终端输入一个字符串,再输入一个字符a,判断这个字符在字符串有几个?原创 2024-01-17 19:52:24 · 873 阅读 · 0 评论 -
【C语言】百钱买百鸡问题、数组的逆置、求数组中所有下标为奇数的元素&&元素为偶数的和
printf("翁%d只,母%d只,雏%d只\n",x,y,z);printf("下标为奇数的和为:%d,元素为偶数的和为:%d\n",n,m);printf("能组成%d个互不相同的且无重复的三位数\n",sum);原创 2024-01-16 20:20:38 · 861 阅读 · 0 评论 -
【C语言】打印数字金字塔
printf("你输入的内容有%d个数字,%d个小写字母,%d个大写字母,%d个其他字符\n",shuzi,xiaoxie,daxie,others-1);printf("请输入一串内容\n");printf("请输入行数:");原创 2024-01-15 20:39:57 · 365 阅读 · 0 评论