《C系列》C语言详细入门教程

C语言详细入门教程

	C语言是当今使用最广泛的高级语言,是操作系统,编译系统等大型复杂操作系统的首选语言。
实践证明,用该语言编写的程序,灵活、方便、简洁、高校、数据结构丰富、功能齐全。C语言自问
世以来,很快就流行于全世界,并为各种规模的通用计算机所必备。
	同时,C语言以其灵活方便的特点,成为培养计算机语言思维,了解计算机编程思想的最佳语言,
它已被当今国内外众多主要高校列为各理工科专业必修课程。

第一章 C语言程序设计概述

1.1 程序与程序设计

  • 什么是语言?
    自然语言:
    人与人之间交流的工具,通过自然语言实现人与人之间的沟通,使别人能够明白的按照语言的表达来办事、工作。如:汉语、英语、德语、法语、日语等…
    计算机语言:
    计算机语言又称为程序设计语言,人与计算机之间交流的工具,通过计算机语言实现人与计算机之间的沟通,使计算机能够明白的按照语言的表达来办事、工作。如:C语言、Java、汇编语言、机器语言等
  • 什么是程序?
    程序就说按照计算机语言的语法规则、语句格式,编制成一段能让计算机理解并按照执行的语句的集合。通俗的讲,程序就说一个用计算机语言描述的,可以由计算机执行的某一问题的解决步骤。
  • 程序设计?
    编写程序的过程成为程序设计。不同语言编写的程序,成为某一语言的程序。例如:用C语言编写的程序就称为C语言程序。程序设计语言发展主要分为以下几个阶段:
  • 机器语言
    计算机可以直接识别的二进制语言,如:
    加法指令:1000 0000
    减法指令:1001 0000
  • 汇编语言
    用“助记符”来表示机器指令,如:
    ADD A,B
    SUB A,B
  • 算法语言
    即高级语言,不依赖于机器,降低了编程的难度。如:C、PASCAL、FORTRAN等,用’+‘和’-‘来表示加减运算。
  • 面向任务的程序设计语言
    非过程化的语言,不需要知道问题是如何求解的。如:要从某学生表SS用数据库(SQL)查询语言获取表中的记录的信息,采用SELECT语句,描述如下:
    SELECT SSNO,SSNAME,SSAGE,SSSEX, FROM SS。
  • 面向对象的程序设计语言
    认为系统是许多对象组成的,对象通过消息相互联系和相互作用,从而完成系统的功能。如:C++,设计的程序更易懂,更适合大规模的程序开发。

1.2 算法及其描述

  • 什么是算法?
    1.一个算法必须保证执行有限步后结束;
    2.算法的每一个步骤必须具有确切的定义;
    3.应对算法给出初始量;
    4.算法具有一个或多个输出;
    5.算法的每一步都必须是计算机能进行的有效操作

正确的语法+正确的算法=正确的程序

1.3 C语言的发展及特点

  • C语言的发展概况

    起源于1968年发表的CPL语言,目前在微型计算机上使用的有Microsoft C,Quick C,Turbo C 2.0等多种版本。

  • C语言的特点
    1.31 具有结构化语言的特点
    1.32 可移植性好,能对硬件操作
    1.33 数据类型丰富
    1.34 程序设计自由度大
    1.35 目标代码生成质量高,执行速度快

1.4 C语言程序的基本结构

简单的C语言程序示例:[^1]
例1:从键盘输入三个任意值的整数a,b,c,按公式s=a+b*c计算s的值,并显示结果。

#include<stdio.h>
main()
{
int a,b,c,s;
scanf("%d,%d,%d",&a,&b,&c);
s=a+b*c;
printf("s=%d\n",s);
}

