C语言代码
顾鸣丰
这个作者很懒,什么都没留下…
展开
-
linuxC学习第八天
今天由于需要解决一些生活和学习上的琐事,只进行了3个简单程序的理解学习一、计算最大约数这个程序比较简单只需要对这个数从大到小每一个数进行判断是否能除尽,取出最大的数就可以了,注意一些数可能超出int的范围,可以用long定义#include <stdio.h>int main(){ long a; int i; printf("请输入数字\n"); scanf(...原创 2018-11-18 22:27:28 · 100 阅读 · 0 评论 -
数据结构第四天
一、对通讯录添加功能1、遇到重名的信息,可以根据id删除2、添加退出功能。3、输入id时提供id是否重复的功能以下为改进的代码#include &lt;stdio.h&gt;#include "Linklist.h"#include &lt;stdlib.h&gt;#include &lt;string.h&gt;enum {ADD =原创 2018-12-10 12:39:07 · 225 阅读 · 2 评论 -
数据结构第五天
一、双向链表1、单链表构成的循环链表最后一个结点本来指向NULL,改为指向头结点或者第一个结点。实现方法,将原来指向NULL的地方改成指向ls->head,或者ls->head->next。While()循环的条件改为!= ls->head或者ls->head->next。#include "Linklist.h"#include <stdl...原创 2018-12-10 22:21:15 · 125 阅读 · 0 评论 -
数据结构第六天
一、栈1、入栈出栈顺序:先进后出,后进先出2、栈按分布不同分为(1)顺序栈(2)链式栈二、队列1、队列与栈的区别在于:栈是先进后出,后进先出。而队列是先进先出,后进后出。将栈看作瓶子装水和倒水的话,可以将队列看作水龙头,先进的先出。2、队列按分布不同分为(1)链式队列三、多项式计算器#include <stdio.h>#include "stack.h"...原创 2018-12-11 20:13:19 · 99 阅读 · 0 评论 -
排序练习
一、插入排序#include <stdio.h>void my_print(int *a,int len){ int i; for(i = 0;i < len;i++) { printf("%4d",a[i]); } printf("\n");}void swap(int *a,int i,int j){ int tmp = a[i]; a[i]...原创 2018-12-23 22:03:36 · 171 阅读 · 0 评论 -
通讯录(带系统编程)
、main函数#include <stdio.h>#include "Linklist.h"int main(){ Node *head = NULL; CreateList(&head); //创建链表,初始化 if(NULL == head->next) Restore(head); //输入上次保存的值 while(1) { ...原创 2018-12-23 22:07:11 · 486 阅读 · 0 评论 -
排序
各种排序1、冒泡排序将数组的中的么一个数从头开始比较,找出最大的数,通过不断的交换,将最大数放入数组末尾。将长度减少,再次遍历,直到数组填完。2、冒泡排序——鸡尾酒排序又称定向冒泡排序。与冒泡排序的区别在于:冒泡只从低到高去比较,鸡尾酒排序不仅从低到高还从高到低去比较3、选择排序通过遍历,找到最小的数,将其放在数组开头。再从第二的位置开始遍历,找出第二小的数,放在数组第二个位置,直...原创 2018-12-18 20:48:50 · 85 阅读 · 0 评论 -
通讯录修改
一、添加的功能和未解决的问题添加:数据同步,在上一次意外退出或者未保存的情况下退出,再次进入可以选择还原上一次的数据问题:每次进入都会选择是否还原,不管上次有无操作二、代码主函数#include <stdio.h>#include "book.h"int main(){ Node *head = NULL; CreateList(&head); //创...原创 2019-01-03 18:43:09 · 414 阅读 · 0 评论 -
运用线程实现服务器与客户端相互通信
代码通过创建一个线程,使服务器的读写分离,主线程用于读客户端发送的数据,其他线程用来向客户端写数据,互不影响。#include <stdio.h>#include <sys/types.h> /* See NOTES */#include <sys/socket.h>#include <unistd.h>#include...原创 2019-01-03 19:25:23 · 413 阅读 · 0 评论 -
聊天室1.0(注册和登录功能)
1、服务器#include <stdio.h>#include <sys/types.h> /* See NOTES */#include <sys/socket.h>#include <sqlite3.h>#include <string.h>#include <unistd.h>#inclu...原创 2019-01-04 19:45:13 · 1883 阅读 · 0 评论 -
tcp和udp服务器与客户端的编写
1、tcp服务器#include <stdio.h>#include <sys/types.h> /* See NOTES */#include <sys/socket.h>#include <arpa/inet.h>#include <string.h>#include <unistd.h>#...原创 2019-01-04 19:49:48 · 512 阅读 · 0 评论 -
多路复用
1、tcp服务器的多路复用#include <stdio.h>#include <sys/types.h>#include <sys/socket.h>#include <string.h>#include <unistd.h>#include <arpa/inet.h>#include <stdlib.h...原创 2019-01-04 19:52:13 · 133 阅读 · 0 评论 -
聊天室跟新(2)
一、服务器代码#include <stdio.h>#include <sys/types.h> /* See NOTES */#include <sys/socket.h>#include <sqlite3.h>#include <string.h>#include <unistd.h>#inc...原创 2019-01-10 23:08:41 · 524 阅读 · 1 评论 -
数据结构第三天
一、用单链表编写的带有部分功能的简易通讯录#include <stdio.h>#include "Linklist.h"#include <stdlib.h>#include <string.h>enum {ADD = 1,INFORMATION,FIND,DELETE}; //功能选项enum {ID = 1,PHONE,CONPANY,NAM...原创 2018-12-09 21:10:57 · 122 阅读 · 0 评论 -
排序的小运用
一、 有一个由大小写组成的字符串,现在需要对他进行修改,将其中的所有小写字母排在大写字母的前面(不要求保持原顺序)/* 有一个由大小写组成的字符串,现在需要对他进行修改, 将其中的所有小写字母排在大写字母的前面 (不要求保持原顺序) */#include <stdio.h>#include <string.h>int partion(char *a,int ...原创 2018-12-19 19:56:51 · 114 阅读 · 0 评论 -
数据结构第一天
一、数据结构的组织形式1、线性表:除去头和尾,中间元素有且仅有一个前继,有且仅有一个后继。2、按存储空间分(1)顺序表:内部存储空间连续近似可以看成数组(2)链表:内部存储空间不连续。3、顺序表内容(1)头文件,存放在include 文件夹中#ifndef _SQE_H_#define _SQE_H_#define IN_SIZE 10 //初始最大的空间#define A...原创 2018-12-06 22:59:44 · 318 阅读 · 0 评论 -
linuxC学习第十一天
今天主要是对昨天的知识复习一下,编写了一些程序。下面是一些刚开始不是很明白的程序。一、题目:输入一个32位的整数a,使用按位异或^运算,生成一个新的32位整数b,使得该整数b的每一位等于原整数a中该位左右两边两个bit位的异或结果#include <stdio.h>int f1(int a) { int i,b=0; for(i=0;i<32;i++)...原创 2018-11-21 23:17:07 · 104 阅读 · 0 评论 -
linuxC学习第十三天
今天对昨天的字符数组进行实际数据编写一、对一组字符串中的词组进行逆序#include <stdio.h>int len(char *pa) //计算数组长度{ int len=0; while(*(pa++)) { len++; } return len;} void f(char *left,char *right) //单词逆...原创 2018-11-23 23:32:29 · 95 阅读 · 0 评论 -
liunxC学习第七天
今天是一天的程序编写练习(大部分是抄写,练习格式,熟悉之前学到的一些指令和函数)一、用“*”打印一个半径为10 的圆第一种画圆的方法#include <stdio.h>#include <math.h>int main(){ double y; int x,m; for(y=10;y>=-10;y--) //对...原创 2018-11-18 12:15:06 · 172 阅读 · 0 评论 -
linuxC学习第六天
今天对于一个关于如何查找1-N-1共N个数据的数组中重复的数据进行了深入的了解和探讨以下是程序代码:一、冒泡排列#include &amp;amp;amp;lt;stdio.h&amp;amp;amp;gt;#define SIZE 10void swap(int a[],int n) { int i, j, temp; for (j = 0; j &amp;amp;amp;lt; n - 1; j++) {原创 2018-11-16 23:39:20 · 84 阅读 · 0 评论 -
linuxC学习第十五天
今天使用对函数和指针进行一些程序的练习和理解一、将一串符号“aabbfssdffg”压缩成“a2b2fs2df2g”#include &lt;stdio.h&gt;void f(char *a){ if(a == NULL) return; char *p1=a; int count=1; a=a+1; while(*a++) { if(*a ...原创 2018-11-25 22:56:15 · 132 阅读 · 0 评论 -
linuxC学习第十八天
一、使用结构体编写通讯录的一部分内容int main(){ struct Txl a[10] = {0}; int count = 0; int length = 0; int i,t = 0; while(1) { printf("------------------\n"); printf("1、请输入ID和联系人\n"); printf("2、查看ID和联系...原创 2018-11-28 23:06:13 · 106 阅读 · 0 评论 -
linuxC学习第十四天
一、今天主要对一些知识进行了回顾和深入了解。1、int占4个字节,对于int型它能写入的整数不能超过10个不然编译就会出错。 在编写通讯录一类要超过10个数个的程序时,可以使用long long 。long long 占8个字节,而long可能4个字节,可能8个字节。2、在写函数时,一定要注意形参列表的检测。如果没有这一步,一旦有用户输入一个完全错误的数,可能会导致系统崩溃。3、重新回顾了一...原创 2018-11-25 09:37:10 · 91 阅读 · 0 评论 -
linuxC学习第十九天
一、通讯录#include &lt;stdio.h&gt;#include &lt;string.h&gt;#include &lt;stdlib.h&gt;int Rand(struct Tx1 *pa,int length);void Steam(int com);void Printf(struct Tx1 *pa,int length);int add(struct Tx1原创 2018-11-29 22:44:28 · 99 阅读 · 0 评论 -
linuxC学习第二十二天
一、将一组从小到大排列好的数中相同的数去除/*----------------------------------将一组从小到大排列好的数中相同的数去除-------------------*/#include <stdio.h>int unique1(int *pa,int len){ int i,j; int k; for(i = 0; i < len...原创 2018-12-02 21:37:59 · 141 阅读 · 0 评论 -
数据结构第二天
一、对数据结构进行深入学习1、顺序表加入按顺序查找// 删除数据:根据数值删除数据// s :要删除的顺序表// data: 要删除的数据// 返回值:成功返回 TRUE,失败返回FALSE,其他返回ERRORBOOL Delete_data(Sqe* s,Data data);BOOL Delete_data(Sqe* s,Data data){ if(NULL == ...原创 2018-12-08 09:21:49 · 115 阅读 · 0 评论 -
数据结构第七天(停车场管理1.0)
一、停车管理系统(有点BUG)#include <stdio.h>#include "Queue.h"#include "Stack.h"#include <stdlib.h>#include <time.h>enum {EXIT,PARK,LEAVE,FIND};struct Time{ int time_in; int time_ou...原创 2018-12-13 09:16:31 · 420 阅读 · 0 评论 -
数据结构第七天(停车场管理2.0)
一、停车场管理系统今天对停车场管理系统进行了改进1、改进了无法保存离开车辆的车位2、能够对车辆进入离开的时间记录3、添加离开停车场时的计费4、优化界面#include <stdio.h>#include "Queue.h"#include "Stack.h"#include <stdlib.h>#include <time.h>enum ...原创 2018-12-13 22:29:48 · 261 阅读 · 0 评论 -
聊天室添加新功能
1、添加会员制度会员包含的特权1、可以禁言用户2、可踢出用户下线3、可以防止禁言4、可以防止被踢1、服务器代码部分//踢出下线void kick(int cmd,long client_socket){ //客户端--->服务器 struct _kick { char name[SIZE]; }Kick; read(client_socket,&...原创 2019-01-13 20:47:31 · 374 阅读 · 0 评论