C语言程序设计基础(一)

  • C语言基础知识
      • C语言文件后缀名说明:
    • 学C语言前需要了解的计算机基础知识
      • 计算机语言
      • 内存
      • 内存中的数据存放
    • C语言序论
    • C语言程序组成
    • C语言的执行
    • C语言的数据类型—非数字型
      • ASCII码
      • 转义字符

大家好这里是三岁,C语言是各类语言的基础,由于个人学习需要特别开设了C语言基础专题,内容不一定深入,都是基础知识,还是白话C语言,最简单的方式带领大家学习不是那么容易理解的C语言!(该系列应该每周末更新直到系列结束,有问题的及时留言,会马上修改!)

C语言基础知识

C语言文件后缀名说明:

*代表的是通配符

  • C语言文件:其拓展名为 *.c或者 *.cpp(c++)源文件名
  • *.h 是头文件名(包含文件)可以使用 # include <* .h>进行导入(相当于文件引用)
    (拓展:类似于python中的import

学C语言前需要了解的计算机基础知识

计算机语言

语言是沟通交流的工具(区别在于不同的语言表达方式不同)
而计算机语言也类似:

是人与计算机之间的交流的方式(工具)

计算机语言可以分为低级语言高级语言下面对内容进行了分析:

语言三要素:语法、词汇、语义;

白话三要素:
语法:对应于C语言的一些特定语法:if、else……
词汇:对应的应该是保留的关键字
语义:就是对指定的代码的解析(a=1对应把1赋值给a)

内存

计算机内部存放中间结果的,是临时数据存放的地方。
在内存中按照字节(Byte)划分存储单元
1Byte == 8bit

类型 大小
正整数(无符号整数) 0 ~ 255
带符号数 -128 ~ 127

为什么呢?
计算机中,如果是带符号的第一位就代表了符号 0代表正的、1代表负的。

  • 无符号整数:
  • 带符号数

内存地址:每个字节给予一个从0开始的顺序编号。

小知识:
设在C语言中:char * p存在一个内存中。
变量p分配的内存是__sizeof(unsigned)__B.(固定大小是4)

每保存一个数据就会给出一个地址:数据占据
如果一个数据的内容太大了(占据多个字节时):以首地址(低位地址)作为数据存储单元地址。(假设初始是128,占了6个位置那么他的地址就是128(可以理解为学号))

CPU根据内存地址范围数据(访问需要知道访问地址和访问的大小(字节数))

白话:
访问地址类似于你家的门牌号,几栋几单元
但是还是不知道你在哪个房间,还需要一个访问大小
类似于第几个房间或者是到第几个房间(简易理解不代表正确)

地址是数值(整数类型):经过符号化生成了变量
程序员通用变量访问数据(数据初始化地址)但是没有大小,这个时候就出现了数据类型

类型 首地址 大小 字节数
int a &a sizeof(int) 4
char b &b sizeof(char) 1
double c &c sizeof(double) 8

内存中的数据存放

内存的数据都是以补码的形式进行存储的。
里面分为真值原码反码补码
emmmm这个不好 解释逐个来白话

真码:有正负号的二进制(十进制、八进制、十六进制)数据
例如:12、-1902……
原码:真码的二进制值
例如 :1100、111 0110 1110
反码 :正数的反码等于原码,负数的反码是原码符号位不变其他位取反
补码:正数的补码等于反码,负数的补码是反码符号位不变其他的取反加一

  • 正数

  • 负数

C语言序论

发展史 :源于上世纪60年代末、70年代初
由B语言发展而来。

优点:效率高,可移植性较好。
C语言是结构化面向过程的编程语言。

C语言程序组成

  • C语言程序由函数组成
  • C语言中main() (主函数)是程序的入口
  • 主函数在一个程序里面有且只有一个
  • C语言面向的过程可以是:子程序、函数、模块

函数头:
函数返回值类型 函数名(形参列表)冒号
形参列表:
类型1 参数1, 类型2 参数2,……,类型n 参数n
举例:

int add(int x, int y):

函数主体: 变量申明语句、函数功能完成语句、return返回语句

  • 变量声明语句:

变量类型 变量名 = 变量初始值 (语言解析:把变量初始值赋值给属于变量类型的变量名)

  • 函数功能完成语言:

使用C语言的语法完成有关的内容

  • return返回语句:

就是把需要的计算结果进行返回用于其他函数或代码的使用。
(void类型没有数据返回,int类型有返回是整型,以此类推……)

举例:

#include<stdio.h>  // 文件引用
#define pi 3.14  // 定义pi的值为3.14
void main()  // 定义空主函数(程序入口)
{float area,p,r;  //变量声明语句 定义变量// 函数功能完成语言,通过输入输出和公示完成内容printf("圆的半径:");//输出内容scanf("%f,");//输入一个字符串类型数据area=(float)pi*r*r;//计算圆的面积printf("圆的面积:%6.2f\n",area);//输出圆的面积p=(float)pi*2*r;//计算圆的周长printf("圆的周长:%6.2f\n",p);//输出圆的周长return;//无返回值
}

C语言的执行

  • 编辑—— 编辑源程序(*.c 、 *.cpp)
  • 编译——生成目标程序(*.obj) 将.c文件编译成二进制代码
  • 链接——生成可执行文件(*.exe)

C语言的数据类型—非数字型

非数字类型:字符、字符串

  • 字符:用单引号括起来的一个字符
  • 字符串:用双引号括起来的若干有限个字符序列。

注:一个汉字占两个字符位
字符串内占字节空间数 = 字符数+1(多了一个’\0’)

ASCII码

美国信息交换标准代码:是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言。它是最通用的信息交换标准.
ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符。
后128个称为扩展ASCII码。许多基于x86的系统都支持使用扩展(或“高”)ASCII。扩展ASCII 码允许将每个字符的第8 位用于确定附加的128 个特殊符号字符、外来语字母和图形符号

字符在C语言中存放 (或者是在C语言中的表示)是对于ASCII码的码字

经常使用的字符 对应的ASCII码
‘a’ - ‘z’ 97 - 122
‘A’ - ‘Z’ 65 - 90
‘0’ - ‘9’ 48 - 57
’ ’ (空格) 32
‘’(空) 0

转义字符

所有的ASCII码都可以用“\”加数字(一般是8进制数字)来表示。而C中定义了一些字母前加""来表示常见的那些不能显示的ASCII字符,如\0,\t,\n等,就称为转义字符,因为后面的字符,都不是它本来的ASCII字符意思了。

  1. 区分,斜杠:"/" 与 反斜杠:"" ,此处不可互换
  2. \xhh 十六进制转义不限制字符个数 ‘\x000000000000F’ == ‘\xF’

如果'\字符'合起来表示一个特殊字符则发生转义,如果不符合则不能够表示特殊字符 应该理解为两个字符。

今天的资料就整理到这里了,非常感大家的关注,如果好就来个一键三连吧!

[C语言学习]C语言程序设计基础(二)[点击传送]

[C语言学习]C语言程序设计基础(一)相关推荐

  1. 程序设计基础c语言第二版巫,程序设计基础 (C语言)---2版

    图书特色: 1. 实例丰富 本书不仅理论完备,还通过 100 多个实例夯实基础,100 多个课后习题巩固练习,并通过分布在本书第 6.8 和 10 章的 3 个综合应用案例 学生成绩统计程序.学生成绩 ...

  2. 程序设计基础(c语言)复习大纲,《程序设计基础-C》复习大纲.doc

    <程序设计基础-C>复习大纲.doc <程序设计基础-C>复习大纲 第一部分 期末考核说明 一.期末考试要求 考核学生是否掌握C语言的基本概念,能否较熟练运用Visual C+ ...

  3. c语言程序设计勘误,《程序设计基础教程(C语言)》勘误表

    <<程序设计基础教程(C语言)>勘误表>由会员分享,可在线阅读,更多相关<<程序设计基础教程(C语言)>勘误表(2页珍藏版)>请在人人文库网上搜索. 1 ...

  4. c语言实验手册答案,程序设计基础实训手册(c语言习题)

    1.题目题目 1 勾股定理勾股定理 勾股定理指出:直角三角形两条直角边的平方和等于斜边的平方.例如,如果一个直角三角形的 两条直角边长分别为 3 和 4,那么斜边长必定为 5.整数 3.4.5 一起构 ...

  5. C语言k=xm gt xn gt p,C语言学习001:让程序跑起来

    编译工具下载 编译运行 #include int main(){ puts("C rocks!"); return ; } 编译运行程序 在命令提示符窗口中输入" gcc ...

  6. 程序设计基础c语言答案虞歌,程序设计基础——以C为例 虞歌 习题解答.pdf

    程序设计基础--以C为例 虞歌 习题解答 习题1 1.编辑.编译和运行C 程序需要什么条件? 答: 计算机.操作系统.C 编译器.为了提高程序开发效率,通常会使用集成开发环境IDE . 在集成开发环境 ...

  7. go语言学习:语言简介

    一.Go语言简介 Go语言(或 Golang) 起源于 2007 年,并在 2009 年正式对外发布.Go 是非常年轻的一门语言,它的主要目标是"兼具 Python 等动态语言的开发速度和 ...

  8. Go语言学习二 语言结构 基础语法 数据类型

    Go 语言结构 由 youj 创建, 最后一次修改 2015-09-08 Go 语言结构 在我们开始学习 GO 编程语言的基础构建模块前,让我们先来了解 Go 语言最简单程序的结构. Go Hello ...

  9. 0. Go语言学习/Go语言教程

    <Go语言学习>目录 一.开发环境准备 1 安装Go及搭建Go开发环境 2 Go跨平台编译 3 Go依赖管理及go module使用 4 使用Go module导入本地包 二.Go语言基础 ...

  10. python语言程序设计基础网课-程序设计基础(Python语言)答案

    [单选题]下面代码的输出结果是 ‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬ d = ...

最新文章

  1. linux sleep alarm,Linux环境编程之信号处理(三、利用alarm()和pause()函数实现sleep()函数)...
  2. vue-router之路由属性配置说明(十)
  3. NYOJ 664 数字整除
  4. js字符串拼接中关于单引号和双引号的那些事
  5. c语言求偶数的积,《动物的多*语言》阅读理解及*
  6. c语言基础编程题讲解,C语言入门例题讲解
  7. excel工具箱_Excel工具箱15.54安装教程
  8. 同行代码评审过程中的实践经验
  9. 112 Python程序中的进程操作-开启多进程(multiprocess.Process)
  10. [DAX] MIN函数 | MINX函数
  11. 鸿蒙造化体内微粒,开辟鸿蒙,谁为情种?
  12. leetcode:359. 日志速率限制器
  13. 大三学生简历_不要再问那些没有的高级开发人员了。 开始指导大三学生。
  14. matlab 曲线填充 透明度
  15. 决策树(2.回归树)
  16. Unity中实现四舍五入
  17. ES压测工具(一):esrally工具入门与实践
  18. 《大唐豪侠》架构开发纪实
  19. 互联网业务数据指标体系
  20. ESP8266Web配网(连接wifi自动打开网页)

热门文章

  1. 树莓派-迅雷远程下载
  2. 视频截帧 php,php截取视频指定帧为图片_PHP
  3. 如何利用matlab显示图像的方向矢量图
  4. honeywell1900扫描枪的使用说明
  5. 搭建Hive远程模式初始化的时候报错Access denied for user ‘root‘@‘node1‘(using password:YES)
  6. linux 分区100g整数,160GB硬盘双系统整数分区推荐方案
  7. java 抽象工厂 类图_Java 抽象工厂模式
  8. smarty 模板php,php的smarty模板发动机
  9. vb连接mysql_vb.net连接mysql 数据库方法
  10. ECshop商城程序常见的97个小问题汇总