C语言中的标识符以字母或下划线开头,牛逼大神整理的C语言基础知识,你确定你不码下来?...

138445432_1_20180714010917582

【【怪兽爱C语言】牛逼大神整理的C语言基础知识,你确定你不码下来?】https://toutiao.com/group/6577344220355363341/?iid=15906422033&app=explore_article&timestamp=1531501720&tt_from=copy_link&utm_source=copy_link&utm_medium=toutiao_ios&utm_campaign=client_share

软件是将一组程序组织起来

每个程序由一组指令组成

数据结构 算法

数据结构

在程序中要指定数据的类型和数据的组织形式。

算法(程序的灵魂)

就是为了解决实际问题而提出的具体方法与步骤.

算法的特点

有穷性: 一个算法一定是有限的步骤.

确定性: 每一个步骤都是确定的,不是含糊的.

有零个或多个输入: 指在执行算法时需要从外界取得必要的信息.

有一个或多个输出: 目的是为了求解,”解”就是输出

有效性: 每一步都应当有效的执行,并得到确定的结果

138445432_2_20180714010917644

C 语言的应用领域

C 语言最初用于系统程序设计

系统程序是计算机操作系统或操作系统支持的实用程序的组成部分: 操作系统、解释器、编辑器以及汇编器通常称为系统程序

UNIX 操作系统是用 C 语言开发,有许多种 C 编译器,可以满足几乎所有类型 PC 的需要

C语言的特点

C语言同时具有汇编语言和高级语言的优势。

(1)语言简洁、紧凑,使用方便、灵活。

(2)运算符极其丰富。

(3)生成的目标代码质量高,程序执行效率高。

(4)可移植性好(较之汇编语言)。

(5)可以直接操纵硬件。

C语言规则

C语言有32个关键字 这些关键字结合惯用语法构成了 C程序设计语言 ,所有用C语言编写的程序必须遵守的规则,所有关键字使用小写形式 C语言是区分大小写的,int 和 INT 不同,关键字不能用作变量名或函数名

程序执行总是先调用main()函数

每个程序必须有一个而且只能有一个称作主函数的main()函数; main()函数后面必须跟有圆括号。括号内可以有参数可以没有参数。

所有函数名后必须跟一个左大括号{ 表示代码块开始。同样,右大括号 }表示代码块的结束。

大括号之间写处理问题的代码。除了在函数中,在循环语句、判断语句等其他语句情况下也必须使用大括号{}。

代码语句的结束用分号;表示。编译器无法识别回车、空格,每条语句只能以分号结束,同一行中可以有多条语句。

注释是用于描述命令、函数或整个程序。

它有两种形式“多行注释”和“单行注释”。

多行注释部分包含在“/*”和“*/”之间, 在编译时它被 C编译器忽略。

单行注释则在 // 后面,在编译时它被C编译器忽略。

138445432_3_20180714010917723

常量

常量就是一个保持不变的值,而且不可能被改变

示例

5 数字/整型常量

5.3 数字/实型常量

''Black'' 字符串常量

'C' 字符常量

什么是变量?

变量是储存信息的地方.

变量是内存中的一个地址

在地址中可以进行数据的存储和读取

示例:变量

BEGIN

DISPLAY 'Enter 2 numbers’

INPUT A,B

C=A B

DISPLAY C

END

A 、B和C是伪代码中的变量

*变量类型(如整型)告诉编译器给变量分配

多大的内存

操作系统负责记住变量在内存中的地址

要引用内存空间中的值,只需指定变量名

标识符

用来标识变量名、符号常量名、函数名、数组名、类型名、文件名和其他各种用户定义的对象的名称都称为标识符

标识符的长度可以是任何合适的数值,但是各种编译器能够识别的变量中的字符数目有所不同,见意不要超过8个字符(VC环境)

C 语言中的标识符区分大小写

标识符的命名规则

变量名应该以字母或下划线开头

第一个字符后面可以跟字母、数字或

应该避免使用专有名词来命名变量

应该避免使用可能引起混淆的字母

