
C语言
文章平均质量分 82
Warrior-K
冲!(ง •̀_•́)ง
展开
-
C语言进阶:C语言终极之战,学生管理系统的再度优化
再看一下结构体部分的知识如果是输入结构体字符串,结构体内是不能用字符串指针的#include <stdio.h>#include <stdlib.h>#include <string.h>typedef struct Student{ char* name; int age; float score;}Student;int main(){ Student s; char t原创 2021-04-13 15:29:58 · 295 阅读 · 0 评论 -
C语言进阶:变量的作用域与生存期,变量的分类,内存
文章目录变量的作用域与生存期1. 作用域2. 生存期3. 同名隐藏变量的分类1. 局部变量2. 全局变量3. 全局静态变量4. 本地静态变量5. 变量类型总结内存1.内存四区2. 堆和栈的区别3. 显示目标文件分区大小变量的作用域与生存期变量的隐形性质变量的作用域与生存期相当于“攻击范围”和“生命力”1. 作用域编译时可能出现这样的问题#include <stdio.h>int main(){ int n =0; for(int i=0;i<10;++i){原创 2021-04-11 21:42:24 · 607 阅读 · 0 评论 -
C语言进阶:宏定义,头文件,让C文件拆分了还能运行
宏定义宏定义通常有三种用法:当作常量使用当作函数使用编译预处理1. 宏定义常量预定义宏:预定义宏作用__LINE__当前所在文件的行号 %d__FILE__表示当前源文件 %s__DATE__文件被编译的日期 %s__TIME__文件被编译的时间 %s测试:#include <stdio.h>int main(){ printf("%s:%d\n",__FILE__,__LINE__);原创 2021-04-07 19:55:08 · 540 阅读 · 0 评论 -
C语言进阶:学生信息管理系统的不断优化,大块程序拿去用
文章目录1. 原题主要知识点:文件打开和关闭,文件的读和写2. 优化1:添加学生信息、修改学生信息主要知识点:二进制读写文件、文件定位3. 优化2:新增用户注册和登录功能主要知识点:EOF返回、复习前面知识4. 优化3:把功能拆分为多个文件主要知识点:头文件、文件拆分1. 原题主要知识点:文件打开和关闭,文件的读和写功能:进入页面显示文件内容加载情况,选择数字进入不同功能查看所有学生信息录入学生信息按成绩排序查询学生成绩删除学生信息以上功能完成则继续选择,输入0才退出#includ原创 2021-04-07 17:25:27 · 338 阅读 · 0 评论 -
C语言进阶:动态分配内存,二维指针
文章目录动态分配内存1.数组空间申请2.重新调整内存大小3. 数组的整体拷贝、比较、移动二维指针1. 二维指针的用法2. 动态内存创建二维数组动态分配内存1.数组空间申请申请动态分配内存 malloc()stdlib.h 中定义函数 void* malloc(size_t size)向系统申请大小为 size 的内存空间返回结果是 void*,使用时转换成需要的指针类型如果申请失败,返回 NULL向系统申请一块 n*4 字节的空间(int*)malloc(n*sizeof(int))#i原创 2021-04-03 21:50:24 · 1528 阅读 · 0 评论 -
C语言进阶:文件操作,学生信息管理系统
文章目录1. 重定向1.1 重定向文件输出1.2 重定向文件输入1.3 结构体存取2. 读文件和写文件3. 打开文件和关闭文件4. 综合大题5. 二进制读写1. 重定向1.1 重定向文件输出把运行出来的内容直接保存在文件中 ./a.out > hello.txt#include <stdio.h>int main(){ printf("hallo\n");}重定向执行结果:[admin@localhost cfile]$ ./hi > hi.txt原创 2021-04-01 18:19:27 · 1967 阅读 · 0 评论 -
C语言初阶:结构体,联合体,枚举,类型重命名
1. 结构体1.1 结构体的基本用法结构体的各种运用:#include <stdio.h>struct Point{ int x; int y; int z;};void PrintPoint(struct Point m){ printf("(%d,%d,%d)\n",m.x,m.y,m.z);}void PrintPointPtr(struct Point* p){ printf("(%d,原创 2021-03-28 22:21:24 · 2036 阅读 · 1 评论 -
C语言初阶:函数,函数指针解决实际问题
文章目录1. 函数指针1. 函数指针函数名就是一个地址,所以函数名就能放在指针中定义指针的方法:void (*p)() = Func;调用函数指针的方法:(*p)(); 或者 p();和数组的道理一样有参数和有返回值的调用函数指针:int (*padd)(int a,int b) = add;printf("%d\n",padd(100,200));或者 printf("%d\n",(*padd)(100,200));体会函数指针的用法:#include <stdio.h&原创 2021-03-25 22:39:43 · 514 阅读 · 0 评论 -
C语言初阶:指针,C语言的上帝之手
文章目录1. 指针运算1.1 算术运算符指针的自加++、自减--指针相减的意义1.2 单位长度2. 指针类型3. 二维指针数组指针与指针数组二维指针数组4. 指针常量和常量指针5. 字符串数组与字符串指针数组二维数组字符串1. 指针运算1.1 算术运算符指针加整数:指针指向下一个变量指针减整数:指针指向上一个变量指针的自加++、自减–*p++, *p- - 与 *++p, *- -p 与 ++*p, - -*p++、- -放在三种不同的位置,表示的含义不同,我们逐一实验*p++, *p- -原创 2021-03-23 21:27:39 · 640 阅读 · 0 评论 -
C语言初阶:进制,计算机的美丽语言
文章目录1. 进制是什么2. 进制的转换3. 计算机自己的想法4. C语言中的进制1. 进制是什么进制也就是进位计数制基数与权:二进制中0和1就是基数,2的次方数就是权,也就是位数2. 进制的转换可以使用进制计算器查看进制转换3. 计算机自己的想法计算机为什么使用二进制、八进制、十六进制?实现容易:电路中的状态容易表示 0 和 1 (开与关、亮与灭、高与低)可靠性高: 0 和 1 两个数字传输和处理不易出错运算简单:与十进制数相比,二进制数的运算规则要简单适合逻辑: 0 和 1 与原创 2021-03-20 20:08:06 · 342 阅读 · 0 评论 -
C语言初阶:字符串,字符串搭配函数与指针的多重奥秘
字符串字符串遍历打印:简化效果#include <stdio.h>int main(){char s[] = “Hello World”;char* p = s;for(int i=0;’\0’!=s[i];++i){printf(“1:%c\n”,s[i]);}for(int i=0;’\0’!=(s+i);++i){printf(“2:%c\n”,(s+i));}for(;’\0’!=*p;p++){printf(“3:%c\n”,*p);}p=s;while原创 2021-03-18 11:11:57 · 305 阅读 · 4 评论 -
C语言初阶:数组,数组的灵活用法,多维数组的使用
文章目录1. 数组的高级定义2. 数组加函数与指针3. 多维数组初始化元素遍历二维数组转一维数组4. 变量指针和数组指针1. 数组的高级定义数组的大小 sizeofchar 1int 4double 8练习:#include <stdio.h>int main(){ int arr[21] = {3,4}; for(int i=0;i<sizeof(arr)/sizeof(arr[0]);++i){ prin原创 2021-03-17 20:37:03 · 807 阅读 · 0 评论 -
C语言初阶:基本数据类型,浮点数的特殊用法,使用ASCII码判断和更改字符串
文章目录1. 数据类型2. ASCII码3. 类型转换1. 数据类型类型定义占位符长整形long%ld长长整形long long%lld双浮点型double%lf长双浮点型long double%Lfsizeof:查看变量或类型的大小浮点数范围:输出含义inf正无穷-inf负无穷nan不存在小数是否相等,使用最小误差使用:#include <math.h>if(fabs(c-1原创 2021-03-13 22:01:56 · 851 阅读 · 0 评论 -
C语言入门:入门项目合集
文章目录控制语句:打印年月日历函数:体重测评器字符串:身份证号码终极练习:个人所得税控制语句:打印年月日历函数:体重测评器字符串:身份证号码终极练习:个人所得税原创 2021-03-12 22:24:58 · 1099 阅读 · 0 评论 -
C语言入门:数组,字符串,结构体
文章目录1. 数组数组初始化数组的输入2. 字符串3. 结构体创建结构体定义结构体1. 数组n[0]相当于n1,输入5个数字,输出他们的倒序#include <stdio.h>int main(){ int n[5]; for(int i=0;i<5;++i){ scanf("%d",&n[i]); } for(int i=4;i>=0;--i){原创 2021-03-09 20:53:59 · 586 阅读 · 0 评论 -
C语言入门:函数,指针
文章目录函数调用函数定义函数:return语句指针定义指针解引用指针的应用函数调用函数输入一个直角三角形的斜边和其中一个锐角角度,求另两个直角边(输入的角度为数字,需要变成度数,要/180*派)#include <stdio.h>#include <math.h>int main(){ int c,alpha; scanf("%d%d",&c,&alpha); float a = c*sin(alpha/原创 2021-03-09 17:27:58 · 405 阅读 · 0 评论 -
C语言入门:控制语句,虽然基础,但很常用
文章目录1. 条件判断语句if-else 语句if-else if-else 语句switch-case 语句三元运算符 ?:2. 循环语句while 语句do-while 语句for 循环语句退出循环:break语句 和 continue语句3. 综合练习1. 条件判断语句if-else 语句if(条件){ 条件为真执行;}else{ 条件为假执行;}判断年份是否是闰年:#include <原创 2021-03-09 14:14:15 · 484 阅读 · 0 评论 -
C语言入门:在Linux环境下的简单操作,输入、输出和计算都在里面
文章目录在Linux环境下显示helloworld1.基本数据类型2. 运算符算数运算符关系运算符逻辑运算符2. 变量3. 输入在Linux环境下显示helloworldhelloworld.c(源文件)gcc helloworld.c默认生成编译文件名为a.out(可执行文件)gcc helloworld.c -o hello编译helloworld生成名为hello的文件#include <stdio.h>是一个文件 ,main()是一个注释:// 单行注释/*多原创 2021-03-06 21:21:40 · 451 阅读 · 0 评论