09 2018 档案

选择法实现链表排序
摘要:1 #include 2 #include 3 /* 4 选择法实现链表排序 5 */ 6 typedef struct node 7 { 8 int data; 9 struct node * next; 10 }NODE; 11 NODE * createList() 12 { 13 NODE *head = (NODE *)malloc(siz... 阅读全文

posted @ 2018-09-29 23:38 王朝马汉 阅读(554) 评论(0) 推荐(0)

链表:创建空链表,插入节点,遍历,求长度,查找,删除,反转
摘要:1 #include 2 #include 3 /* 4 链表:创建空链表,插入节点,遍历,求长度,查找,删除,反转 5 */ 6 typedef struct node 7 { 8 int data; 9 struct node * next; 10 }NODE; 11 //创建空链表 12 NODE * createList() ... 阅读全文

posted @ 2018-09-29 17:17 王朝马汉 阅读(742) 评论(0) 推荐(0)

链表指针交换实现冒泡排序
摘要:1 #include 2 #include 3 /* 4 链表指针交换实现冒泡排序:核心思想:1.每次都从头开始比较 5 2.sh,p,q整体往前走一步(交不交换都要往前走) 6 3.交换完之后p变成q,q变成p,整体往前走,下次交换就会... 阅读全文

posted @ 2018-09-27 22:03 王朝马汉 阅读(874) 评论(0) 推荐(0)

链表值排序之冒泡
摘要:1 #include 2 #include 3 /* 4 链表值排序之冒泡:核心思想:1.每次都从头开始比较 5 2.推动链表往下走的不在是下标 6 */ 7 typedef struct node 8 { 9 int data; 10 struct node * next; 11 }NODE; 12 ... 阅读全文

posted @ 2018-09-25 23:37 王朝马汉 阅读(341) 评论(0) 推荐(0)

头插法链表的基本操作:创建空链表,插入结点,遍历链表,求链表长度,查找结点,删除结点
摘要:1 #include 2 #include 3 /* 4 头插法链表的基本操作:创建空链表,插入节点,遍历输出节点数据,求链表长度,查找结点,删除结点。 5 */ 6 typedef struct node 7 { 8 int data; 9 struct node * next; 10 }NODE; 11 //创建空链表 12 NO... 阅读全文

posted @ 2018-09-25 19:53 王朝马汉 阅读(425) 评论(0) 推荐(0)

尾插法链表拆分
摘要:1 #include 2 #include 3 /* 4 尾插法链表拆分:1.建立空链表。2.插入节点。3.遍历并输出插入节点后的链表数据 5 */ 6 typedef struct node 7 { 8 int data; 9 struct node * next; 10 }NODE; 11 //建立空链表 12 NODE * createList() 1... 阅读全文

posted @ 2018-09-23 22:20 王朝马汉 阅读(243) 评论(0) 推荐(0)

头插法链表拆分
摘要:1 #include 2 #include 3 /* 4 头插法链表拆分:1,建立空链表。2插入节点。3遍历输出插入节点后的链表数据 5 */ 6 typedef struct node 7 { 8 int data; 9 struct node * next; 10 }NODE; 11 //1.建立空链表 12 NODE * createList() 13... 阅读全文

posted @ 2018-09-23 22:17 王朝马汉 阅读(264) 评论(0) 推荐(0)

尾插法创建链表
摘要:1 #include 2 #include 3 /* 4 尾插法创建链表:尾插法就是每次都把结点插在尾结点后面 5 总结:尾插法相对头插法 需要多定义一个指针pt来保存尾结点的地址。 6 */ 7 typedef struct node 8 { 9 int data; 10 struct node * next; 11 }NODE; 12 NODE * cr... 阅读全文

posted @ 2018-09-23 22:15 王朝马汉 阅读(2722) 评论(0) 推荐(0)

头插法创建链表
摘要:1 #include 2 #include 3 /* 4 头插法建立链表:所谓头插法,就是新来的结点每次都插在头结点后面 5 内功心法:让新来的结点先有所指向(指向头结点的下一个结点),新来的结点,有所指向不会打断原有的指向关系。 6 */ 7 typedef struct node 8 { 9 int data; 10 struct node * next... 阅读全文

posted @ 2018-09-23 22:13 王朝马汉 阅读(1348) 评论(0) 推荐(0)

二维数组45度反斜线扫描分析。
摘要:1 #include 2 /* 3 反斜线扫描 4 */ 5 int main(void) 6 { 7 int arr[4][5] = { 8 {1 ,2 ,3 ,4 ,5}, 9 {3 ,4 ,5 ,6 ,7}, 10 {8 ,9 ,10,11,12}, 11 {13,14,15,16,17} 12 ... 阅读全文

posted @ 2018-09-20 15:41 王朝马汉 阅读(296) 评论(0) 推荐(0)