一个完整的C语言程序由若干个函数组成,至少且仅有一个main函数,每个函数包括:
1.41 函数说明部分和函数体(变量定义 和语句部分);
1.42 语句必须以分号(;)结束标志;
1.43 由“/”与“/”之间的内容构成C语言程序的注释部分;
1.44 用预处理命令#include可以包含有关文件的信息;
1.45 在C语言中区分大小写,如Main,MAIN,main,maiN是不相同的。

1.5 C语言字符集、标识符与关键字

C语言字符集
英文字母:大小写各26个,共计52个;
阿拉伯数:0·9共10个数字;
下划线:_
特殊符号:通常由1-2个符号组成的运算符

符称符号
算术运算符+ - * / % ++ –
关系运算符< > >= <= == !=
逻辑运算符&& ! \\
条件运算符? :
赋值运算符=
其他分隔符() [] {} . , ;

标识符:
C语言规定:标识符只能由字母、数字和下划线三种字符,且第一个字符必须为字母或下划线。

合法标识符不合法运算符
_123B , abc_1MR,&z

第二章 C语言的基本数据类型与表达式

重点学习内容:

  • 数据类型
  • 常量定义
  • 运算符与表达式

2.1 C语言的基本数据类型

存储的编码方式有:原码、反码、补码、ASCII码
存储的存储格式有:定点型、浮点型

用于存储数据的存储单元的长度决定了数据取值范围的大小。
存储数据必须先确定数据的编码方式、存储格式和所占的存储长度,C语言中把这三者结合起来,给出几种固定的形式,这些形式就说最基本的 数据类型

2.11 数据类型

基本类型字符型(char)整型(int,short,long,unsigned)
实型(单精度浮点型(float),多精度浮点型(double),枚举型(enum))
构造类型数组([])结构体类型(struct)共用体类型(union)
指针类型*
空类型void
常量:在程序运行中,其数值不能被改变的量。
变量:在程序运行中其值可以改变的量,变量的名字以合法的标识符命名

2.12 整型

1. 整型常量:

十进制:与数学上的整数表示相同
八进制:在数码前加数字0
十六进制:在数码前加0X(数字0和字母X)
八进制的数码范围0~7
十六进制的数码除了数字0~9外,还使用英文字母a–f(或A-F)表示10-15

2. 整型变量:

根据存储长度不同,分为:int、short、long;
同样存储长度数据分为unsigned,signed;

3. 整型变量的值域:

在这里插入图片描述

2.13 实型

1. 实型常量:

十进制小数形式:由数字和小数点组成
指数形式:“十进制小数 ”+“e"+"十进制整数”

2. 实型变量的分类及值域:

在这里插入图片描述

2.14 字符类型

在这里插入图片描述

2.2 常量与变量

2.21 常量与符号常量

在这里插入图片描述

直接常量:是在程序中直接引用的数据
符号常量:是用标识符来表示的一个数据:在程序不能给他赋值

2.22 变量

  • 变量是指以合法的标识符命名的,其值可以改变的量。
  • 变量代表计算机内存中的某一存储空间,该存储空间中存放的数据就说变量的值。
  • 在同一程序快中,变量不能被重复定义。
  • 使用变量使必须“先定义,后使用”
1.定义形式:类型标识符 变量名1 【,变量名2,变量名3…】;
2.变量初始化:在定义变量的同时给变量一个初始值。

2.3 运算符与表达式

运算符:表示某种运算功能的符号。
按操作功能运算符大致分为:算术运算符、关系运算符、逻辑运算符、赋值运算符、条件运算符、逗号运算符以及按位运算符等。
表达式:由操作数和运算符组成的序列

2.31 算术运算符

在这里插入图片描述

2.32 关系运算符与关系表达式

在这里插入图片描述

2.33 逻辑运算符和逻辑表达式在这里插入图片描述

2.34 赋值运算符和赋值表达式

在这里插入图片描述

2.35 其他运算符

在这里插入图片描述在这里插入图片描述
在这里插入图片描述

第三章 基本语句

3.1 C语言的基本语句

  • 简单语句
  • 空语句
  • 复合语句
  • 流程控制语句

