• 一、认识C语言

1.计算机语言种类多,可以分为机器语言、汇编语言和高级语言三大类。

机器语言:由0、1组成的机器指令集合,是第一代计算机语言。二进制是计算机语言基础。缺点:难记、难写、易出错,且不同机型互不兼容。

汇编语言:在机器语言基础上加上改进。汇编语言十分依赖机器硬件,移植性不好,但效率高。

高级语言:这种语言接近数学语言或人的自然语言,同又不依赖计算机硬件,编出程序在机器上通用。1945年FORTRAN问世。这么多年出现很多种,高级语言下一个发展目标是面向应用。高级语言必须转换才能被执行,转换方式分为两类:解释类和编译累。


2.C语言诞生之前,系统软件主要用汇编语言编写的。

1970年美国贝尔实验室的Ken Thompson设计简单且很接近硬件的B语言,并用B语言写第一个UNIX操作系统。

1983年美国国家标准化协会(ANSI)根据C语言问世及C语言发展和扩充,制订新标准称ANSI C

1990年国际标准化组织(ISO)接受了87ANSI C为ISO C的标准。

目前流行C语言编译器有Microsoft C/C++,Borland C/C++,Visual C++6.0、Win–TC,Turbo C/C++for Windows集成实验于学习环境等。


C语言特点

1.简洁、紧凑,C语言共32个关键字,9种控制语句。

2.运算符丰富,C语言共有44种运算符。把括号、赋值、强制类型转换等都作为运算符处理。

3.具有丰富的数据类型。

4.C语言是一种结构化的程序设计语言。

5.语法限制不严格,程序设计灵活。

6.能进行位操作,可以直接对部分硬件进行操作。

7.可移植性好。

8.C语言编译后生成的目标代码质量高,程序的执行效率高。


3.C语言结构特点

一、C程序由函数构成的。一个C源程序至少包含一个main函数,也可以包含一个main函数和若干其他函数。

二、C是函数式的语言,函数是C程序的基本单位。

三、main函数(主函数)是每个程序执行的起始点。一个C程序总是从main函数开始执行,并在main函数中结束,main函数书写位置是任意的。

四、一个函数由函数说明和函数体两部分组成。注:变量声明部分必须书写在执行部分之前。

函数的说明部分包括函数类型、函数名和形参表

函数体中包括变量声明部分和可执行部分。

五、C程序每个语句都以分号;为结束语句符。

六、C程序书写格式自由,一行可以写几个语句,一个语句可以写在多行上。

七、可以用/*……*/对程序任何部分做注释,增加可读性。注释不分仅用于阅读,对程序不起任何作用。注释可用西文也可用中文。注释不允许嵌套

八、C语言本身不提供输入输出语句,输入输出操作是通过调用库函数scanf和printf等。

九、书写规则,用花括号({})标明程序层次结构。采用逐层缩进格式,使程序清晰易读。标识符、关键字之间加空格间隔,使用注释信息增加可读性。

4.C程序开发过程,从编写一个C程序到完成运行到结果一般需要四个步骤。

1.编辑,最后以文本形式保存,文件扩展名为“.c”

2.编译,将已编辑好的源程序翻译成二进制目标代码。扩展名为“.obj”

3.连接,将二进制目标代码与系统标准模板连接处理后,得到可执行文件,扩展名“.exe”

4.运行,直接运行可执行文件得到运行结果。




  • 二、C语言数据描述与计算

1.变量与常量

一、标识符

一、关键字  不能作其他用途只能小写

二、预定义标识符

三、用户标识符(自定义标识符)一般用来给常量、变量、函数、数组、类型、文件等命名

规则有

(1)只能由字母、数字和下划线组成,且第一个字符必须是字母或下划线。

(2)有大小写之分。在C程序中变量名使用小写,常量名用大写,但不绝对。

(3)ANSI C没有限制标识符长度,但各个编译系统都有自己的规定和限制。

(4)标识符不能与关键字同名,最好也不与预定义标识符同名

(5)标识符命名应当有一定的意义,以增加程序的可读性

二、1.常量  其值不能改变的量为常量

常量类型有整型常量、实型常量字符串常量等

整型还可区分短整型常量、长整型常量

整型常量和实型常量又称为数值型常量,有正负之分,基本整型常量用数字表示,不带小数点。实型常量必须用带小数点的数表示。

2.符号常量  在C程序中可以用符号名代表一个常量。为了区分通常用大写字母。

3.变量  在程序的运行过程中,其值可以改变的量

注意:(1)变量名必须符合标识符命名规则,一个标量实质代表内存中的某个储存单元

(2)C语言中变量必须先定义,后使用

一、只有声明过的变量才可以在程序中使用

二、声明的变量属于确定的类型

三、在编译时根据变量类型可以变量分配相应的存储空间

