C
文章平均质量分 77
比较喜欢丶笑
运筹帷幄之中,决胜千里之外!
展开
-
C语言入门(一)初识C
一、C语言的产生与发展C语言是1972年由美国的Dennis Ritchie设计发明的,并首次在UNIX操作系统的 DEC PDP-11 计算机上使用。它由早期的编程语言BCPL (Basic Combind Programming Language)发展演变而来。在1970年,AT&T贝尔实验室的Ken hompson根据BCPL语言设计出较先进的并取名为B的语言,最后导致了C语言的问世。原创 2016-07-11 14:53:13 · 2563 阅读 · 1 评论 -
C语言入门(十五)函数递归
函数递归 一、栈在说函数递归的时候,顺便说一下栈的概念。栈是一个后进先出的压入(push)和弹出(pop)式数据结构。在程序运行时,系统每次向栈中压入一个对象,然后栈指针向下移动一个位置。当系统从栈中弹出一个对象时,最近进栈的对象将被弹出。然后栈指针向上移动一个位置。程序员经常利用栈这种数据结构来处理那些最适合用后进先出逻辑来描述的编程问题。这里讨论的程序中的栈在每个程序中都是存在原创 2016-07-12 14:05:17 · 6968 阅读 · 0 评论 -
C语言入门(十六)预处理过程
预处理过程 前言:预处理过程扫描源代码,对其进行初步的转换,产生新的源代码提供给编译器。可见预处理过程先于编译器对源代码进行处理。在C语言中,并没有任何内在的机制来完成如下一些功能:在编译时包含其他源文件、定义宏、根据条件决定编译时是否包含某些代码。要完成这些工作,就需要使用预处理程序。尽管在目前绝大多数编译器都包含了预处理程序,但通常认为它们是独立于编译器的。预处理过程读入源代码原创 2016-07-12 14:16:56 · 7793 阅读 · 0 评论 -
C语言入门(十七)指针概念
指针概念 前言:学习Turbo C语言,如果你不能用指针编写有效、正确和灵活的程序,可以认为你没有学好C语言。指针、地址、数组及其相互关系是C语言中最有特色的部分。规范地使用指针,可以使程序达到简单明了,因此,我们不但要学会如何正确地使用指针,而且要学会在各种情况下正确地使用指针变量。一、指针基本概念及其指针变量的定义我们知道变量在计算机内是占有一块存贮区域的,变量的值就存原创 2016-07-12 14:37:25 · 6926 阅读 · 0 评论 -
C语言入门(十八)数组和指针
数组和指针 前言:指针和数组有着密切的关系,任何能由数组下标完成的操作也都可用指针来实现,但程序中使用指针可使代码更紧凑、更灵活。一、指向数组元素的指针我们定义一个整型数组和一个指向整型的指针变量:int a[10], *p; 和前面介绍过的方法相同,可以使整型指针p指向数组中任何一个元素,假定给出赋值运算p=&a[0]; 此时,p指向数组中的第0号元素,即a[0]原创 2016-07-12 14:41:54 · 7164 阅读 · 0 评论 -
C语言入门(十九)指针函数和函数指针
指针函数和函数指针 一、指针函数当一个函数声明其返回值为一个指针时,实际上就是返回一个地址给调用函数,以用于需要指针或地址的表达式中。格式:类型说明符 * 函数名(参数)当然了,由于返回的是一个地址,所以类型说明符一般都是int。例如:int *GetDate();int * aaa(int,int);函数返回的是一个地址值,经常使用在返回数组的某一元素地址上。原创 2016-07-12 14:47:50 · 6897 阅读 · 0 评论 -
C语言入门(二十)结构体
结构体 前言:结构是由基本数据类型构成的、并用一个标识符来命名的各种变量的组合。结构中可以使用不同的数据类型。一、结构说明和结构变量定义在Turbo C中,结构也是一种数据类型,可以使用结构变量,因此,象其它类型的变量一样, 在使用结构变量时要先对其定义。定义结构变量的一般格式为: struct 结构名{ 类型 变量名;类型 变量名;...} 结原创 2016-07-12 17:03:38 · 8517 阅读 · 0 评论 -
C语言入门(二十一)联合和枚举
联合和枚举 联合(union):一、联合说明和联合变量定义 联合也是一种新的数据类型, 它是一种特殊形式的变量。联合说明和联合变量定义与结构十分相似。其形式为:union 联合名{ 数据类型 成员名; 数据类型 成员名; ... }联合变量名; 联合表示几个变量公用一个内存位置,在不同的时间保存不同的数据类型和不同长度的变量。 下例表示说明一个联原创 2016-07-12 17:09:12 · 7120 阅读 · 0 评论 -
C语言入门(二十二)堆和链表
堆和链表 我们经常在题目中有要求,输入一个整数,然后以这个整数作为数组的元素个数,下面的程序代码是错误的。int n,array[n];scanf(%d,&n);在Turbo C中,不允许出现动态数组。那么如果必须需要这样时,就只能使用链表了。一、堆堆是一种动态存储结构,实际上就是数据段中的自由存储区,它是C语言中使用的一种名称,常常用于动态数据的存储分配。堆中原创 2016-07-12 17:14:31 · 7782 阅读 · 0 评论 -
C语言入门(二十三)位操作
位操作 前言:在第一节概述里就说了,C语言是一种中级语言,能对计算机硬件直接操作,这就涉及到位的概念。一、位的概念我们知道,在计算机中,一字节占8位(现在的某些电脑也有占16位的),这样表示的数的范围为0-255,也即00000000-11111111。位就是里面的0和1。char c=100;实际上c应该是01100100,正好是64H。其中高位在前,低位在后原创 2016-07-12 17:18:28 · 1921 阅读 · 0 评论 -
C语言入门(二十四)文件操作基本常识
文件操作基本常识 前言:由于程序中经常有大量对文件的输入输出操作,它经常构成了程序的主要部分,因而C语言提供了很多输入输出的函数,它们分别用于两种类型文件输入输出系统:即由ANSI标准定义的缓冲文件(也称标准文件(流)输入输出(I/O)系统);另一类是ANSI标准中没有定义的非缓冲文件(也称非标准文件(流)输入输出(I/O)系统)。我们已经熟悉了通过键盘和显示器进行输入输出的一些函原创 2016-07-12 17:25:11 · 7347 阅读 · 0 评论 -
C语言入门(十四)变量的作用域和存储类型
变量的作用域和存储类型一、作用域和生存期C程序的标识符作用域有三种:局部、全局、文件。标识符的作用域决定了程序中的哪些语句可以使用它,换句话说,就是标识符在程序其他部分的可见性。通常,标识符的作用域都是通过它在程序中的位置隐式说明的。1.局部作用域前面各个例子中的变量都是局部作用域,他们都是声明在函数内部,无法被其他函数的代码所访问。函数的形式参数的作用域也是局部的,它们的作用原创 2016-07-12 13:59:44 · 6954 阅读 · 1 评论 -
C语言入门(十三)函数参数的传递和值返回
函数参数的传递和值返回 前言:前面我们说的都是无参数无返回值的函数,实际程序中,我们经常使用到带参数有返回值的函数。一、函数参数传递1.形式参数和实际参数函数的调用值把一些表达式作为参数传递给函数。函数定义中的参数是形式参数,函数的调用者提供给函数的参数叫实际参数。在函数调用之前,实际参数的值将被拷贝到这些形式参数中。2.参数传递先看一个例子:void原创 2016-07-12 13:47:44 · 3131 阅读 · 2 评论 -
C语言入门(十二)函数的定义和调用
函数的定义和调用 前言:本节介绍C程序的基本单元--函数。函数中包含了程序的可执行代码。每个C程序的入口和出口都位于函数main()之中。main()函数可以调用其他函数,这些函数执行完毕后程序的控制又返回到main()函数中,main()函数不能被别的函数所调用。通常我们把这些被调用的函数称为下层(lower-level)函数。函数调用发生时,立即执行被调用的函数,而调用者则进入原创 2016-07-12 11:13:29 · 8856 阅读 · 0 评论 -
C语言入门(二)主菜单操作
(一)、主菜单 在Turbo C 2.0主屏幕顶上一行, 显示下列内容: File Edit Run Compile Project Options Debug Break/watch 除Edit外, 其它各项均有子菜单, 只要用Alt加上某项中第一个字母(即大写字母), 就可进入该项的子菜单中。1、File(文件)菜单 按Alt+F可进入File菜单, 该菜单包括以下内容:原创 2016-07-11 15:20:38 · 13718 阅读 · 0 评论 -
C语言入门(三)菜单设置
本菜单设置有关连接的选择项,它有以下内容: Map file menu 选择是否产生.MAP文件。Initialize segments 是否在连接时初始化没有初始化的段。Devault libraries 是否在连接其它编译程序产生的目标文件时去寻找其缺省库。Graphics library 是否连接graphics库中的函数。Warn duplicate symbols原创 2016-07-11 15:22:21 · 10731 阅读 · 1 评论 -
C语言入门(四)变量和常量
变量和常量 前言:编译环境设置好以后,就可以正式学习C语言了。一、变量(一)、变量类型和表示方法1.什么是变量?一句话,变量是存储数据的值的空间。由于数值的类型有多种,有整数、小数(浮点数)、字符等等,那么对应的变量就有整型变量、浮点型变量、字符型变量。变量还有其他的具体分类。整型变量还可具体分为无符号型、长整型和短整型。浮点型也可分为单精度型、双精度型和长双精度型。此外还原创 2016-07-11 15:25:26 · 7294 阅读 · 0 评论 -
C语言入门(五) 运算符
运算符前言:无论是加减乘除还是大于小于,都需要用到运算符,在C语言中的运算符和我们平时用的基本上都差不多。运算符包括赋值运算符、算术运算符、逻辑运算符、位逻辑运算符、位移运算符、关系运算符、自增自减运算符。大多数运算符都是二目运算符,即运算符位于两个表达式之间。单目运算符的意思是运算符作用于单个表达式。(具体什么是表达式下一节再说)一、赋值运算符赋值语句的作用是原创 2016-07-11 15:29:00 · 7113 阅读 · 2 评论 -
C语言入门(六)表达式和语句
表达式和语句 一、表达式前面已经提到过表达式,相信大家对表达式也有了一个初步的认识,它是由常量、变量、运算符组合(到以后讲函数时,函数也可以是组成表达式的元素),计算以后返回一个结果值。表达式的结束标志是分号(;),C语言中所有的语句和声明都是用分号结束,在分号出现之前,语句是不完整的。例如:1+2;Counter/3+5;Height*Width;表达原创 2016-07-11 15:31:52 · 8427 阅读 · 0 评论 -
C语言入门(七)编写第一个C语言程序
编写第一个C语言程序 前面几节介绍了常量和变量、运算符、表达式和语句的概念,对它们的使用有了一个大概的了解。也许刚学程序的人会觉得有些枯燥,下面我们就来编写第一个C语言程序。#define PI 3.1416main(){float Radius,Area; scanf(%f,&Radius); /*输入半径的值*/Area=PI*Radius*Radius; prin原创 2016-07-12 09:43:38 · 8701 阅读 · 0 评论 -
C语言入门(八)条件语句
条件语句 前言一个表达式的返回值都可以用来判断真假,除非没有任何返回值的void型和返回无法判断真假的结构。当表达式的值不等于0时,它就是“真”,否则就是假。一样个表达式可以包含其他表达式和运算符,并且基于整个表达式的运算结果可以得到一个真/假的条件值。因此,当一个表达式在程序中被用于检验其真/假的值时,就称为一个条件。一、if语句if(表达式) 语句1;如果表达式的值原创 2016-07-12 09:56:08 · 14227 阅读 · 0 评论 -
C语言入门(九)循环语句和循环控制
循环语句和循环控制 前言:Turbo C 2.0提供三种基本的循环语句: for语句、while语句和do-while语句。一、循环语句(一)、for循环 它的一般形式为:for(;;)语句;初始化总是一个赋值语句,它用来给循环控制变量赋初值;条件表达式是一个关系表达式,它决定什么时候退出循环;增量定义循环控制变量每循环一次后按什么方式变化。这三个部分之间用;分原创 2016-07-12 10:07:42 · 8159 阅读 · 2 评论 -
C语言入门(十)数组
数组 前言:数组,顾名思义就是一组同类型的数。一、数组的声明声明数组的语法为在数组名后加上用方括号括起来的维数说明。本接仅介绍一维数组。下面是一个整型数组的例子:int array[10];这条语句定义了一个具有10个整型元素的名为array的数组。这些整数在内存中是连续存储的。数组的大小等于每个元素的大小乘上数组元素的个数。方括号中的维数表达式可以包含运算符,但其原创 2016-07-12 10:54:57 · 7181 阅读 · 2 评论 -
C语言入门(十一)多维数组
多维数组一、高维数组有时,数组的维数并不止一维,例如一个记录消费中心在第一季度里各个月的收入数据就可以用二维数组来表示。定义二维数组的方法是在一维数组定义的后面再加上一个用方括号括起来的维数说明。例如:float array[3][8];实际上,这个数组可以看成3个连续的一维数组,每个一维数组具有8个元素。该数组在内存中的存储格式为最左边的维数相同的元素连续存储,也即按行存储的原创 2016-07-12 11:05:31 · 6841 阅读 · 2 评论 -
C语言入门(二十五)文件操作
文件操作 一、标准文件的读写1.文件的打开fopen()文件的打开操作表示将给用户指定的文件在内存分配一个FILE结构区,并将该结构的指针返回给用户程序,以后用户程序就可用此FILE指针来实现对指定文件的存取操作了。当使用打开函数时,必须给出文件名、文件操作方式(读、写或读写),如果该文件名不存在,就意味着建立(只对写文件而言,对读文件则出错),并将文件指针指向文件开头。若已有一个原创 2016-07-12 17:36:47 · 9173 阅读 · 2 评论