变量名区分大小写

编写程序时应该遵循一些标准的变量命名约定

变量名应该是有意义的而且是描述性的

标识符命名的良好习惯──见名知意:

通过变量名就知道变量值的含义。通常应选择能表示数据含义的英文单词(或缩写)作变量名,或汉语拼音字头作变量名。

关键字

在一个特定语言的上下文中有特殊意义的单词

所有的数据类型都是保留的关键字

在指定变量名的同时还要指定将要存储在其中的数据类型-变量声明

C语言关键字

auto break case char const

continue default do double else

enum extern float for goto

if int long register return

short signed sizeof static struct

switch typedef union unsigned void

volatile while

基本数据类型

int

float

double

char

void

int 类型

存储数字数据

声明方式:int num;

不能存储类似于“Alan” 或“abc”等任何其他类型的数据

*分配16 位(2 个字节)的内存空间,整数的范围是从 - 32768 到 32767

(注意:在我们当前环境里,int占用4个字节)

示例:12322、0、-232

如: int num = 12332;

float 类型

存储整数或包含小数位的值

声明方式:float num;

最高精度是 6 位

*分配32 位(4 个字节)的内存空间

示例:23.05、56.5、32

如: float num = 23.05;

double 类型

存储超出float类型大小的限制的值

声明方式: double num;

最高精度是 10 位

*分配64 位(8 个字节)的内存空间

示例:23.34232324

如: double num = 23.34232324;

char 类型

存储一个字符信息

声明方式: char gender;

gender='M';

*分配8位(1 个字节)的内存空间

示例:'a'、'm'、'$'、'%'、'1'、'5'

如: char gender = 'A’;

[注意] 给字符型变量赋值必须加上一对单引号'’

字符型变量 C

char 与 int的联系

字符在计算机中是以ASCII来存储的,

字符变量在内存中的值是ASCII表中对应的整数

void 类型

告诉编译器没有任何类型的值

声名方式:void num

不返回任何值

派生数据类型

通过修改四种基本数据类型以适应不同的

情况而产生的数据类型叫做派生数据类型

signed 和 unsigned 类型

signed最重要的是修改char数据类型(缺省为signed )

(0-127)有符号的, 有正负之分的

unsigned 类型指定变量只能接受正值

unsigned int varNum;

varNum=63123;

加上unsigned前缀,正数的取值范围是原来的两倍

修饰符可以与 int 和 float 数据类型一起使用

unsigned int 支持的范围是从 0 到 65535

long 和 short 类型

要求某个整数的长度比正常长度更长或更短时,使用long 和short

* short int 占 8 位(1 个字节)的内存空间

允许的数字范围是从 -128 到 127

* long int 占 32 位(4 个字节)的内存空间

-2,147,483,648 到 2,147,483,647

* long double 占 128 位(16 个字节)的内存空间

数据类型范围 2-1

类型 *近似大小(位) 最小范围

char 8 -128 到 127

unsigned char 8 0 到 255

signed char 8 -128 到 127

int 16 -32,768 到 32,767

unsigned int 16 0 到 65,535

signed int 16 与 int 相同

short int 8

unsigned short int 8 0 到 65, 535

signed short int 8 与 short int 相同

signed short int 8 与 short int 相同

long int 32 -2,147,483,648 到 2,147,483,647

signed long int 32 0 到 4,294,967,295

unsigned long int 32 0 到 4,294,967,295

float 32 六位精度

double 64 十位精度

long double 128 十位精度

如侵删!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/528344.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c语言switch同时比较多个变量,C语言学习if和switch分支选择结构

如何判断一个整数是否为正数计算机同我们一样,也是可以判断大小。在此之前,我们需要先说明在计算机中用来判断两个数关系的符号,即关系运算符。关系运算符号c语言中的关系运算符与数学上学习的有什么不同?image.png关系表达式的值…

c语言字符串升序输出,编写程序将已按升序排好的两个字符串a和b中的字符按升序归并到字符串c中,最后输出”abcdefghijklmnpq”。...