枚举-增加BOOL类型
摘要:1 #include 2 /* 3 题目:c 语言中没有 bool 类型,可以通过 enum 类型来枚举。 4 */ 5 typedef enum BOOLEN 6 { 7 False, True 8 }BOOL; 9 int main(void) 10 { 11 BOOL a = True; 12 printf("%d\n",a); 13 a... 阅读全文

posted @ 2018-09-19 14:36 王朝马汉 阅读(762) 评论(0) 推荐(0)

枚举-判断一年中第 125 天是工作日, 还是休息日?假设一年 365 天, 新年第一天是星期一。
摘要:1 #include 2 /* 3 题目:判断一年中第 125 天是工作日, 还是休息日?假设一年 365 天, 新年第一天是星期一。 4 思路1:一个星期有7天,125%7 得到的余数>5 休息日,5) 17 printf("休息日\n"); 18 else 19 printf("工作日\n"); 20 */ 21 //方法二 ... 阅读全文

posted @ 2018-09-19 14:25 王朝马汉 阅读(257) 评论(0) 推荐(0)

判断大小端序
摘要:1 #include 2 /* 3 题目:写程序判断大小端 4 思路:所谓的大端模式,是指数据的低位(就是权值较小的后面那几位)保存在内存的高地址中,而数据的高位,保存在内存的低地址中 5 小端模式正好相反,数据的低位保存在低地址中,数据的高位保存在高地址中 6 7 结论:最终在电脑上测试,我们普通用的电脑是大端序。 8 */ 9 typedef union 1... 阅读全文

posted @ 2018-09-19 11:41 王朝马汉 阅读(197) 评论(0) 推荐(0)

信息存储,共用体的应用
摘要:1 #include 2 /* 3 题目: 4 设有若干个人员的数据,其中有学生和老师。 学生的数据包括: 姓名, 编号, 性别, 5 职业,年级。老师的数据包括:姓名,编号,性别,职业,职务。可以看出,学生和老 6 师所包含的数据是不同的。先要求把他们放在同一个表格中: 7 name num sex job grade posit... 阅读全文

posted @ 2018-09-19 10:29 王朝马汉 阅读(267) 评论(0) 推荐(0)

栈的自实现
摘要:1 #include 2 /* 3 题目:栈的自实现 4 思路:栈的典型特点就是先进后出(FILO),或是后进先出(LIFO)。主要接口操作,主要有四类,分别是,判空,判满,压栈,出栈 5 */ 6 //声明栈类型 7 struct stack 8 { 9 char arr[152]; 10 int top;//计数 11 }; 12 13 struct s... 阅读全文

posted @ 2018-09-18 15:57 王朝马汉 阅读(139) 评论(0) 推荐(0)

strlen,strcat,strcpy,strcpm 自实现
摘要:1 #include 2 /* 3 题目:4种字符串库函数自实现:1.mystrlen()测字符串长度 2.mystrcat()字符串链接 3.mystrcpy()字符串拷贝 4.mystrcmp()字符串比较 4 思路:1.mystrlen()测字符串长度。测量字符串的实际长度返回一个整数值 5 2.mystrcat()字符串链接。将第二个字符串链接到第一个字符串后面... 阅读全文

posted @ 2018-09-17 15:27 王朝马汉 阅读(342) 评论(0) 推荐(0)

实现登录,提示用户输入用户名和密码,模拟登录,输入3次错误退出程序
摘要:#include #include /* 题目:实现登录功能,要求输入用户名和密码,模仿登录,三次输入失败则退出程序。 思路:1.定义二个字符数组。一个存储用户名,一个存储密码。 2.定义一个flag 来记录输入正确。定义一个count 来记录输入错误的次数 */ int main(void) { char name[30]; char password[30];... 阅读全文

posted @ 2018-09-17 10:53 王朝马汉 阅读(2813) 评论(0) 推荐(0)

n!
摘要:1 #include 2 /* 3 题目:求n! 4 解题思路:0的阶乘 = 1 n的阶乘 =n*(n-1)! 5 */ 6 int fac(int n) 7 { 8 if(0 == n) 9 return 1; 10 else 11 return n*fac(n-1); 12 } 13 14 int main(voi... 阅读全文

posted @ 2018-09-17 09:58 王朝马汉 阅读(549) 评论(0) 推荐(0)

指针的一些小练习
摘要:1 #include 2 3 int main(void) 4 { 5 /* 6 //1.往指定内存存入数据:请写一条语句,往内存地址 0x12345678 中写入整型数据 1234。 7 *((int *)0x12345678) = 1234;//可能程序会崩溃,但是编译能够通过。指针是个有类型的地址。 8 */ 9 10 /* 11 /... 阅读全文

posted @ 2018-09-16 15:38 王朝马汉 阅读(111) 评论(0) 推荐(0)

1.合并两个数组,并保持仍然有序。2.删除合并后数组中的重复元素
摘要:1 #include 2 /* 3 题目:1.合并两个有序数组到第三个中去,并使其依然保持有序 2.删除重复的元素 4 思路:a.分别测出二个数组的长度,将两个数组的长度之和作为第三个数组的长度 5 b.比较二个数组元素的大小,小的放入第三个数组,直至某一个数组为空,将另外一个不为空的数组剩下的元素追加到第三个数组 6 后面即可 7 c.... 阅读全文

