C语言从入门到进阶
文章平均质量分 57
阳光正好。
这个作者很懒,什么都没留下…
展开
-
C语言-文件操作
本章重点文件类型文件缓冲区文件指针文件类型根据数据的组织形式,数据文件被称为文本文件或者二进制文件数据在内存中以二进制的形式存储,如果不加转换的输出到外存,就是二进制文件文本文件:拿记事本打开的文件都是文本文件字符一律以ASCII形式存储,数据型数据既可以用ASCII形式存储,也可以使用二进制形式存储文件缓冲区ANSIC标准采用“缓冲文件系统”处理的数据文件的,所谓缓冲文件系统是指系统自动地在内存中为程序中每一个正在使用的文件开辟一块“文件缓冲区”。从内存向磁盘输出数据会先送到内存中的缓原创 2021-09-18 13:57:29 · 155 阅读 · 0 评论 -
C语言-动态内存管理
本章重点1.动态内存函数2.常见的动态内存的错误动态内存分配动态内存是在堆区上分配的mallocvoid* malloc(size_t size)向内存申请一块连续可用的空间,并返回指向这块空间的指针1.如果开辟成功,则返回一个指向开辟好空间的指针2.如果开辟失败,则返回一个NULL指针,因此malloc的返回值一定要做检查3.如果参数size为0,malloc的行为是标准未定义的,取决于编译器开辟完的空间用完要释放free(p); //用来释放动态开辟的内存p=N原创 2021-09-13 16:24:03 · 68 阅读 · 0 评论 -
C语言-通讯录的简单实现
思路1.先创建一个程序的流程2.实现增、删、查、改功能程序的主要流程void menu(){ printf("*******************************\n"); printf("****** 1.add 2.del ****\n"); printf("****** 3.search 4.modify ****\n"); printf("****** 5.sort 6.show ****\n"); printf("******原创 2021-09-10 16:58:51 · 88 阅读 · 0 评论 -
C语言进阶-自定义类型
本章重点深入了解结构体、枚举、联合结构体结构是一些值的集合//结构体类型声明struct tag //tag结构体的标签 { char name[20]; int age;}student; //student是结构体变量,也是全局变量 int main(){ struct tag student = { "zhangsan",18 }; return 0;}匿名结构体类型struct{ char name[20]; int age;}原创 2021-09-09 18:20:59 · 77 阅读 · 0 评论 -
C语言进阶-字符函数和字符串函数
本章重点重点介绍字符和字符串的库函数strlen函数原型size_t strlen ( const char * str );size_t 是 unsigned int头文件是#include <string.h>功能:计算字符串的长度,读到'\0'结束#include <stdio.h>#include <string.h>int main(){ char arr[] = "hello world!"; printf("%d\n", s原创 2021-08-22 10:56:33 · 188 阅读 · 0 评论 -
C语言-回调函数
回调函数回调函数是通过一个函数指针调用的函数,就是把一个函数的指针作为参数传递给另一个函数,当这个指针被调用时,我们就说这就是回调函数。一个简单的例子就是qsort函数,它就是通过地址找到那个函数在调用可以看到qsort函数有四个参数第一个参数void* base是接受要排序的数组第二个参数size_t num,是数组元素的总和size_t是typedef把unsigned int重定义为size_t第三个参数size_t width是数组一个元素的大小第四个参数 int(com原创 2021-08-06 18:46:13 · 271 阅读 · 0 评论 -
C语言进阶-指针
#本章重点深入了解各种指针字符指针int main(){ char c = 'w'; char* ch = &c; printf("%c\n", *ch); return 0;}//字符指针原创 2021-08-06 15:46:23 · 131 阅读 · 0 评论 -
C语言进阶-数据的储存
#本章重点详细解读数据在内存中是怎么存储的数据类型//整型 char //存的是ascii值 signed char //有符号的char类型 unsigned char //无符号的char类型 short signed short unsigned short int signed int unsigned int long signed long unsigned long long long signed long long unsigned原创 2021-08-03 18:59:44 · 166 阅读 · 0 评论 -
C语言-初阶指针和结构体
本章重点讲解简单的指针和结构体指针指针是什么?指针是存放它指向变量地址的变量#include <stdio.h>int main(){ int a = 10; int* p = &a; return 0;}指针的大小:在32位平台上是4个字节,64位平台上是8个字节指针和指针类型指针类型 int a = 10; int* pi = &a; char* pc = &a; short* ps = &a; float原创 2021-08-02 20:16:18 · 208 阅读 · 0 评论 -
判断自幂数
一种简单的判断是否是水仙花数思路:1.把一个数拆分,保存在数组中2.判断是否是水仙花数完整代码#include <stdio.h>#include <math.h>int storage(int i,int arr[]){ int count = 0; while (i) { arr[count] = i % 10; i /= 10; count++; } return count; //返回的是数字一共有多少位}void IfRi原创 2021-08-02 13:18:27 · 176 阅读 · 0 评论 -
C语言-操作符和表达式详解
本章重点详细介绍各种操作符,对操作符加深了解对表达式求值的一些注意事项操作符算术操作符/ %对于除号,保留的是商,取模保留的是余数#include <stdio.h>int main(){ int n = 7; printf("%d\n", 7 / 2); //除号操作数有一个是浮点数,就执行的是浮点数的除法 printf("%.2lf\n", 7 / 2.0); //printf("%d\n",7/0); 不能除0,会报错原创 2021-07-23 11:09:25 · 310 阅读 · 2 评论 -
C语言-扫雷
本章重点本次扫雷只是增加了一个递归展开功能,以后会加入标记等功能主函数srand是以时间戳随机设计一个种子int main(){ srand((unsigned)time(NULL)); int input = 0; do { menu(); printf("请选择:>"); scanf("%d", &input); switch (input) { case 1: game(); break; case 0: print原创 2021-07-17 09:44:10 · 119 阅读 · 2 评论 -
C语言-三子棋
运用前面学过的知识做一个小游戏三子棋源码不是在同一个源文件里实现的,是在一个工程内实现的新建.h文件,里面声明全局变量,声明函数在创建.c文件,用来定义函数test.c 用来放主函数主函数test.c#include "game.h"void menu(){ printf("********************\n"); printf("***1.play 0.exit****\n"); printf("********************\n");}void原创 2021-07-15 16:00:48 · 106 阅读 · 2 评论 -
C语言-数组
本章学数组一维数组数组是什么?数组是一组相同类型的集合一维数组的创建和初始化#include <stdio.h>int main(){ int arr1[]={1,2,3,4,5,6,7,8,9,10}; //arr1表示数组中有10个元素 int arr2[10]; //arr2这种定义在vs2019会报警告,未引用的局部变量 int arr3[10]={0}; //arr3表示有10个元素,每个元素都是0 return 0;}数组在创建的时原创 2021-07-15 13:03:22 · 181 阅读 · 0 评论 -
C语言-函数
本章重点对函数、函数调用、递归等进行学习1.函数是什么?函数:子程序,是一个大型程序中的某部分代码,由一个或多个语句块组成。它负责完成某项特定任务,而且相较于其他代码,具备相对的独立性。一般会有输入参数和返回值,提供对过程的封装和细节的隐藏。C语言中函数的分类?库函数strcpy把一个字符串的内容拷贝到另一个字符串,函数由两个参数,一个是char类型的source,源字符串,另一个是char类型的destination,目的地字符串,函数返回类型是char*,头文件是<str原创 2021-07-13 17:37:13 · 121 阅读 · 0 评论 -
分支和循环语句练习
一些简单的练习题1.计算n的阶乘#include <stdio.h>int main(){ int i = 1; int sum = 1; int n = 0; scanf("%d", &n); for (i = 1; i <= n; i++) { sum *= i; } printf("%d\n", sum); return 0;}下面用递归#include <stdio.h>int Factorial(int x){原创 2021-07-12 18:57:59 · 54 阅读 · 0 评论 -
C语言-分支和循环语句
分支和循环语句本章内容分支语句if语句1.什么是语句?2.单个if3.if-else4.多分支if-else4.悬空else5.在函数中省略else练习1-判断一个数是否为奇数练习2-输出1-100的奇数switch语句练习循环语句whilewhile中的breakwhile中的continuegetchar、putchar函数for循环for中的breakfor中的continue练习do...whilebreakcontinuegoto语句本章内容分支语句if语句1.什么是语句?C语言是一门原创 2021-07-12 16:22:10 · 247 阅读 · 0 评论 -
C语言从入门到进阶
用C语言实现三子棋小游戏欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用M原创 2021-07-11 18:07:54 · 769 阅读 · 0 评论