满意答案sjoest2014.08.18采纳率:59% 等级:8已帮助:663人(1)char a[]"acegikm"; a数组没有赋予数组大小,所以它的大小,默认等于赋予的字符串长度等于7,所以当strcat(a,b)时,…

c语言指针化简带分数,c语言带分数四则运算问题!!!要求被调函数,化简.

满意答案Lie囡2013.02.03采纳率:58% 等级:12已帮助:8948人#include long int a,b,c,d,x,y,z;char op;int f1();int f2();main(){printf("shu ru di yi ge shu de fen zi:");scanf("%ld",&a);printf("shu ru …

keil C对lib封装库反汇编成C语言,Keil软件“C语言”及“汇编”混编 —— 相关知识整理.doc...

Keil软件“C语言”与“汇编”混编相关知识整理用Keil在C中嵌入汇编1在Keil中嵌入汇编2介绍直接嵌入汇编代码的方法4采用汇编可能会有的好处5Keil C语言与汇编语言混合编程7深入剖析Keil C51 —— 从汇编到C519C语言和汇编语言的变量以及函数的接口问题14汇编与C语言混合编程的关…

c语言smile定义函数,【C初始之习题五】

1.实现一个函数,打印乘法口诀表,口诀表的行数和列数自己指定,输入9,输出99口诀表,输入12,输出1212的乘法口诀表。#define _CRT_SECURE_NO_WARNINGS#include#includevoid Sum(int x){int num 0;for (int i …

2017年9月计算机二级c语言,2017年9月计算机二级C语言程序设计练习题

2017年9月计算机二级C语言程序设计练习题2017年计算机二级考试即将在九月份进行,你准备好了吗?下面是小编为大家带来的计算机二级C语言程序设计练习题,欢迎阅读。练习题一:阅读程序题1、int x6, y7;printf(“%d,”,x); printf(“%d”,y);程序…

c语言中for优化,c – 在For循环中发生了什么GCC优化?

使用gcc 4.6和-O3,我使用简单的时间命令计时以下四个代码#include int main(int argc, char* argv[]){double val 1.0;unsigned int numIterations 1e7;for(unsigned int ii 0;ii < numIterations;ii) {val * 0.999;}std::cout<}案例1在0.09秒内运行#include int main…

android string数字字符串如何使用科学计数法,JSONObject 偶遇 数字字符串变为科学计数法 如何变为普通数字字符串...

和 XML 一样&#xff0c;JSON 也是基于纯文本的数据格式。由于 JSON 天生是为 JavaScript 准备的&#xff0c;因此&#xff0c;JSON的数据格式非常简单&#xff0c;您可以用 JSON 传输一个简单的 String&#xff0c;Number&#xff0c;Boolean&#xff0c;也可以传输一个数组&a…

android getter不起作用,java - 如何在Android Studio中自动生成getter和setter

java - 如何在Android Studio中自动生成getter和setterAndroid Studio中是否有一个快捷方式可以自动生成给定类中的getter和setter&#xff1f;14个解决方案454 votes在编辑器中使用Alt Insert for Windows或Command N for Mac&#xff0c;您可以轻松地为类的任何字段生成get…

android中activity布局,Activity布局初步(一)

LinearLayout和TableLayout一、LinearLayout&#xff1a;线性布局(就是把控件一个挨着一件排下来)[代码]xml代码&#xff1a;android:id —— 为控件指定相应的IDandroid:text —— 指定控件当中显示的文字&#xff0c;需要注意的是&#xff0c;这里尽量使用strings.xml文件当…

离散中多重组合是指_PLC编程中如何使用开关、模拟、脉冲量

在工业自动化控制中&#xff0c;经常会遇到开关量&#xff0c;数字量&#xff0c;模拟量&#xff0c;离散量&#xff0c;脉冲量等各种概念&#xff0c;而人们在实际应用中&#xff0c;对于这些概念又很容易混淆。作为电气工程及其自动化设计人员来说&#xff0c;弄清楚这些变量…