posted @ 2018-09-16 12:33 王朝马汉 阅读(1385) 评论(0) 推荐(0)

两种查找:1无序线性查找。2有序折半查找(二分查找)
摘要:1 #include 2 /* 3 两种查找 4 */ 5 #define N 10 6 int main(void) 7 { 8 /* 9 //查找1:无序数组查找,返回下标(线性查找) 10 //思路:将需要查找的数和数组的元素逐个比较,相同返回下标,未找到返回-1 11 int lookup(int arr[],int n,int j); 12 int ... 阅读全文

posted @ 2018-09-06 17:48 王朝马汉 阅读(249) 评论(0) 推荐(0)

统计选票练习题
摘要:1 # include 2 # include 3 /* 4 题目:3个候选人,每个选民只能投票选一人,要求编写一个统计选票的程序,先后输入被选人的名字,最后输出各人得票的结果 5 解题思路:每个候选人的名字和得票 组成一个结构体变量。3个候选人就需要一个结构体数组。定义一个结构体数组arr,每个元素中的得票初始化为0. 6 投票输入候选人名字,候选人的得... 阅读全文

posted @ 2018-09-06 13:27 王朝马汉 阅读(553) 评论(0) 推荐(0)

数组最值和两种排序
摘要:1 #include 2 #define N 10 3 /* 4 数组最值和两种排序 5 */ 6 int main(void) 7 { 8 /* 9 //题目1.求一个数组中最大与最小值 10 int arr[N] = {9,-1,0,-3,5,6,7,8,15,10}; 11 int i,j,max,min; 12 max = min = arr[... 阅读全文

posted @ 2018-09-05 15:43 王朝马汉 阅读(201) 评论(0) 推荐(0)

整数翻转,99乘法表,百钱买百鸡
摘要:1 #include 2 /* 3 循环练习题 4 */ 5 int main(void) 6 { 7 /* 8 //题目1:打印99乘法表 9 //思路:观察乘法表:1.每行打印的列数等于行号(例如:第一行,1列,第二行2列) 所以内循环的终止条件:j0) 36 { 37 while(val) 38 { 39... 阅读全文

posted @ 2018-09-05 09:45 王朝马汉 阅读(366) 评论(0) 推荐(0)

运算符综合练习题
摘要:1 #include 2 /* 3 运算符综合练习 4 */ 5 int main(void) 6 { 7 /* 8 // 1.if(x==y) 与 与 if(x=y) 之间的区别 9 答: 10 x == y 是逻辑表达式,当 x和y相等表达式的值是1 为真,不相等表达式的值为0,为假 11 x = y 是赋值表达式。当 y的值为0时 x的值为... 阅读全文

posted @ 2018-09-04 11:16 王朝马汉 阅读(883) 评论(0) 推荐(0)

五子棋实现体验其过程
摘要:1 #include 2 /* 3 项目:五子棋赢棋判断 4 思路:1.横向扫描判断是否有连续5颗相连的棋子 5 2.纵向扫描判断是否有连续5颗相连的棋子 6 3.扫描主对角线判断是否有连续5颗相连的棋子 7 4.斜线扫描主对角线上半面是否有连续5颗相连的棋子 8 5.斜线扫描主对角线下半面是否有连续5颗相连的棋子 9 6.扫描次对角线判断是否有连续5颗... 阅读全文

posted @ 2018-09-04 09:20 王朝马汉 阅读(268) 评论(0) 推荐(0)

二维数组斜线扫描2(方法逻辑清晰)
摘要:1 #include 2 3 #define M 10 4 #define N 10 5 int main(void) 6 { 7 int i,j; 8 //初始化二维数组 9 int arr[M][N] = { 10 {1,2,3,4,5,6,1,0,0,1}, 11 {1,2,3,4,1,6,1... 阅读全文

posted @ 2018-09-03 15:53 王朝马汉 阅读(603) 评论(0) 推荐(0)

字符串链接练习题
摘要:1 #include 2 /* 3 题目:练习字符串链接 4 */ 5 int main(void) 6 { 7 char name1[30] = "abc"; 8 char name2[30] = "defdasdasd"; 9 10 char *p1,*p2; 11 p1 = name1; 12 p2 = name2; 1... 阅读全文

posted @ 2018-09-02 10:52 王朝马汉 阅读(194) 评论(0) 推荐(0)

母串中有几个相同的子串
摘要:1 #include 2 int getSubstrCount(char* str,char* subStr) 3 { 4 int count = 0; 5 while(*str) 6 { 7 int i; 8 //如果在大串中碰到相同的字符,则进入循环开始连续判断,如果出现不相同的则终止循环。如果完全相同则小串正常结束 ... 阅读全文

posted @ 2018-09-02 10:33 王朝马汉 阅读(186) 评论(0) 推荐(0)

导航