3.11 简单语句

1.定义:由表达式组成的语句;
表达式:分号是语言语句结束的标志;
表达式包括:算术表达式、赋值表达式、复合赋值表达式
2. 函数调用语句: C语言有丰富的标准函数库
3.空语句: 空语句用一个分号表示,其一般形式为:;

3.12 复合语句

复合语句是由花括号括起来的多条语句构成,在语句上相当于一个语句。其形式为:
{ 数据操作语句1; 数据操作语句2; }

3.2 数据输入与输出

  • C语言无I/O语句,I/O操作由I/O函数来实现
  • I/O函数使用前,须调用头文件#include<stdio.h>
3.21 字符的输入输出函数

1.字符输出函数:putchar( c );
注意:能且仅能输出一个字符
在这里插入图片描述
2.字符输入函数:getchar( );
注意:能且仅能接受一个字符
在这里插入图片描述

3.22 格式输出函数printf

格式:printf(“格式控制串”,输出项列表);
功能:按指定格式向显示器输出数据
在这里插入图片描述在这里插入图片描述在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.23 格式输入函数scanf

格式:scanf(“格式控制串”,地址表)
功能:按指定格式从键盘输入数据,存入地址表指定的存储单元中,并按回车键结束返回值:正常,返回输入数据个数。
在这里插入图片描述

3.3 程序举例

3.31 输入圆的半径,输出圆的周长和面积

分析:
1.定义实型变量半径r,周长c,面积s;
2.调用键盘输入函数scanf(),输入r
3.由周长c=2ΠR和面积s=2Πrr求l,s
4.调用输出函数行printf()输出l,s

#include<stdio.h>
#define PI 3.14156
main()
{
	float r,c,s;
	printf("r=");
	scanf("%f",&r);
	c=2*PI*r;
	s=PI*r*r;
	printf("c=%.f\n",c);
	printf("s=%.4f\n",s);
}

第4章 选择结构程序设计

  • 掌握选择结构程序设计
  • 掌握嵌套程序设计
  • 学会运用If语句及switch语句
 C语言中的选择语句有三种:
 单分支选择语句:if
 多分支选择语句:if-else
 多分支选择语句:switch

4.1 if语句

4.11 单分支选择语句 if

if(条件表达式) 语句;

if(条件表达式) { 复合语句 };

说明:1.条件表达式的值为非0或0,必须用()括住
2,若有多条语句(复合语句)时,用{ }括住。
3.(条件表达式)后不能加分号;
例:输入任意两个数X,Y,将这两个数按由小到打的顺序输出。
在这里插入图片描述

4.12 双分支选择语句 if-else

if(表达式) 语句1;
else 语句2;

执行语句:
首先判断表达式的值
若为非0则执行语句1
若为0则执行语句2
if语句的双分支形式,在语法上视为一条语句

例:输入两个数,比较其大小,将较大的数输出
在这里插入图片描述

4.13 多分支结构

  • 用简单的If语句完成的多分支结构
  • 用if-else语句完成的多分支结构
  • if · else配对原则
  • if · else语句的嵌套结构
    例:写一个程序完成下列功能:
    输入一个分数score
    当score<60输出E
    当60<=score<70输出D
    当70<=score<80输出C
    当80<=score<90输出B
    当90<=score 输出A

    在这里插入图片描述

4.2 switch 语句

    if语句是根据表达式的值是否为0来判断执行哪一分支的。
在某些情况下,要根据表达式的不同值来判断执行不同的操作。
C语言提供那个了分支控制语句switch,可以根据表达式的多种值,
选择多个分支,因此也成为开关语句。

在这里插入图片描述
例:根据输入的学生的成绩判断等级。当成绩score>=90时为A等;成绩70<=score<90为B等;成绩60<=score<70为C等;成绩score<60为D等;
在这里插入图片描述

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DATA数据猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值