Android连接相机WiFi,安卓手机使用佳能相机机身wifi传输拍摄的操作

第一步 相机基础设置首先请确保相机具有WIFI功能&#xff1b;设置相机图像包含JPG格式&#xff1b;3. 相机电源设置&#xff0c;请关闭相机的自动关闭电源功能以保证传输&#xff1a;MENU→“自动关闭电源”→选择“关闭”或“最长时间”&#xff1b;4. ftp设置&#xff0c;…

word论文排版插件_教你如何用word快速搞定论文排版

在疫情影响下&#xff0c;各大高校纷纷开启了远程指导论文/答辩&#xff0c;尽量不影响毕业时间。这不&#xff0c;前段时间湖北武汉科技大学的同学&#xff0c;利用视频在家顺利通过博士学位论文答辩。emmm&#xff0c;人家都答辩完半个月了&#xff0c;回头瞧瞧我们&#xff…

kodi android 键盘,KODI按键映射,看IPTV按键设置

KODI按键映射&#xff0c;看IPTV按键设置2020-04-09 18:10:1016点赞76收藏7评论KODI播放器功能丰富&#xff0c;其中自定义按键功能也是强大&#xff0c;可以让用户修改各个场景下各个按键的功能&#xff0c;网上好多文章没把事情说明白或太复杂&#xff0c;本教程教大家以简单…

不采取任何措施 盒盖_得了癌症如果不化疗能活多久?医生的答案很实在

癌症有不同的治疗手段&#xff0c;有手术&#xff0c;有放疗&#xff0c;有化疗……说到化疗&#xff0c;有人就说千万不要化疗&#xff0c;千万不要化疗&#xff0c;于是很多人拒绝化疗。有人就问&#xff1a;癌症如果不化疗能活多久&#xff1f;癌症如果不化疗能活多久&#…

android iOS 都精通,Android IOS开发要理解何为面向对象的思维

何为面向对象的思维&#xff1f;面向对象 VS面向过程OOP 》面向对象&#xff0c;全称Object Oriented ProgrammingPOP 》面向过程&#xff0c;全称Process-oriented programming1、通俗的理解&#xff1a;有一天你想吃鱼香肉丝了&#xff0c;怎么办呢&#xff1f;你有两个选择&…

单片机全局有必要封装_C语言开发单片机为什么大多数都采用全局变量的形式?...

全局变量简直就是嵌入式系统的戈兰高地。冲突最激烈的双方是1. 做控制的工程师 2. 做非嵌入式的软件工程师。第一派做控制的工程师。他们普遍的理解就是“变量都写成全局该有多方便”。我之前面试过一个非常有名的做控制实验室里出来的PhD/Master&#xff0c;前前后后陆续有快十…

html 最小边框宽度,css如何让div边框不占宽度?

HTML中&#xff0c;给一个DIV添加一个边框&#xff0c;那么这个DIV的宽度和高度就增加成为这个DIV的宽度加上这个边框的宽度&#xff0c;那么我们如何让边框不占宽度呢&#xff1f;我们做网站时可以添加边框box-sizing属性&#xff1a;让边框不占宽度&#xff0c;在DIV宽度内画…

android novate乱码,Novate 一款Android RxStyle的网络框架

功能优化设计&#xff1a;加入基础API&#xff0c;减少Api冗余强大的缓存模式&#xff1a; 支持离线缓存&#xff0c; 无网络智能加载缓存&#xff0c;可配置是否需要缓存cookie管理&#xff1a;自带cookie管理机制全方位请求模式&#xff1a;支持多种方式访问网络(get,put, po…

深圳市收运体系运营管理_华为公司质量管理体系构建和运营实践

导语&#xff1a;质量是一个产品乃至一个企业存在的基石&#xff0c;华为公司的质量管理理念和体系是什么&#xff0c;华为的质量管理如何运营的呢&#xff1f;华为公司如何发挥质量与运营部的作用确保产品和流程高效运作&#xff0c;满足客户需求呢&#xff1f;快来看看吧&…