C语言变量的数据类型和赋值笔记
- 格式:rtf
- 大小:10.53 KB
- 文档页数:4
大学C语言知识点笔记C语言是一门非常重要的编程语言,广泛应用于各个领域。
在大学学习C语言是非常重要的一环,因为它是计算机科学和软件工程领域的基础。
本文将总结大学C语言基础考试知识点,希望能够帮助各位同学更好地备考。
1. 基本语法C语言的基本语法是了解C语言的第一步。
下面列举一些常见的基本语法知识点:•变量和数据类型:如何声明变量,各种数据类型的特点和使用方法。
•运算符:算术运算符、逻辑运算符、关系运算符等。
•控制结构:条件语句(if-else语句、switch语句)、循环语句(for 循环、while循环、do-while循环)。
•函数:函数的定义和调用,函数参数的传递。
•数组:一维数组和二维数组的定义和使用。
•指针:指针的基本概念,指针的声明和使用,指针与数组的关系。
•结构体:结构体的定义和使用。
2. 程序设计C语言的程序设计是非常重要的一环,它涉及到如何用C语言解决实际问题。
下面列举一些常见的程序设计知识点:•算法和流程图:如何使用伪代码描述算法,如何使用流程图表示问题的解决过程。
•函数的设计:如何设计一个函数,如何将一个大问题划分为多个小问题,如何通过函数的调用和返回来解决问题。
•递归:递归函数的概念、递归函数的实现和调用。
•文件的读写:如何打开文件、读取文件、写入文件。
•链表:链表的定义和基本操作,如何使用链表解决问题。
•排序和查找:各种排序算法(冒泡排序、快速排序、插入排序)和查找算法(二分查找、顺序查找)的原理和实现。
3. 内存管理C语言中的内存管理是非常重要的一部分,它直接影响到程序的性能和稳定性。
下面列举一些常见的内存管理知识点:•变量的作用域和生命周期:局部变量和全局变量的作用域范围和生命周期。
•内存分配和释放:动态内存分配的原理和使用方法,如何使用malloc函数来申请内存,如何使用free函数来释放内存。
•内存泄漏和野指针:内存泄漏和野指针的概念和原因,如何避免内存泄漏和野指针的产生。
C语言中常见的变量在C语言中,变量是用来存储和操作数据的一种重要概念。
它们允许程序在运行时访问和修改内存中的值。
在本文中,我们将介绍C语言中常见的变量类型及其用法。
1. 整型变量(int)整型变量用于存储整数值。
在C语言中,整型变量可以是有符号(可以表示正负数)或无符号(仅表示非负数)。
常见的整型变量有:- int:用于表示有符号整数,通常占用4个字节。
- unsigned int:用于表示无符号整数,也占用4个字节。
- short:用于表示短整数,占用2个字节。
- unsigned short:用于表示无符号短整数,同样占用2个字节。
- long:用于表示长整数,占用4个字节或8个字节,具体取决于编译器和操作系统。
2. 浮点型变量(float和double)浮点型变量用于存储小数值。
在C语言中,浮点型变量可以是单精度(float)或双精度(double)。
常见的浮点型变量有:- float:用于表示单精度浮点数,通常占用4个字节。
- double:用于表示双精度浮点数,占用8个字节。
3. 字符型变量(char)字符型变量用于存储单个字符,如字母、数字或符号。
在C语言中,字符型变量被视为整数类型,每个字符对应一个ASCII码。
常见的字符型变量有:- char:用于表示单个字符,通常占用1个字节。
4. 指针型变量(pointer)指针型变量用于存储内存地址。
它们允许程序直接访问内存中的数据。
指针变量必须指定所指向数据的类型。
指针变量的声明方式为:类型 *变量名。
常见的指针型变量有:- int *:指向整型数据的指针。
- float *:指向浮点型数据的指针。
- char *:指向字符型数据的指针。
5. 数组变量(array)数组变量用于存储一系列相同类型的数据。
数组的元素可以通过索引进行访问。
在C语言中,数组的大小必须在声明时指定,并且不能改变。
数组变量的声明方式为:类型变量名[大小]。
常见的数组变量有:- int 数组名[大小]:用于存储整型数据的数组。
c语言重点笔记C语言重点笔记一、基础语法1.注释:用于解释代码,不会被编译器执行。
单行注释以“//”开头,多行注释用“/* */”包围。
2.变量:用于存储数据。
定义变量时需要指定类型和名称,如int num;赋值时使用等号,如num=10;也可以在定义时进行赋值,如int num=10;3.数据类型:C语言提供了基本的数据类型,包括整型、浮点型、字符型等。
4.运算符:C语言提供了各种运算符,包括算术运算符、关系运算符、逻辑运算符等。
5.控制语句:C语言提供了各种控制语句,包括条件语句、循环语句等。
二、函数1.函数定义:函数是一段可重复使用的代码块。
定义函数需要指定返回值类型、函数名和参数列表。
如int add(int a, int b) { return a + b; }2.函数调用:调用函数时需要使用函数名和参数列表,并根据返回值类型进行接收。
如int result = add(1, 2);3.递归函数:递归是一种特殊的函数调用方式,在函数内部调用自身。
需要注意避免死循环。
三、数组1.数组定义:数组是一组相同类型的数据。
定义数组时需要指定类型和长度,如int arr[5];2.数组初始化:可以在定义时进行初始化,如int arr[5] = {1, 2, 3, 4, 5};3.数组访问:使用下标访问数组元素,下标从0开始,如arr[0]表示数组的第一个元素。
4.多维数组:多维数组是由一维数组组成的。
二维数组可以看作是一个矩阵,定义时需要指定行数和列数。
四、指针1.指针定义:指针是一个变量,用于存储另一个变量的地址。
定义指针时需要指定类型和名称,如int *p;2.指针运算:可以对指针进行加减运算,表示移动指针位置。
3.指针与数组:可以使用指针访问数组元素,如int *p = arr; p[0]表示arr[0]。
4.空指针:空指针是没有被初始化的指针。
五、结构体1.结构体定义:结构体是一种自定义数据类型,可以包含多个不同类型的成员变量。
不同类型变量赋值方法
在编程过程中,变量是一种存储数据值的容器,不同类型的变量在
定义和赋值时也有所不同。
以下是常见的几种类型变量定义和赋值的
方法:
1. 整数类型变量:整数类型变量可以存储整数值。
例如:int age = 18;
这个语句定义了一个名为age的整数类型变量,并将其赋值为18。
2. 浮点数类型变量:浮点数类型变量可以存储小数或科学计数法表示
的数值。
例如:float price = 3.14; 这个语句定义了一个名为price的浮
点数类型变量,并将其赋值为3.14。
3. 字符类型变量:字符类型变量可以存储单个字符。
例如:char grade
= 'A'; 这个语句定义了一个名为grade的字符类型变量,并将其赋值为A。
4. 布尔类型变量:布尔类型变量可以存储逻辑值,只能是true或false。
例如:bool isGood = true; 这个语句定义了一个名为isGood的布尔类型
变量,并将其赋值为true。
5. 字符串类型变量:字符串类型变量可以存储一串字符。
例如:string name = "Tom"; 这个语句定义了一个名为name的字符串类型变量,并
将其赋值为Tom。
需要注意的是,在赋值时变量类型要和数据类型相符。
如果类型不符,会导致编译错误。
总的来说,变量的定义和赋值是编程中非常基础和重要的内容。
只有
清楚理解各种类型变量的定义和赋值方法,才能编写出高品质的程序。
c语言变量赋值的规则
以下是 6 条关于 C 语言变量赋值的规则:
1. 一定要先声明变量才能赋值呀!就像你要去一个新地方,总得先知道有这么个地方存在吧。
比如,“int a;”,这就是先声明了一个整型变量 a 呀。
2. 赋值的时候类型得匹配呢!不能把苹果放到香蕉的框子里嘛。
就像“int b = ;”,这可不行哦,会报错的哟!
3. 变量可以多次赋值呀,就像你的心情可以变来变去一样。
比如说先“int c = 10;”,后面又可以“c = 20;”呀。
4. 不能给一个没声明的变量赋值,那不就像给一个不存在的人送礼物一样奇怪嘛。
可别干这种糊涂事呀,像“d = 5;”,d 都还没声明呢!
5. 赋值的时候小心别写错呀,不然程序就乱套啦!这就像去目的地走错路了一样糟糕呢。
比如把“int e = 10;”写成“int e = 100;”,那可就不一样咯。
6. 可以同时给多个变量赋值哦,就像一手抓多个糖果一样。
像“int f = 1, g = 2;”,多方便呀!
我觉得啊,这些规则都很重要,一定要好好记住,不然写 C 语言程序的时候可就要出大问题啦!。
翁凯c语言笔记
翁凯是一位热爱编程的学生,他在学习C语言的过程中积累了很多宝贵的经验和知识。
下面是他的一些C语言学习笔记,希望对大家有所帮助。
1. 基础语法:C语言是一种结构化的编程语言,具有丰富的数据类型和运算符。
翁凯通过学习基础语法,掌握了变量的声明和赋值、控制语句、循环语句等基本概念。
2. 函数与模块化编程:C语言通过函数的调用来实现模块化编程,提高了代码的可读性和可维护性。
翁凯学会了如何定义和调用函数,并且学习了递归函数的使用。
3. 数组与指针:在C语言中,数组和指针是非常重要的概念。
翁凯弄清楚了数组和指针之间的关系,并学会了如何使用它们进行内存管理和数据操作。
4. 结构体与文件操作:C语言中的结构体可以用来存储不同类型的数据,翁凯学会了如何定义和使用结构体,并且掌握了文件的读写操作,可以将结构体数据保存到文件中。
5. 动态内存分配:C语言提供了动态内存分配的功能,翁凯学会了
使用malloc()和free()函数来进行内存管理,避免了内存泄漏和内存溢出的问题。
6. 编程技巧与调试:除了学习语法和基本概念,翁凯还注重培养编程技巧和调试能力。
他学会了使用调试工具和技巧,解决程序中的bug,并且善于利用注释、缩进和命名规范来提高代码的可读性。
翁凯通过不断学习和实践,逐渐掌握了C语言的基本知识和技巧。
他深知编程需要不断练习和积累,因此他坚持每天都进行编程练习,并且参与了一些开源项目,与其他开发者交流经验。
翁凯相信,只有不断学习和实践,才能成为一名优秀的C语言程序员。
c语言知识点总结大一笔记一、前言在计算机专业的学习过程中,C语言是一门必修课程,也是学习其他编程语言的基础。
本文将总结大一学习过程中所学到的一些C语言知识点,希望能够给其他学习者提供一些参考。
二、基础语法1. 变量:在C语言中,需要先声明变量,再进行赋值和使用。
变量的命名要遵循命名规则,不能以数字开头,不能使用保留字。
2. 数据类型:C语言中的基本数据类型包括整型(int)、字符型(char)、浮点型(float)、双精度浮点型(double)等。
不同的数据类型在内存中占用的空间大小和表示范围有所不同。
3. 运算符:C语言中的运算符包括算术运算符(+、-、*、/等)、关系运算符(>、<、==等)、逻辑运算符(&&、||、!等)等。
4. 控制语句:C语言中的控制语句包括条件语句(if-else语句)、循环语句(for循环、while循环、do-while循环)和跳转语句(break语句、continue语句)等。
三、数组和指针1. 数组:C语言中的数组是一种存储相同类型数据的集合,可以通过数组名称和下标访问数组元素。
数组的大小在声明时确定,一旦声明后大小不能改变。
2. 指针:指针是C语言中一个重要的概念,它保存着一个变量的内存地址。
通过指针,可以直接操作内存,实现动态的内存分配和释放。
指针与数组之间有着密切的关系,可以通过指针对数组进行遍历和操作。
四、函数和模块化编程1. 函数:在C语言中,函数是一段完成特定任务的可重用代码块。
函数由函数名、参数列表、返回类型和函数体组成。
函数的调用可以通过函数名和参数列表实现。
2. 模块化编程:C语言支持模块化编程,即将程序拆分成若干个函数,每个函数负责一个特定的功能。
模块化编程可以提高代码的可读性和可维护性,并且方便多人协作开发。
五、文件操作在C语言中,通过文件操作可以实现数据的读取和存储。
常用的文件操作函数包括fopen函数(打开文件)、fclose函数(关闭文件)、fread函数(读取文件)、fwrite函数(写入文件)等。
C语言基础学习笔记(第一版修改)丁炳亮1数据类型和表达式1.1计算机内数据存储方式理解与测试:什么是补码?我们得先知道模的概念。
模“模”是指一个计量系统的计数范围。
如时钟等。
计算机也可以看成一个计量机器,它也有一个计量范围,即都存在一个“模”。
例如:时钟的计量范围是0~11,模=12。
表示n位的计算机计量范围是0~2^(n)-1,模=2^(n)。
“模”实质上是计量器产生“溢出”的量,它的值在计量器上表示不出来,计量器上只能表示出模的余数。
任何有模的计量器,均可化减法为加法运算。
例如:假设当前时针指向10点,而准确时间是6点,调整时间可有以下两种拨法:一种是倒拨4小时,即:10-4=6;另一种是顺拨8小时:10+8=12+6=6在以12模的系统中,加8和减4效果是一样的,因此凡是减4运算,都可以用加8来代替。
对“模”而言,8和4互为补数。
实际上以12模的系统中,11和1,10和2,9和3,7和5,6和6都有这个特性。
共同的特点是两者相加等于模。
二进制中整数的补码求法是:正数的补码为原码,负数的补码是符号位不变其他位全部取反再整个数加1。
我们可以通过下面的代码看下负整数在计算机内部的表示。
void f(int n){unsigned int i;for(i=1,i<<=15;i;i>>=1){if(i&n)printf("1");elseprintf("0");}printf("\n");}main(){int a=-0xff;f(a);getch();}输出的结果是1111111100000001。
1.2变量与常量理解与测试:1)类型声明在计算机内部数据是以字节为单位存储的,但是我们需要的数据类型有很多种,每种数据类型所占字节和存储方式都不一样。
类型声明的作用就是告诉计算机以哪种“格式”去读写该数据数据。
类型说明符变量名1,变量名2......,变量名n;类型说明符有基本类型(字符型、整数型、单/双精度型)、高级类型(结构体型、共用体型、枚举类型)、指针型等,其中指针类型包括指向基本类型的指针类型、指向高级类型的指针型和指向函数的指针类型(指向函数指针声明格式在后面章节)。
C语言赋值运算符与赋值表达式C语言赋值运算符与赋值表达式我们都知道基本的赋值运算符是"=",他的优先级别低于其他的运算符,所以对该运算符往往最后读取。
下面和大家分享一下C语言赋值运算符与赋值表达式,一起来看看吧!C语言赋值运算符与赋值表达式1一、赋值运算符与赋值表达式赋值符号“=“就是赋值运算符,作用是将一个数据赋给一个变量或将一个变量的值赋给另一个变量,由赋值运算符组成的表达式称为赋值表达式。
一般形式为:变量名=表达式在程序中可以多次给一个变量赋值,每赋一次值,与它相应的存储单元中的数据就被更新一次,内存中当前的数据就是最后一次所赋值的那个数据。
例:a=12;此表达式读作“将10的值赋值给变量a”。
说明:a、如果赋值号两边的运算对象类型不一致,系统会自动进行类型转换,转换的规则:将赋值号右边表达式的值的类型转换成赋值号左边变量的类型,例:inty=3.5;在变量y中最终存储的是整数3。
b、可以将复制表达式的值再赋值给变量,形成连续赋值。
例如:x=y=25是一个连续赋值表达式,x=y=25等价于x=(y=25),所以表达式x=y=25最终的值为25。
二、复合的赋值运算符在赋值运算符之前加上其他运算符可以构成复合赋值运算符。
其中与算术运算有关的'复合运算符是:+=,—=,x=,/=,%=。
两个符号之间不可以有空格,复合赋值运算符的优先级与赋值运算符的相同。
表达式n+=1等价于n=n+1,作用是取变量n中的值增1再赋给变量n,其他复合的赋值运算符的运算规则依次类推。
如求表达a+=a—=axa的值,其中a的初值为12。
步骤:(1)先进行“a—=axa“运算,相当于a=a—axa=12—144=—132。
(2)再进行“a+=—132“运算,相当于a=a+(—132)=—132—132=—264。
C语言赋值运算符与赋值表达式2其一般形式为:变量=表达式例如:x=a+bw=sin(a)+sin(b)y=i+++--j赋值表达式的功能是计算表达式的值再赋予左边的变量。
c语言学习笔记第一章基础一、函数是c语言的基本单位,一个程序有一个或多个函数组成,且必须包含main函数(有且只有一个)二、程序总是从main函数开始执行三、c语言的3种基本结构是顺序结构、选择结构、循环结构四、//表示单行注释五、/* */表示块注释第二章常量定义:其值不能被改变的量叫常量一、整形常量例如:100,十进制数100-16,十进制数-1607,八进制数7-036,八进制数-36,等价于十进制数-300x19,十六进制数19,等价于十进制数25-0x2f,十六进制数-2f,等价于十进制数-47二、实型常量例如:3.5,double型常量2e3,double型常量-2e-1,double型常量6. double型常量,等于6.0.3 double型常量,等于0.62.5f float型常量三、字符常量1、普通字符:用‘’单撇号括起来的一个字符,如‘a’,‘9’2、转义字符:以\开头的字符,如\n,换行\t,tab键\\,单斜杠\\61,61是八进制数,等于十进制数49,即字符‘1’\x62,62是十六进制数,等于十进制98,既字符‘b’四、字符串常量用“”双撇号括起来的若干字符例如:“abc”,“”,“a”五、符号常量用#define指令指定的常量例如:#define PI 3.1415827第三章变量一、必须先定义(声明),后使用二、必须是一个合法的标识符三、一个合法的标识符必须满足以下3个条件1、只由字母、数字、_(下划线)三种字符组成2、首字符不能是数字3、不能与c语言的保留字冲突,如void,int等都是保留字四、数据类型1、字符型:char 如‘a’,‘\101’,‘\x41’,‘\n’2、整型:short(短整型)如:2,3,-5int(整型)如:3,89,-7long(长整型)如3l,0L前面可以加修饰符signed(有符号的)或unsigned(五符号的)例如:signed int,有符号整形unsigned int,无符号整形3、实型:float:如3.4fdouble:如4.2,1e2五、不同类型间数据的混合运算1、+,-,*,\运算中,只要有一个为float或double,结果为double型2、int与float或double运算,int、float都转换为double3、char与int运算,char转换为int4、char与float或double运算,char转换为double六、常用ASCII码‘0’=30H=48 ,1到9依次+1类推‘a’=61H=97 ,b到z依次+1类推‘A’=41H=65 ,B到Z依次+1类推第四章运算符一、常用运算符1、算术:+,-,*,/,%2、关系:>,<,>=,<=,==,!=3、逻辑:!,&&,||4、赋值:=,+=,-=,*=,/=,%=5、逗号运算符:,说明:1、关系和逻辑运算的结果只有两个,要么为真,要么为假2、C语言中0表示假,非0表示真3、c语言中将真赋值给其他变量时,其值为1二、优先级1、算术>关系>逻辑>赋值>逗号2、!(非)优先于算术3、*,\,% 优先于+,-4、>,<,>=,<=, 优先于==,!=5、&& 优先于||6、同级别运算符一般都是自左向右结合例如:a*b/c*e,等价于((a*b)/c)*e7、赋值运算符是自右向左结合例如:a=b=c=1,等价于a=(b=(c=1))三、自增(++),自减(--)1、i++,++i独立使用时没有区别,都等价于i=i+12、i--,--i独立使用时没有区别,都等价于i=i-13、i++,++i在其他语句中使用时是有区别的,i++,先使用i,再i=i+1例如:y=x++;等价于y=x;x=x+1;++i,先i=i+1,再使用i例如:y=++x;等价于x=x+1;y=x;4、i--,--i的区别等同i++,++i5、特殊情况1:0 && i++语句中,i++永运不执行6、特殊情况2:0 && ++i语句中,++i运不执行7、特殊情况3:1|| i++语句中,i++永运不执行8、特殊情况4:1|| ++i句中,++i运不执行9、特殊情况5:a++,b++,a+b语句中,先执行a=a+1,再执行b=b+1,最后a+b四、赋值1、+=,-=,*=,/=等复合赋值语句的优先级等同于=2、a+=3+4等价于a+=(3+4)3、a=b=c=4;等价于b=c;a=b;五,逗号运算符1、运算方向是自左向右例如:a++,b++,a+b等价于a++;b++;a+b;2、逗号表达式的结果为最后一个表达式的值例如:执行x=(3,4,5,6);后x=6第五章语句一、表达式:通过各种运算符将常量或变量连起来的式子就是表达式二、表达式后加;分号,构成语句三、空语句,只有一个;分号的语句四、复合语句,{。
1》知识点
2》归类:整型、字符型、浮点型、布尔类型
1》知识点:
》变量是存储数据的方法;
》变量名可用字母、数字、下划线并且大小写敏感;
》变量第一个字符只能是字母或下划线,不能是数字;
》关键字不能作为变量名;
》声明是指用数据库类型给给变量分配存储空间的过程,由编译器执行;
》未经声明的变量不能被直接使用。
2》归类(数据类型:关键字、所占字节数、数的表示范围、格式控制符、赋值举例)
1GB = 1024MB
1MB = 1024KB
1KB = 1024B (字节:Byte)
1B = 8b (位:bit)
2.1》整型
》有符号短整型:short int,2字节,
-2^15~2^15-1,%hd,short i = 100;
无符号短整型:unsigned short int,2字节,
0~2^16-1,%hu,unsigned short i = 10;
》有符号整型:int,4字节,-2^31~2^31-1,%d,int i = 123456;
无符号整型:unsigned int,4字节,0~2^32-1,%u,unsigned i = 200;
》有符号长整型:long int,8字节,
-2^63~2^63-1,%ld,long i = 123456789L;
无符号长整型:unsigned long int,8字节,
0~2^64-1,%lu,unsigned long i15 = 123456789L;
》有符号长长整型: long long int,8字节,
-2^63~2^63-1,%lld,long long i = 123456789012345L;
无符号长长整型:unsigned long long int,8字节,0~2^64-1,%llu,unsigned long long i16 = 98765432123L;
2.2》字符型
》有符号:char,1字节,-2^7~2^7-1,%c
无符号:unsigned char,1字节,0~2^8-1,%c
》char类型常见问题汇总:
》char类型不可以存储中文
char c4 = ‘中’;//字符类型不可以存储中文
》char类型值可以作为整数类型直接使用
char c1 = 'abc';//当用单引号引起多个字符时,只保留最后一个字符
printf("%c\n", d);//结果输出只有c
char c2 = '';//两个连续的单引号,表示不赋值,所以语法错误
char c3 = ' ’;//至少带一个空格
char c5 = 97;
printf("%d\n", c5);//输出字符对应的ASCII码
printf("%c\n", c5);//输出字符
2.3》浮点型
》单精度浮点型:float,4字节,10^-38~10^37,有效位数6位,%f,float a = 3.14f或3.14F;
双精度浮点型:double,8字节,10^-308~10^307,有效位数15位,%lf,double b = 3.14;
long double,16字节,10^-4932~10^4951,有效位数16位,%Lf,long double c = 3.14L;
》浮点类型常见问题汇总:
》默认的浮点字面值为double类型,如果需要表示float类型的字面值,需要加’f’或’F’后缀。
⁃》浮点数存在舍入误差问题。
由于浮点数内部用二进制的方式来表示十进制,会存在舍入误差。
二进制系统中无法精确地表示1/10,就好像十进
制系统中无法精确表示1/3一样。
对于一些要求精
确运算的场合会导致代码的缺陷。
//舍入误差
double money = 3.0;
double price = 2.9;
printf("%.17lf\n", money - price - 0.1);//二进制数无法精确表示1/10 输出结果:
0.00000000000000008
2.4》布尔类型
》bool,1字节,0或1,%d,bool b = 0或false;
》布尔类型常见问题汇总:
》除了给bool变量赋值0或false以外,其余赋值输出结果都为1。
// bool b2 = true;
// bool b2 = 200;
// bool b3 =“abc”;。