c语言
A__B__C__
这个作者很懒,什么都没留下…
展开
-
C语言实现经典小游戏贪吃蛇
纯c语言写的小游戏,本人才疏学浅,代码有很多不足,仅供给初学者参考。实现功能:↑ ↓ ← →分别用来控制上下左右四个方向空格暂停esc退出游戏f1加速, f2 减速蛇的长度越长,速度越快(速度有上限)食物颜色随机撞墙死/咬到自己死不足之处:实现了蛇撞墙和撞到自己两种死亡判断,但是没有实现游戏胜利。蛇移动的时间和食物出现的时间固定,没有实现游戏难度的选择。运行结果...原创 2018-10-06 16:15:19 · 2159 阅读 · 1 评论 -
模拟实现strncpy,strncat ,strncmp (C语言)
1、模拟实现strncpy(1)函数原型:char * strncpy(char *s1,char *s2,size_t n);(2)函数功能:将字符串s2中最多n个字符复制到字符数组s1中,返回指向s1的指针。代码如下:#include <stdio.h>#include <stdlib.h>#include &am原创 2018-05-25 17:09:49 · 393 阅读 · 1 评论 -
1.使用main函数的参数,实现一个整数计算器;2、写冒泡排序可以排序多个字符串
1.使用main函数的参数,实现一个整数计算器程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。2、写冒泡排序可以排序多个字符串原创 2018-05-08 14:13:06 · 399 阅读 · 0 评论 -
简单介绍 :指针数组, 数组指针, 函数指针, 函数指针数组, 指向函数指针数组的指针
一、概念分析1、指针数组指针数组:可以说成是“指针的数组”,它是一个数组, 用指针来修饰这个,意思是说这个数组的所有元素都是指针类型,在32位的系统中,指针占4个字节;2、数组指针数组指针:可以说成是”数组的指针“,首先它是一个指针, 用数组修饰它, 意思是说这个指针存放着一个数组的地址,也就是说这个指针指向一个数组;3、函数指针函数指针:可以说它是...原创 2018-05-12 17:08:59 · 234 阅读 · 0 评论 -
C语言中strcpy、strcat、strstr、strchr、strcmp、memcpy、memmove函数的实现
1、strcpy函数(1)、函数功能:strcpy函数的意思是:把字符串s2中的内容copy到s1中,连字符串结束标志也一起copy.(2)、代码实现#include <stdio.h>#include <stdlib.h>const char* my_strcpy (char* arr2, const char* arr1){ ...原创 2018-05-05 17:27:57 · 501 阅读 · 0 评论 -
C语言小游戏_扫雷
扫雷(C语言版)这个扫雷是在9*9的格子里,一共有10个地雷,代码如下:test.c(测试游戏功能)# include &amp;quot;game2.h&amp;quot;void menu(){ printf (&amp;quot;**********************************\n&amp;quot;); printf (&原创 2018-04-06 17:22:05 · 1082 阅读 · 2 评论 -
编写函数这个函数的返回 值value的二进制位模式从左到右翻转后的值
1.编写函数:unsigned int reverse_bit(unsigned int value);这个函数的返回 值value的二进制位模式从左到右翻转后的值。如:在32位机器上25这个值包含下列各位:00000000000000000000000000011001翻转后:(2550136832)10011000000000000000...原创 2018-04-12 21:55:36 · 239 阅读 · 0 评论 -
5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果 ;杨辉三角形
1、5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果A选手说:B第二,我第三;B选手说:我第二,E第四;C选手说:我第一,D第二;D选手说:C最后,我第三;E选手说:我第四,A第一;比赛结束后,每位选手都说对了一半,请编程确定比赛的名次。#include <stdio.h>#include <stdlib.h>...原创 2018-04-10 00:21:58 · 495 阅读 · 0 评论 -
C语言使用宏_交换一个数的奇数位和偶数位 求两个数中的最大值
1、写一个宏可以将一个数字的奇数位和偶数位交换。刚看到这个题的时候感觉我也觉得这个题很怪,让交换一个数的奇数位和偶数位,感觉完全不知道该从何处下手,然后通过在网上查了一下才知道这个题要交换的不是十进制数,而是十进制对应的二进制数的奇数位和偶数位。代码如下:#include <stdio.h>#include <stdlib.h># define cha...原创 2018-04-09 13:28:03 · 550 阅读 · 0 评论 -
C语言_数组知识总结
数组知识重点:1、一维数组的创建和初始化2、一维数组的使用3、一维数组在内存中的存储4、指针的初步介绍5、一维数组的指针访问6、二维数组的创建和初始化7、二维数组的使用8、二维数组在内存中的存储正文一、一维数组的创建和初始化1、数组的创建:数组:是一组相同类型元素的集合数组的创建方式:...原创 2018-04-08 21:13:14 · 375 阅读 · 0 评论 -
模仿qsort的功能实现一个通用的冒泡排序
qsort函数简介:qsort函数包含在&lt;stdlib.h&gt;中qsort函数声明如下:void qsort(void * base,size_t nmemb,size_t size ,int(*compar)(const void *,const void *));参数说明:base:要排序的数组nmemb:数组中元素的数目size:每个数组元素占用的内存空间,可使用s...原创 2018-05-15 16:05:46 · 343 阅读 · 0 评论 -
C语言_自定义类型知识总结
目录: 1、结构体 (1)结构体的声明 (2)结构体成员的访问 (3)结构体的初始化 (4)结构体内存对齐 (5)位段,位段大小的计算 2、枚举 3、联合一、结构体C语言允许用户自己指定这样一种数据结构,它由不同类型的数据组合成一个整体,以便引用,这些组合在一个整体中的数据是互相联系的,这样的数据结构称为结...原创 2018-06-07 15:33:58 · 362 阅读 · 0 评论 -
C语言_日历
编写一个日历程序,以2000年为基准,要求输入一个年月,输出对应月份的日历表执行结果:代码如下:#include &lt;stdio.h&gt;#include &lt;stdlib.h&gt;#include &lt;assert.h&gt;int month_day_num[2][13] = { {0, 31, 28, 31, 30, 31, 30, 31, 31, 30,...原创 2018-10-12 00:27:42 · 4313 阅读 · 3 评论 -
堆的应用
1、优先级队列(注:在这篇博客里会涉及到一些堆的基本操作,这些堆的基本操作请参考上一篇博客:堆的基本操作(https://blog.csdn.net/A__B__C__/article/details/82818091))优先级队列,名字叫队列,其实就是用堆来封装的一层而已,个人感觉和队列没有什么关系;代码如下:头文件(其中包含了队列的操作,堆排序和top K问题):#ifn...原创 2018-09-24 22:39:53 · 382 阅读 · 0 评论 -
C语言_双向循环链表的基本操作
目录: 1、初始化 2、头部插入 3、头部删除 4、尾部插入 5、尾部删除 6、打印链表 7、任意位置插入 8、查找值为data的节点 9、指定位置删除 10、销毁链表1、初始化:创建一个节点,给节点赋值为0;因为是循环链表,所以让它的_pNext指针域和_pPre 指针域都指向自己void DCListInit ...原创 2018-09-11 22:17:57 · 1770 阅读 · 0 评论 -
Linux根目录下各文件的作用
1、bin重要的二进制文件,系统所使用的所有命令都放在这里边2、 etc配置文件、启动脚本等,这里边包含所有程序所需的配置文件,也包含了用于启动/停止单个程序的启动和关闭shell脚本。3、lib系统库文件,包含支持位于/bin和/sbin下的二进制文件的库文件。4、media挂载可移动介质 (media),用于挂载可移动设备的临时目录5、mnt挂载目录,是系统...原创 2018-08-04 23:25:20 · 256 阅读 · 0 评论 -
单向链表的基本操作以及常见面试题分析
目录: 一、单链表的基本操作 1、初始化链表 2、尾部插入 3、尾部删除 4、头部插入 5、头部删除 6、销毁链表 7.打印单链表内容 8、查询数据为d的节点 9、在指定位置之前插入一个节点 10、指定位置节点删除 11、删除数据为d,第一次出现的节点 12、删除数据为d的所有节点 二,链表常见面试题 1、...原创 2018-08-04 16:17:12 · 492 阅读 · 0 评论 -
C语言_顺序表操作
1、头文件 SequList.h#ifndef __ SequList _ H __#define __ SequList _ H __#include &amp;amp;amp;lt;stdio.h&amp;amp;amp;gt;#include &amp;amp;amp;lt;stdlib.h&amp;amp;amp;gt;#include &amp;amp;amp;lt;assert.h&原创 2018-06-19 16:13:26 · 411 阅读 · 0 评论 -
C语言_注释转换
实现功能:对指定路径下的一个文件夹里边的所有.c文件进行注释转换,然后在存到指定路径的文件夹下(注释转换:把C语言注释 /* …… */ 转换为 / /……) 代码如下:头文件代码CommentConvert.h#ifndef __COMMENT_CONVERT_H__#define __COMMENT_CONVERT_H__#define _CRT_SECURE_NO_WA...原创 2018-06-18 22:57:57 · 255 阅读 · 0 评论 -
C语言通讯录(2)_用文件存储
这一个通讯录系统是将之前那个做了一点修改,里面添加了文件存储功能#define _CRT_SECURE_NO_WARNINGS 1#include <stdio.h>#include <stdlib.h>#include <malloc.h>#include <string.h>#include <assert.h>...原创 2018-06-08 14:43:50 · 569 阅读 · 0 评论 -
C语言_通讯录系统
通讯录可以用来存储联系人的信息,每个人的信息包括: 姓名、性别、年龄、电话、住址 提供方法: 1. 添加联系人信息 2. 删除指定联系人信息 3. 查找指定联系人信息 4. 修改指定联系人信息 5. 显示所有联系人信息 6. 清空所有联系人 7. 以名字排序所有联系人 # define _CRT_SECURE_NO_WARNINGS 1#include ...原创 2018-06-08 14:37:53 · 1189 阅读 · 2 评论 -
C语言_三子棋小游戏
三子棋(c语言版)游戏是在3*3的棋盘上输入坐标,其主要功能有:(1),玩家走(2),电脑走(3),打印棋盘(4),判断输赢(5),判断是不是平局头文件一个,game.h源文件有2个,分别是test.c 和 game.c代码如下:game.h(头文件)//三子棋游戏# ifndef __GAME_H__#d...原创 2018-04-06 16:52:51 · 374 阅读 · 0 评论 -
C语言_打印菱形(2)
//之前写的一个打印菱形有点问题,菱形行数不能修改,所以又重新改了一下:#include <stdio.h>#include <stdlib.h>int main(){ int a = 0, b = 0, i = 0, j = 0, k = 0; printf ("请输入你要打印的菱形的行数:\n"); scanf ("%d",&a); b ...原创 2018-03-29 00:00:37 · 225 阅读 · 0 评论 -
C语言入门_7_函数的使用
1、实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定。(例如输入9,输出9*9口诀表,输出12,输出12*12的乘法口诀表)#include <stdio.h>#include <stdlib.h>void table (int a){ int i, j; for (i=1; i<=a; ++i) { fo...原创 2018-03-27 20:19:53 · 204 阅读 · 0 评论 -
用C语言输出一个菱形
//输出一个菱形/* * *** ***** ******* ********* *********** ********* ******* ***** *** **/#include <stdio.h>#include <string.h>...原创 2018-03-20 22:38:26 · 1200 阅读 · 0 评论 -
C语言入门_3
//交换两个数组的内容(两个数组一样长)#include <stdio.h>#include <stdlib.h>int main(){ int a[5] = {1, 2, 3, 4, 5}; int b[5] = {6, 7, 8, 9, 10}; int c[5] = {0}; int i = 0; printf ("交换前:\n...原创 2018-03-18 22:49:31 · 321 阅读 · 0 评论 -
C语言__一个关机程序
// 一个关机程序#include <stdio.h>#include <stdlib.h>#include <string.h>int main(){ char input[10];again: printf ("请输入“我是猪”,否则电脑将在一分钟之后关机!"); system("shutdown -s -t 60"); ...原创 2018-03-18 21:05:09 · 696 阅读 · 0 评论 -
求两个数的最大公约数
// 求两个数的最大公约数#include <stdio.h>#include <stdlib.h>int main(){ int a = 45; int b = 33; int i,j; if (a >= b) { j = b; } else { j = a; ...原创 2018-03-17 17:07:48 · 214 阅读 · 0 评论 -
C语言_函数的调用过程(栈帧)
C语言函数的调用过程(栈帧)首先通过下面这段代码探究函数的调用过程:#include <stdio.h>#include <stdlib.h>int add(int a, int b){ int ret = 0; ret = a + b; return ret;}int main (){原创 2018-04-23 00:37:44 · 376 阅读 · 0 评论 -
C语言入门_2
// 求十个整数中的最大值#include <stdio.h>#include <stdlib.h>int main(){ // a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 int a[10] = {88 ,9 ,6 ,5 ,3 ,5 ,8 ,4 ,8 ,0}; int i; ...原创 2018-03-17 17:05:10 · 243 阅读 · 0 评论 -
C语言_不创建临时变量,交换两个数的内容
// 不创建临时变量,交换两个数的内容#include <stdio.h>#include <stdlib.h>int main(){ int i = 5;//5 int j = 3;//3 printf ("交换之前:\n i = %d\tj = %d\n",i,j); i = i + j; // i = 8 j = 3 ...原创 2018-03-17 15:13:03 · 230 阅读 · 0 评论 -
C语言—给定两个整形变量的值,将两个值的内容交换
#include <stdio.h>#include <stdlib.h>int main(){ int i = 4; int j = 6; int t = 0; printf ("交换之前:\n i = %d, j = %d\n",i,j); t = i; i = j; j = t; printf ("交换之...原创 2018-03-17 14:55:10 · 413 阅读 · 0 评论 -
1.调整数组使奇数全部都位于偶数前面2、杨氏矩阵在这样的数组中查找一个数字是否存在
1.调整数组使奇数全部都位于偶数前面。输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分。2、杨氏矩阵 有一个二维数组. 数组的每行从左到右是递增的,每列从上到下是递增的. 在这样的数组中查找一个数字是否存在。 时间复杂度小于O(N);原创 2018-04-14 17:38:38 · 178 阅读 · 0 评论 -
C语言入门_4
// 读取一段源代码判断花括号是否是成对出现#include <stdio.h>#include <stdlib.h>int main(){ int i = 0; char ch; while ((ch=getchar()) != '\n' ) { if (ch == '{') { ...原创 2018-03-21 21:23:59 · 216 阅读 · 0 评论 -
C语言_猜数字的小游戏
//猜数字游戏 2018.3.21#include <stdio.h>#include <stdlib.h>#include <time.h>void menu()//生成菜单{ printf ("****************************\n"); printf ("****** 猜 数 字 游 戏 ******\...原创 2018-03-22 13:48:48 · 372 阅读 · 0 评论 -
C语言入门_二进制数
1,写一个函数返回二进制中一的个数比如:15 —– 0000 1111—— 4个1#include <stdio.h>#include <stdlib.h>int count_one_bits(unsigned int value) { int i = 0, count = 0; for (i=0; i<32; ++i ) ...原创 2018-03-26 14:01:17 · 2322 阅读 · 0 评论 -
喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以多少汽水。编程实现。
1.一个数组中只有两个数字是出现一次,其他所有数字都出现了两次,找出这两个数字,编程实现。2、喝汽水,1瓶汽水1元,2个空瓶可以换一瓶汽水,给20元,可以多少汽水。编程实现。3、模拟实现strcpy4.模拟实现strcat原创 2018-05-09 14:06:04 · 914 阅读 · 1 评论 -
C语言_递归练习
1、递归和非递归分别实现求第n个斐波那契数。#include <stdio.h>#include <stdlib.h>void num1 (int *p, int n)//非递归求第n个数的斐波那契数的函数{ int i = 0; p[0] = 1; p[1] = 1; for (i=2; i<n; i++) { ...原创 2018-05-09 13:55:16 · 541 阅读 · 0 评论 -
c语言_可变参数实现求平均值, 最大值,和简单模拟printf函数功能
1.使用可变参数,实现函数,求函数参数的平均值。#include <stdio.h>#include <stdlib.h>#include <stdarg.h>int average(int n, ...){ va_list arg; int i = 0; int sum = 0; va_start(arg, n);...原创 2018-05-09 00:12:40 · 598 阅读 · 0 评论 -
C语言可变参数列表知识总结
原创 2018-05-08 20:12:50 · 2107 阅读 · 1 评论