C语言基础
C语言的基础语法讲解和简单应用
_为光
我生有涯愿无尽
展开
-
C语言基础——专栏索引篇
前言C语言是编程初学者最需要掌握的一个语言,对C语言了解地足够透彻,对于对其他语言的理解就会更加轻松。而且正是由于其没有那么大的便捷性,对我们编程的能力会有更多的提升。这篇集合是我对C语言基础语法的一个讲解集合,我会尽可能写的详细和透彻深入,帮助大家更轻松地掌握C语言。我会努力提高更新文章的速度,使得这个体系变得更加完善。目录第一课:一个有趣的运算符-------------------...原创 2020-02-16 19:32:21 · 1000 阅读 · 0 评论 -
【C语言基础】->递归调用->八皇后问题
递归调用在编程中是个十分重要的部分,掌握起来也有一定的难度。本篇将用经典例题----八皇后问题,来整理递归调用的思路。首先明确,八皇后问题是什么?八皇后问题,是一个古老而著名的问题,是回溯算法的典型案例。该问题是国际西洋棋棋手马克斯·贝瑟尔于1848年提出:在8×8格的国际象棋上摆放八个皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,问有多少种摆法。高斯认为有7...原创 2019-11-30 12:58:20 · 857 阅读 · 0 评论 -
【C语言基础】->自幂数优化->这个算法快得像一道闪电
自幂数Ⅰ 自幂数的定义Ⅱ 需求分析Ⅲ 算法优化a. 得到当前数字的位数b. 判断自幂数Ⅳ 完整代码Ⅰ 自幂数的定义自幂数是指一个 n 位数,它的每个位上的数字的 n 次幂之和等于它本身。(例如:当n为3时,有1^3 + 5^3 + 3^3 = 153,153即是n为3时的一个自幂数)自幂数包括:独身数、水仙花数、四叶玫瑰数、五角星数、六合数、北斗七星数、八仙数、九九重阳数、十全十美数...原创 2020-02-15 16:55:18 · 1684 阅读 · 2 评论 -
【C语言基础】->指针与二维数组->同一个人的换装游戏
数组与指针Ⅰ 指针与一维数组Ⅱ 指针与二维数组Ⅰ 指针与一维数组在了解指针与二维数组之前,我们需要清楚指针与一维数组的联系。简单来说,一维数组名称的本质为指针常量。我通过动态存储类来分析验证这句话。 int *p; double *q; p = (int *) calloc(sizeof(int), 100); q = (double *) calloc(sizeof(doubl...原创 2020-02-15 15:23:53 · 500 阅读 · 0 评论 -
【C语言基础】->内存对齐模式->为什么我的结构体大小我猜不透
内存对齐模式前言前言原创 2020-02-14 16:34:06 · 510 阅读 · 0 评论 -
【C语言基础】->文件操作详解->一篇文章读懂关于文件的庞杂函数使用
文件操作Ⅰ 文件和文件控制块a.文件的定义b.文件控制块(FCB)Ⅱ 文件操作Ⅰ 文件和文件控制块a.文件的定义文件是计算机表达信息的最小逻辑单位,是信息二进制化在外存中的集合。b.文件控制块(FCB)为了能对一个文件进行正确的存取,必须为文件设置用于描述和控制文件的数据结构,称之为“文件控制块(FCB)。操作系统的FCB,在不同系统的程序设计语言中,对应的名字不同,但是本质的数据类型...原创 2020-02-12 19:15:07 · 1115 阅读 · 0 评论 -
【C语言基础】->哥德巴赫猜想验证->筛选法->算法极限优化之你不可能比我快
哥德巴赫猜想验证Ⅰ 哥德巴赫猜想ⅡⅠ 哥德巴赫猜想哥德巴赫1742年给欧拉的信中哥德巴赫提出了以下猜想:任一大于2的偶数都可写成两个质数之和。但是哥德巴赫自己无法证明它,于是就写信请教赫赫有名的大数学家欧拉帮忙证明,但是一直到死,欧拉也无法证明。因现今数学界已经不使用“1也是素数”这个约定,原初猜想的现代陈述为:任一大于5的整数都可写成三个质数之和。欧拉在回信中也提出另一等价版本,即任一大于...原创 2020-02-09 16:30:24 · 1764 阅读 · 0 评论 -
【C语言基础】->位运算详细解析->位运算的使用
位运算Ⅰ 位运算的定义Ⅱ 位运算的符号Ⅲ 位运算的验证及分析a.按位取反 ~b.按位与 &c.按位或 |d.按位异或 ^e.左移 <<f.右移 >>Ⅳ 位运算的技巧a.与运算b.或运算c.异或运算d.左移右移Ⅴ 位运算的重要应用a.置位b.清位c.取位Ⅰ 位运算的定义我们知道程序中的所有数据,都是以二进制的方式存储在计算机中的。位运算就是基于二进制的位进...原创 2020-02-08 18:24:09 · 1723 阅读 · 4 评论 -
【C语言基础】->关于逗号表达式
之前有个同学问了我一个代码,#include <stdio.h>int main() { int a = 3; int b = 6; printf("%d\n", (a,b)); return 0;}这个代码的运行结果如下:可以看到,输出的结果是6,也就是b的值,所以是为什么呢,只有一个%d但是却先输出了右边的值,我们去掉括号做一个对比。#include...原创 2020-02-01 10:41:52 · 1199 阅读 · 2 评论 -
【C语言基础-」TurboC环境】-」bioskey函数详细分析
bioskey()函数是TurboC的内置函数,只能再TC中使用,是一个接口函数。函数声明: int bioskey (int cmd);函数头文件: bios.h函数功能:为方便验证,我写了一个简单的函数,来判断bioskey()函数的返回值。????#include <stdio.h>#include <stdlib.h>#include <bios.h&...原创 2020-01-16 15:48:14 · 1055 阅读 · 2 评论