(3)像常量一样,变量也有整型变量、实型变量、字符型变量等不同类型

2.基本数据类型

一、整型

1.数据分类

在C语言中整型有短整型(short int)、基本整型(int)、长整型(long int)、无符号型(unsigned)。

2.整型的常量

值为整数的常量为整型常量,包括正整数、负整数和0。

C语言中有三种表达形式

(1)十进制:例,123,–456,0

(2)八进制:以0开头,后面跟几位数字。(数字由0~7组成)。

(3)十六进制:以0x或0X开头,后面跟几位数字(数字由0~9、A~F组成)

整型常量后可以用u或U明确说明数据为无符号整数,用1或L明确说明为长整型数。

二、实型

1.实型数据分类

实型数据有单精度(float)、双精度(double)和长双精度(long double)三类。

2.实型常量

实型常量又称为实数或浮点数。在C语言中实型常量只能用十进制表示。

(1)十进制小数形式。由数字和小数点组成(必须要有小数点)

(2)指数形式(科学表示法)

注:实型常量注意以下几点

(1)字母e或E之前必须有数字,e后面的指数必须为整数。

(2)规范化指数形式。这种形式要求在字母e或E之前的小数部分,小数点左边应当有且只有一位非0数字。

(3)许多C编译系统将实型常量作为双精度实数处理。在实数后面加字符f或F。

三、字符型数据

1.字符常量

用单引号括起来的单个字符位字符常量。

不合法的:"a",'abc'

字符常量在内存中占1个字节,存放的是字符的ASCII码值,在ASCII中小写字母比对应大写字母大32。

2.转义字符常量

转义字符是以“\”开头的具有特殊含义的字符,这些字符常量也必须括在一对单引号内。

使用转义字符需要注意以下几点。

(1)转义字符常量,如‘\n'、\101'、\141'只代表一个字符。

(2)反斜线后的八进制数可以不用0开头,如‘\101'代表的就是字符常量'A'。

