• 2024-06-24程序A将五个学生的信息(姓名、性别、分数)存入文件Stu_data中 程序B从文件中读取并排序 按成绩由高到低输出
     首先打开文件并存入信息;#include<stdio.h>#defineNUM5typedefstructstudent{ charname[100]; charsex; floatscore;}stu;intmain(){ FILE*fp=NULL; if((NULL==(fp=fopen("stu_data","w")))){ perror("fopen");retur
  • 2024-06-24C语言 | Leetcode C语言题解之第188题买卖股票的最佳时机IV
    题目:题解:intmaxProfit(intk,int*prices,intpricesSize){intn=pricesSize;if(n==0){return0;}k=fmin(k,n/2);intbuy[k+1],sell[k+1];memset(buy,0,sizeof(buy));memset(sell,0,sizeof(sell));
  • 2024-06-23Linux 7种 进程间通信方式
    传统进程间通信       通过文件实现进程间通信必须人为保证先后顺序       A--->硬盘--->B(B不知道A什么时候把内容传到硬盘中)1.无名管道2.有名管道3.信号IPC进程间通信4.消息队列5.共享内存6.信号灯集7.socket通信一、无名管道(亲缘关系的进程  
  • 2024-06-23数组元素的数量
    在数组初始化时,我们不希望将数组大小写死,后续可能会有修改,那么对于未指定大小的数组,如何计算其元素个数?思路:已知数组名代表整个数组的物理大小,数组内单个元素代表数组的一个单元物理大小,假设数组物理空间是100,单个元素物理空间是5,那么该数组一共有20个元素。array_element_numbe
  • 2024-06-22使用三种方式通过数组实现拷贝复制
    三种通过数组的方式进行数组的拷贝,其本质都是通过地址传参,来实现数组的拷贝。1、通过数组访问这种访问数组的方式是最常见的voidcopy1(doubletarget[],doublesource[],intlen){for(inti=0;i<len;++i){target[i]=source[i];}}i
  • 2024-06-205.21——❤经验❤
  • 2024-06-204.插入排序
    插入排序插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。排序思路:假设按照升序排序1.从索引为1的元素开始向前比较,一旦前面一个元素大于自己就让前面的元素
  • 2024-06-20第二章 - 第1节- 逻辑运算 - 课件
    1.逻辑运算符优先级以下是C++运算符的优先级表格,从高到低排列:优先级运算符描述结合性1::作用域解析从左到右2()[]->.函数调用、数组下标、成员访问从左到右3!~++--+-*&(type)sizeof逻辑非、按位取反、自增/自减、正/负号、间接
  • 2024-06-17C语言操作符
    C语言中的数据类型和变量以及简单的操作符文章目录C语言中的数据类型和变量以及简单的操作符前言数据类型字符型整型浮点型布尔类型`signed`和`unsigned`判断数据类型的大小/长度sizeof的介绍计算各种数据类型的大小/长度变量变量的创建变量的分类算术操作符赋值操作
  • 2024-06-15C语言-位运算练习-3
    题目:编写一个程序,接受一个int类型的参数,并返回该参数中打开位的数量源代码:#include<stdio.h>voidint_bit_number(intint_bit);intmain(){inti;printf("请输入一个整数:");scanf("%d",&i);int_bit_number(i);return0;}voidint_bit_nu
  • 2024-06-08C语言学习日志2-关键字i
    1.1,最宽恒大量的关键字----autoauto:它很宽恒大量的,你就当它不存在吧。编译器在默认的缺省情况下,所有变量都是auto的。1.2,最快的关键字----registerregister:这个关键字请求编译器尽可能的将变量存在CPU内部寄存器中而不是通过内存寻址访问以提高效率。注意是尽可能,不是绝
  • 2024-06-07Linux下的C语言编程(指针)
    目录1一级指针1.1定义1.2指针的内存大小1.3指针的偏移1.3.1加法偏移1.3.2减法偏移2二级指针2.1定义2.2如何理解二级指针3三级指针3.1定义4数组和指针的关系4.1一维数组与指针的关系4.1.1数组名的性质4.1.2数组名与指针的地址偏移4.2二维数组与
  • 2024-06-06数组array 和 &array的区别
    问题对于数组array和&array有什么区别呢?先说答案array:指向数组第一个数地址的指针&array:指向整个数组地址的指针所以直接打印的话,地址是一样的.但是如果+1的话,那么array是增加sizeof(int)大小,&array是增加sizeof(int)*array.size()测试#include<iost
  • 2024-06-06memset函数
    转载:https://www.cnblogs.com/-wenli/p/11491127.htmlC语言memset函数详解memset()的作用:在一段内存块中填充某个给定的值,通常用于数组初始化与数组清零。它是直接操作内存空间,mem即“内存”(memory)的意思。该函数的原型为:#include<string.h>void*memset(void*s,intc
  • 2024-06-04实现在多播组中进行数据的发送和接收
    目录目录实现在多播组中进行数据的发送和接收函数文件信息相关头文件、宏定义以及全局变量发送数据函数发送数据函数主函数实现在多播组中进行数据的发送和接收函数文件信息/********************************************************************filename:udp_broad.c
  • 2024-06-04设计程序,要求程序可以加入到一个多播组中并等待服务器发送数据包,并且程序还需要具有发送功能,如果收到数据包则把消息内容输出到终端
    目录题目分析代码结果题目小组实现,小组中的每位成员都需要设计程序,要求程序可以加入到一个多播组中并等待服务器发送数据包,并且程序还需要具有发送功能,如果收到数据包则把消息内容输出到终端,消息内容格式[消息来源IP消息时间]:消息内容分析1.发送端需设置套接字的广
  • 2024-06-04局域网小组群播
    局域网小组群播目录局域网小组群播头文件/宏定义函数1函数1主函数头文件/宏定义#include<stdio.h>#include<stdlib.h>#include<string.h>#include<arpa/inet.h>#include<netinet/in.h>#include<sys/types.h>#include<sys/socket.h>#include<time.
  • 2024-06-04Linux C语言学习:数据类型
    一、 为什么要引入数据类型•计算机中每个字节都有一个地址(类似门牌号)•CPU通过地址来访问这个字节的空间        0x2000110310010011     0x20001102 11101110        0x2000110111110101        0x20001
  • 2024-06-04每天一个 Linux 命令(2):od
    功能简介od(OctalDump)命令用于将指定文件内容以八进制、十进制、十六进制、浮点格式或ASCII编码字符方式显示,通常用于显示或查看文件中不能直接显示在终端的字符。od命令系统默认的显示方式是八进制。常见的文件为文本文件和二进制文件。od命令主要用来查看保存在二进制文件中
  • 2024-06-03C语言之指针进阶(5),sizeof和strlen的数组计算以及指针运算笔试难题详解
    目录前言一、sizeof和strlen的区分比较二、sizeof,strlen与数组的计算三、指针运算,笔试难题解析总结前言    本文作为指针进阶的最后一篇文章,给大家带来了丰富的例题,这其中包括区分比较sizeof和strlen计算各种花样的数组指针表达式,如果你能答对所有的关
  • 2024-06-03杨辉三角C语言的超简单解决办法
    #include<stdio.h>#include<stdlib.h>intmain(){intarr[10][10]={0};//十行的杨辉三角intsize=sizeof(arr)/sizeof(arr[0]);//求一共有几行for(inti=0;i<size;i++){for(intj=0;j<=i;j++)//对角线{if(i==j||j=
  • 2024-06-031638. 统计只差一个字符的子串数目
    题目给你两个字符串s和t,请找出s中的非空子串的数目,这些子串满足替换一个不同字符以后,是t串的子串。换言之,请你找到s和t串中恰好只有一个字符不同的子字符串对的数目。一个子字符串是一个字符串中连续的字符。示例示例1输入:s="aba",t="baba"输出:6
  • 2024-06-03每天一个 Linux 命令(2):od
    功能简介od(OctalDump)命令用于将指定文件内容以八进制、十进制、十六进制、浮点格式或ASCII编码字符方式显示,通常用于显示或查看文件中不能直接显示在终端的字符。od命令系统默认的显示方式是八进制。常见的文件为文本文件和二进制文件。od命令主要用来查看保存在二进制文件中的
  • 2024-06-02c语言基本概念和数据类型常见问题
    1.两种特殊的转义字符:\ddd和\xdd是什么?• \ddd :ddd表⽰1~3个⼋进制的数字。如: \130表⽰字符X• \xdd :dd表⽰2个⼗六进制数字。如:\x30表⽰字符02.指出里面哪些是转义字符,并给出运行结果printf("%zd\n",strlen("c:\\test\128\abcd.c"));转义字符有: \\ , \1
  • 2024-06-01使用select实现一个基于UDP的一对一即时聊天程序。
    注意事项UDP通信时,client要先给server发送消息,这样server才能知道client的信息代码//server#include<func.h>#defineBUFFSIZE1024intmain(){intsfd=socket(AF_INET,SOCK_DGRAM,0);if(sfd==-1){perror("socket");}structsockad