C语言基础
文章平均质量分 85
LCCprogrammer
世界上只有10种人,懂二进制的和不懂的。
展开
-
C语言基础 -- 结构体变量及其成员内存分配
对于不了解结构体的同学,首先需要搞清楚两个概念:一是结构体类型、二是结构体变量。结构体类型类似与我们知道数据类型(例如:int)是用来声明变量的,它同时规定了该类型的变量所应占用的内存的大小。结构体变量是一个实实在在的变量,它在内存中有地址,并且占用了由声明它时用到的结构体类型所规定的内存大小。请对比下面两个例子:int N;return 0;例1中,int是数据类型,int规定了用它声明的变量的内存大小,即sizeof(int)。N是变量,它有地址,即&N;原创 2023-12-01 10:12:29 · 1700 阅读 · 0 评论 -
C语言基础 -- scanf函数的返回值及其应用
当时老师一定会告诉你,这个一个"warning"的报警,可以不用管它,也确实如此。不过,这条报警信息我们至少可以知道一点,就是scanf函数调用完之后是有一个返回值的,下面我们就要对scanf返回值进行详细的讨论。并给出在编程时利用scanf的返回值可以实现的一些功能。原创 2023-11-14 11:18:55 · 1192 阅读 · 0 评论 -
排序算法(一) -- 选择排序和冒泡排序
选择排序和冒泡排序是我们初学C语言必学的两种简单的排序算法,也是我们以后学习数据结构与算法课程中更复杂的排序算法的基础。本文用由浅入深的逻辑条理,试图将这两种排序算法讲解清楚。原创 2023-11-01 00:35:24 · 824 阅读 · 0 评论 -
C语言基础 -- scanf函数的工作原理
在C语言中,输入主要是靠标准输入函数,也就是scanf函数来完成的。要正确的调用scanf函数来完成输入,需要了解scanf的工作原理。为了讲清楚原理,我先铺垫一下,介绍几个概念。(1)输入流:就是输入缓存区中从输入设备中输入的一系列字符。在我们个人电脑上,输入设备就是键盘,你从键盘上敲的一堆东西就是输入流。在PTA等刷题网站,实际上使用文件模拟了输入流,题目中的输入样例,还有测试点中的输入也是输入流。(2)匹配字符串:匹配字符串就是scanf函数调用时传入的第一个参数。也就是双引号里的那些字符。原创 2023-10-31 00:23:11 · 1494 阅读 · 5 评论 -
C语言基础 -- 指针(中),指针运算及其妙用
上一个节,我们讲解了指针的基本概念,用一句话总结起来就是:指针是用来存储另一个变量地址的变量。这一节,我们我们就介绍一下与指针相关的运算。在上表中,我们对比以前学习过的知识。int型的变量,存储的值是整数,与int型变量的相关运算包括但不限于 +、-、*、/、%,这些运算其实就是整数所能参与的运算;float型变量,存储的额值是浮点数(单精度),与float相关的运算包括但不限于 +、-、*、/(注意模运算%不是),这些运算其实就是浮点数所能参与的运算。原创 2023-10-22 01:22:14 · 213 阅读 · 0 评论 -
PTA 编程题(C语言)-- 兔子繁殖问题
首先,这是一道经典的用迭代算法来解决的问题。其次,道题目的作者是在C语言教学界有着很高声望的翁恺老师,很多同学对这道题目理解的不是很准确。下面我跟据我个人的理解和答案的佐证,对题目作以下解释。(1)“而小兔子一个月后又可以生一对小兔子(比如:2月份出生的小兔子4月份可以生育)”,这句话中第一次出现的“小兔子”一词,应该是指当月出生的这一对小兔子;“一个月后”的含义,根据后面括号内的解释,应该是指当月的下下个月,也就是隔一个月后的意思;原创 2023-10-20 23:41:16 · 1764 阅读 · 0 评论 -
C语言基础 -- 指针(上),基本概念这样讲会更清楚。
零、前言指针,是C语言中很重要的一个概念,也是C语言与其他高级语言的的一个重要区别。指针,像一把双刃剑,运用得当,可以灵活的操作内存;运用不当,也容易让我们写的程序在运行时崩溃掉。很多初学C语言的同学来都觉得指针很难理解,运用起来更难。根据这些年C语言的教学经验,我认为,所谓的“指针难学”,并不是同学们的原因,更不是“指针”本身的问题,而是因为部分大学老师并没有很用心的把这个知识点讲清楚,甚至有些人自己对“指针”的理解和表述都不准确,经常把指针和地址混为一谈。原创 2023-10-19 01:42:50 · 317 阅读 · 0 评论