(3)反斜线后的十六进制数只能由小写字母x开头,不允许用大写字母X,也不能用(开头,如‘\x41'代表字符常量'A'。

3.字符串常量

字符串常量是由双引号括起来的一串字符,C语言规定:在每个字符串的结尾加一个字符串结束标志,以便系统据此判断字符串是否结束。C语言规定以“\0'(ASCII码为0的字符)作为字符串结束标志。

注意字符常量与字符串常量的区别。

注意:字符串只能是常量,C语言中没有字符串变量。

4.可对字符量进行的运算

字符数据以ASCII码存储的形式与整数的存储形式类似,这使得字符型数据和整型数据之间可以通用(当作整型量)。字符量还可以进行关系运算。

5.字符型变量

字符型变量用来存放字符数据,同时只能存放一个字符。在C语言中,字符型变量用关键字char进行定义,在定义的同时也可以初始化。

所有编译系统都规定以1字节来存放一个字符,或者说,一个字符型变量在内存中1字节。

具体表现为如下几点。

(1)可以将整型数据赋值给字符型变量,也可以将字符数据赋值给整型变量。

(2)可以对字符数据进行算术运算,相当于对它们的ASCII码进行算术运算。

(3)空篇数据既可以字符形式输出,也可以整数形式输出。

四、运算符和表达式

1.算数运算符和算术表达式

算数运算符包括+、–、*、/、%和正负号。

2.算数表达式

算数表达式是指用算数运算符和括号将运算对象连接起来,符合c语言规则的表达式。

3.运算符的优先级与结合性

C语言规定了进行表达式求值过程中各运算符的优先级和结合性

(1)运算符的优先级

(2)运算符的结合性

(3)注意优先级,确保表达式正确顺序参与运算。

五、赋值运算符和赋值表达式

赋值运算直接为变量提供数据

1.赋值运算符(=)

2.赋值表达式

变量=表达式

3.复合赋值表达式

复合赋值运算符由一个双目运算符和一个赋值运算符构成。

六、自增自减运算符和表达式

++k  --k 先增1  先减1

k++     k--  先取值在增1或减1

自增、自减运算符只用于变量,不用于常量或表达式

七、逗号运算符和逗号表达式

用逗号运算符将两个或多个表达式连接起来,构成一个完整的表达式。

注:逗号表达式的优先级最低,结合顺序为自左向右

八、不同类型数据间转换

1.表达式中数据类型转换

2.强制类型转换表达式

C语言程序设计 基础入门(认识、描述与计算)相关推荐

  1. c语言零基础入门(经验总结)

    作者本人也是计算机小白一枚,作为一名未来的电脑工作者,最开始学的就是c语言.将其作为一门了解编程,认识算法的学科再好不过.在本篇文章中不会具体涉及过多的C语言写法注意事项,主要是想谈一谈这半年中我的一 ...

  2. C语言 const 修饰函数参数 - C语言零基础入门教程

    C语言 const 修饰函数参数 - C语言零基础入门教程 目录 一.const 简介 1.const 修饰变量 2.const 修饰指针 3.const 修饰在函数名前面 4.const 修饰在函数 ...

  3. c语言int转字符串_C语言零基础入门-指针-05

    C语言零基础入门-指针-05 本节要点: 1,字符指针. 2,字符串指针. 3,指针的参数传递 4,多重指针 01. 字符指针 这里的定义与前面的基本一样,所谓的字符指针就是这个指针指向的是一个字符型 ...

  4. c语言零基础自学,c语言零基础入门 该如何学习

    原标题:c语言零基础入门 该如何学习 ​零基础学习C语言该从哪里开始学习呢?在学习之前你可以先问自己,为什么我要学C语言?是为了应付考试,还是为了应聘,还是为了提高自己的编程能力.如果你以后想要长期致 ...

  5. 单片机C语言零基础入门05 - 逻辑运算

    硬件家园单片机C语言零基础入门资料汇总链接: https://mp.weixin.qq.com/s/hMTreNUX_V90461tvALjJA ​ 一.逻辑与或非 基础理论: 逻辑与或非,运算对象是 ...

  6. 最新C语言零基础入门(带课件+源码)

    C语言零基础入门 带课件+源码 下载地址:百度网盘

  7. c语言word类型_C语言零基础入门—数据类型

    ​C语言零基础入门--3.数据类型 这一节的主要任务是 讲解C语言的 数据类型 . 1. 数据类型 1.1 何为数据类型 数据类型,其实在我们生活中经常被使用,但是在编程语言中被重新定义了一下,并且加 ...

  8. C语言零基础入门——1.基础知识与环境搭建。

    C语言零基础入门--1.基础知识与环境搭建. 好了.终于迎来了第一篇文章,这篇文章要做的事情非常简单,主要有三个事情 ​ 第一:C语言的介绍. ​ 第二:计算机的基础知识. ​ 第三:C语言的环境安装 ...

  9. Java语言程序设计 基础篇 原书第10版 ,梁勇著,百度云链接及密码

    一本好书,对java小白来说是一本非常不错的书.第一次分享,请大家多多指教, Java语言程序设计 基础篇 原书第10版 ,梁勇著 链接:https://pan.baidu.com/s/1-MN_AS ...

  10. 【MOOC嵩天Python语言程序设计】第9周 Python计算生态概览

    [MOOC嵩天Python语言程序设计]第9周 Python计算生态概览 9.1 从数据处理到人工智能 9.2 实例15:霍兰德人格分析雷达图 9.3 从Web解析到网络空间 9.4 从人机交互到艺术 ...

最新文章

  1. 亚马逊:用CNN进行图像分类的Tricks
  2. 《版式设计——日本平面设计师参考手册》—第1章应用对象样式
  3. 文件服务器有病毒,服务器共享文件会被病毒加密吗
  4. 记事本可以编辑html语言吗,笔记本win7系统使用记事本编辑和运行html代码的方法...
  5. python 爬取公众号文章_python批量爬取公众号文章
  6. Qt开发之路——基于RedfishAPI的服务器管理小应用
  7. 打印机计算机故障或繁忙,联想打印机繁忙是怎么回事?
  8. 微信公众号文章编辑排版工具+自动采集+使用视频教程
  9. Dzd电子书格式转换程序Txt2Dzd
  10. 网站必备之简繁切换功能实现
  11. javascript英语单词音节拆分_英语单词音节的划分法
  12. android开发中常用的占位符
  13. 软件安全期末考试试题21SZ回忆版
  14. oracle 甩手 java ee_Eclipse正式代替Oracle接管Java EE
  15. Android studio显示百度地图及闪退问题的解决
  16. 自我拷贝数的C语言编码,“数学黑洞——自我拷贝数”有哪些?
  17. apache整合tomcat实现web服务器的动静态资源的分离解析
  18. 中西方对时间的差异_浅析中西方时间观念差异及其对跨文化交际的启示
  19. 2017年第十五届Esri中国用户大会资料分享
  20. 基于Java的连连看游戏设计与实现

热门文章

  1. 费率转换成利率的计算器_存款利率计算器
  2. DFA 敏感词过滤算法
  3. Faster R-CNN算法详细流程
  4. aws s3 上传文件 html,javascript 上传文件到 aws s3存储桶
  5. endnote x7不在word中显示
  6. linux vi命令详解 修改几行,Linux系统——Vi命令讲解
  7. python实战——密码生成器
  8. 成都市等2015年《四川省建设工程工程量清单计价定额》人工费调整系数〔2018〕27号
  9. UNIX网络编程卷一 学习笔记 第一章 简介
  10. 【ceph】vdbench的使用教程——裸盘测试和文件系统测试vdbanch