全国计算机等级考试二级C语言考点(完整版)
全国计算机等级考试二级c语言题库及答案

全国计算机等级考试二级c语言题库及答案1. 以下哪个选项不是C语言中的运算符?A. 赋值运算符B. 逗号运算符C. 条件运算符D. 逻辑运算符答案:C2. 在C语言中,以下哪个关键字用于定义一个函数?A. structB. unionC. voidD. int答案:D3. 若有以下代码片段:```cint a = 5, b = 10;a = a + b;```执行后,变量a的值是多少?A. 5B. 10C. 15D. 20答案:C4. 在C语言中,哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A5. 下列哪个选项不是C语言中的控制语句?A. ifB. switchC. whileD. do-while答案:B6. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A7. 若有以下代码片段:```cint x = 3;printf("%d", x++);```执行后,输出的结果是多少?A. 3B. 4C. 2D. 5答案:A8. 在C语言中,以下哪个函数用于将字符串复制到另一个字符串?A. strcpy()B. strncpy()C. strcat()D. strcmp()答案:A9. 下列哪个选项不是C语言中的数组类型?A. 一维数组B. 二维数组C. 三维数组D. 指针数组答案:D10. 在C语言中,以下哪个关键字用于声明一个指针变量?A. intB. charC. floatD. void答案:D结束语:以上是全国计算机等级考试二级C语言的部分题库及答案,希望对您的学习和复习有所帮助。
全国计算机二级(C语言)等级考试题库(完整版)

1、2、3、4、5、6、78910111213【参考答案】long fun ( char *p){long n=0;int flag=1;if(*p=='-') /*负数时置flag为-1*/ {p++;flag= -1;}else if(*p=='+') /*正数时置flag为1*/p++;while(*p!='\0'){n=n*10+*p-'0'; /*将字符串转成相应的整数*/p++;}return n*flag;}1415161718192021222324252627282930313233343536【参考答案】void fun(int tt[M][N],int pp[N]){int i,j,max;for(j=0;j<N;j++){max=tt[0][j]; /*假设各列中的第一个元素最大*/for(i=0;i<M;i++)if(tt[i][j]>max) /*如果各列中的元素比最大值大,则将这个更大的元素看作当前该列中最大元素*/max=tt[i][j];pp[j]=max; /*将各列的最大值依次放入pp数组中*/}}37【参考答案】unsigned fun(unsigned w){int n=1,j,s=1;unsigned t;t=w;/*首先确定w的位数,用变量n保存*/while(t>=10){/*每次循环使s的位数减1,同时n加1*/t=t/10;n++;}/*求10的n-1次方*/for(j=1;j<n;j++)s=s*10;/*用w对10的n-1次方求余即可得到所求*/return w%s;}38【参考答案】void fun(char*s){char ch;int i,m,n;i=0;m=n=strlen(s)-1;/*将第i个和倒数第i个数互换,但循环的次数为数组长度的一半*/while(i<(n+1)/2){/*使用中间变量叫唤*/ch=s[i];s[i]=s[m];s[m]=ch;i++; m--;}}39【参考答案】void fun( char s[],int c){int i=0;char *p;p=s;while(*p) /*判断是否为结束符*/{if(*p!=c) /*判断字符串中字符是否与指定字符相同*/ {s[i]=*p;/*不同将重新组合字符串,*/i++;}p++; /*相同则处理下一个字符。
计算机二级考试C语言知识点总结

计算机二级考试C语言知识点总结(完全针对考试大纲)概述总体上必须清楚的:1)程序结构是三种:顺序结构,循环结构(三个循环结构),选择结构(if和switch)2)读程序都要从main()入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。
3)计算机的数据在电脑中保存是以二进制的形式.数据存放的位置就是他的地址.4)bit是位是指为0或1。
byte是指字节,一个字节二八个位.5)一定要记住二进制如何划成十进制。
概念常考到的:1)、编译预处理不是C语言的一部分,不再运行时间。
C语言编译的程序称为源程序,它以ASCI数值存放在文本文件中。
2)、每个C语言程序中main函数是有且只有一个。
3)、在函数中不可以再定义函数。
4)、算法的是一定要有输出的,他可以没有输入。
5)、break可用于循环结构和switch语句。
6)、逗号运算符的级别最低。
第一章1)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。
有其它元素就错了。
并且第一个必须为字母或则是下划线。
第一个为数字就错了。
关键字不可以作为用户标识符号。
main define scanf printf都不是关键字。
迷惑你的地方If是可以做为用户标识符。
因为If中的第一个字母大写了,所以不是关键字。
2)实型数据的合法形式:2.333e-1就是合法的,且数据是2.333 X 101。
考试口诀:e前e后必有数,e后必为整数。
.3) 字符数据的合法形式::'1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。
'0' 的ASCII数值表示为48, 'a'的ASCII数值是97, 'A'的ASCI数值5。
4) 整型一般是两个字节,字符型是一个字节,双精度一般是4个字节:考试时候一般会说,在16位编译系统,或者是32位系统。
碰到这种情况,不要去管,一样做题。
计算机二级c语言考试真题及答案详解

计算机二级c语言考试真题及答案详解一、单项选择题(每题2分,共40分)1. 在C语言中,以下哪个选项是合法的整型常量?A. 0x12B. 0x12.3C. 0x12LD. 0x12.3L答案:A2. 若有定义int a=1, b=2;,则以下哪个表达式的值不为真?A. a<bB. a<=bC. a>bD. a!=b答案:C3. 在C语言中,以下哪个选项是合法的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World\n"D. "Hello, World\0"答案:A4. 下列哪个函数不能正确计算数组元素的总和?A. sum = 0; for(i=0; i<n; i++) sum += array[i];B. sum = 0; for(i=0; i<n; i++) sum = sum + array[i];C. sum = 0; for(i=0; i<n; i++) sum = array[i];D. sum = 0; for(i=0; i<n; i++) sum += array[i];答案:C5. 在C语言中,以下哪个选项是合法的函数声明?A. int add(int, int);B. int add();C. int add(int a, int b);D. int add(a, b);答案:C6. 若有定义int a[10];,则以下哪个表达式是合法的数组元素访问?A. a[10]B. a[-1]C. a[3.5]D. a[3]答案:D7. 在C语言中,以下哪个选项是合法的指针声明?A. int *ptr;B. int *ptr[];C. int ptr*;D. int ptr[];答案:A8. 若有定义int x=10;,则以下哪个表达式是合法的赋值语句?A. x = x + 1;B. x = 1 + x;C. x = x++;D. x = ++x;答案:A9. 在C语言中,以下哪个选项是合法的循环语句?A. for(;;)B. while(1)C. do {} while(0)D. for(;;) {}答案:D10. 若有定义int a[5] = {1, 2, 3, 4, 5};,则以下哪个表达式是合法的数组元素访问?A. a[5]B. a[-1]C. a[2.5]D. a[2]答案:D11. 在C语言中,以下哪个选项是合法的switch语句?A. switch(x) { case 1: break; }B. switch(x) { default: break; }C. switch(x) { case 1: case 2: break; }D. switch(x) { case 1: default: break; }答案:C12. 若有定义int x=5;,则以下哪个表达式是合法的自增运算?A. x++;B. ++x;C. x--;D. --x;答案:A13. 在C语言中,以下哪个选项是合法的函数原型声明?A. void func();B. int func(int);C. void func(int a);D. All of the above答案:D14. 若有定义int a=3;,则以下哪个表达式是合法的位运算?A. a & 2B. a | 2C. a ^ 2D. All of the above答案:D15. 在C语言中,以下哪个选项是合法的宏定义?A. #define PI 3.14159B. #define PI 3.14159fC. #define PI 3.14159LD. All of the above答案:A二、编程题(每题30分,共60分)1. 编写一个函数,计算并返回一个整数数组中所有元素的和。
全国计算机等级考试二级C语言笔试高频考点

文件的关闭:使用 fclose()函数,需要 提供文件指针
打开方式:r(只读 )、w(只写)、 (追加)、r+(读 写)、w+(写读) 、+(追加读写)
错误处理:使用 ferror()函数和 clererr()函数进行 错误检测和清除
文件的读写操作
文件的打开和关闭:使用fopen()和fclose()函数 文件的读写:使用fred()和fwrite()函数 文件的定位:使用fseek()函数 文件的随机读写:使用fgetc()和fputc()函数 文件的格式化读写:使用fscnf()和fprintf()函数 文件的缓冲区管理:使用setbuf()和setvbuf()函数
文件操作
05
文件的基本概念
文件:存储在磁盘上的一组相关数据的集合 文件类型:文本文件、二进制文件、数据文件等 文件名:标识文件的唯一名称,由字母、数字、下划线组成 文件路径:定位文件的路径,包括绝对路径和相对路径
文件的打开与关闭
文件的打开:使用 fopen()函数,需要 提供文件名和打开 方式
调试技巧与注意事项
• 使用断点调试:设置断点,逐步执行代码,查看变量值和程序状态 • 使用单步调试:逐行执行代码,查看变量值和程序状态 • 使用打印语句:在关键位置插入打印语句,查看变量值和程序状态 • 使用调试工具:使用调试工具,如Visul Studio的调试器,查看变量值和程序状态 • 注意变量类型和范围:避免变量类型不匹配和越界访问 • 注意逻辑错误:避免逻辑错误,如条件判断错误、循环控制错误等 • 注意函数调用和参数传递:避免函数调用错误和参数传递错误 • 注意内存管理:避免内存泄漏和野指针错误 • 注意代码规范和命名规则:遵守代码规范和命名规则,提高代码可读性和可维护性
全国计算机等级考试二级C语言公共基础知识(附例题)

第1章数据结构与算法经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是算法复杂度、数据结构的概念、栈、二叉树的遍历、二分法查找,读者应对此部分进行重点学习。
详细重点学习知识点:1.算法的概念、算法时间复杂度及空间复杂度的概念2.数据结构的定义、数据逻辑结构及物理结构的定义3.栈的定义及其运算、线性链表的存储方式4.树与二叉树的概念、二叉树的基本性质、完全二叉树的概念、二叉树的遍历5.二分查找法6.冒泡排序法1.1算法考点1 算法的基本概念考试链接:考点1在笔试考试中考核的几率为30%,主要是以填空题的形式出现,分值为2分,此考点为识记内容,读者还应该了解算法中对数据的基本运算。
计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法.1.算法的基本特征:可行性、确定性、有穷性、拥有足够的情报。
2.算法的基本要素:(1)算法中对数据的运算和操作一个算法由两种基本要素组成:一是对数据对象的运算和操作;二是算法的控制结构。
在一般的计算机系统中,基本的运算和操作有以下4类:算术运算、逻辑运算、关系运算和数据传输。
(2)算法的控制结构:算法中各操作之间的执行顺序称为算法的控制结构.描述算法的工具通常有传统流程图、N—S结构化流程图、算法描述语言等。
一个算法一般都可以用顺序、选择、循环3种基本控制结构组合而成。
考点2 算法复杂度考试链接:考点2在笔试考试中,是一个经常考查的内容,在笔试考试中出现的几率为70%,主要是以选择的形式出现,分值为2分,此考点为重点识记内容,读者还应该识记算法时间复杂度及空间复杂度的概念。
1.算法的时间复杂度算法的时间复杂度是指执行算法所需要的计算工作量。
同一个算法用不同的语言实现,或者用不同的编译程序进行编译,或者在不同的计算机上运行,效率均不同。
这表明使用绝对的时间单位衡量算法的效率是不合适的。
撇开这些与计算机硬件、软件有关的因素,可以认为一个特定算法"运行工作量”的大小,只依赖于问题的规模(通常用整数n表示),它是问题规模的函数。
(完整版)二级C语言知识点大汇总,推荐文档

计算机二级考试C语言知识点总结(完全针对考试大纲)总体上必须清楚的:1)程序结构是三种: 顺序结构, 循环结构(三个循环结构), 选择结构(if 和switch)2)读程序都要从main()入口, 然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择)。
3)计算机的数据在电脑中保存是以二进制的形式. 数据存放的位置就是他的地址.4)bit是位是指为0 或者1。
byte 是指字节, 一个字节= 八个位. 000111105)一定要记住二进制与十进制互化。
概念常考到的:1、编译预处理不是C语言的一部分,不再运行时间。
C语言编译的程序称为源程序,它以ASCII数值存放在文本文件中。
2、每个C语言程序中main函数是有且只有一个。
3、在函数中不可以再定义函数。
4、算法的是一定要有输出的,他可以没有输入。
5、break可用于循环结构和switch语句。
6、逗号运算符的级别最低。
第一章1)合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。
有其它元素就错了。
并且第一个必须为字母或则是下划线。
第一个为数字就错了。
关键字不可以作为用户标识符号。
main define scanf printf if都不是关键字。
迷惑你的地方If是可以做为用户标识符。
因为If中的第一个字母大写了,所以不是关键字。
2)实型数据的合法形式:2.333e0.1 就是合法的,且数据是2.333×10-1。
考试口诀:e前e后必有数,e后必为整数。
.3)字符数据的合法形式::'1' 是字符占一个字节,"1"是字符串占两个字节(含有一个结束符号)。
'0' 的ASCII数值表示为48,'a' 的ASCII数值是97,'A'的ASCII数值是65。
4)整型一般是两个字节, 字符型是一个字节,双精度一般是4个字节: 考试时候一般会说,在16位编译系统,或者是32位系统。
全国计算机二级C语言(完整复习资料)

电脑二级C复习资料公共基础知识资料第一章数据结构与算法【考点1】算法的基本概念算法:是指一组有穷的指令集,是解题方案的准确而完整的描述。
算法不等于程序,也不等于计算方法。
算法的基本特征:确定性,算法中每一步骤都必须有明确定义,不允许有多义性;有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止;可行性,算法原则上能够精确地执行;拥有足够的情报。
算法的组成要素:一个算法由数据对象的运算和操作以及其控制结构这两部分组成。
算法的基本运算和操作:算术运算,逻辑运算,关系运算,数据传输。
算法的基本控制结构:顺序,选择,循环。
算法基本设计方法:列举法、归纳法、递推、递归、减半递推技术。
【考点2】算法的复杂度算法效率的度量——算法的复杂度:时间复杂度和空间复杂度。
算法时间复杂度:指执行算法所需要的计算工作量。
通常,一个算法所用的时间包括编译时间和运行时间。
算法空间复杂度:指执行这个算法所需要的内存空间。
包括算法程序所占的空间,输入的初始数据所占的空间,算法执行过程中所需的额外空间。
空间复杂度和时间复杂度并不相关。
【考点3】数据结构的基本概念数据:数据是客观事物的符号表示,是能输入到电脑中并被计算程序识别和处理的符号的总称,如文档,声音,视频等。
数据元素:数据元素是数据的基本单位。
数据对象:数据对象是性质相同的数据元素的集合。
数据结构:是指由某一数据对象中所有数据成员之间的关系组成的集合。
【考点4】逻辑结构和存储结构数据结构可分为数据的逻辑结构和存储结构。
数据的逻辑结构是对数据元素之间的逻辑关系的描述,与数据的存储无关,是面向问题的,是独立于电脑的。
它包括数据对象和数据对象之间的关系。
数据的存储结构也称为数据的物理结构,是数据在电脑中的存放的方式,是面向电脑的,它包括数据元素的存储方式和关系的存储方式。
数据结构和逻辑结构的关系:一种数据的逻辑结构可以表示成多种存储结构即数据的逻辑结构和存储结构不一定一一对应。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言二级考点(完整版)第一章…… C语言基础知识第二章……顺序结构第三章……选择结构第四章. ……循环结构第五章……函数第六章……指针第七章……数组与指针第八章……数组与函数第九章……字符串第十章……结构体与共用体第十一章……文件第一章C语言基础知识考点1. C语言程序的结构认识本节通过一个简单的c程序例子,介绍c语言的基本构成、格式、以及良好的书写风格,使读者对c语言有个初步认识。
例1 计算两个整数之和的c程序:#include<stdio.h>main(){int a,b,sum; /*定义变量a,b,sum为整型变量*/a=20; /*把整数20赋值给整型变量a*/b=15; /*把整数15赋值给整型变量b*/sum=a+b; /*把两个数之和赋值给整型变量sum*/printf("a=%d,b=%d,sum=%d\n",a,b,sum);/*把计算结果输出到显示屏上*/}重点说明:1、任何一个c语言程序都必须包括以下格式:main(){ }这是c语言的基本结构,任何一个程序都必须包含这个机构。
括号内可以不写任何内容,那么该程序将不执行任何结果。
2、main()----在c语言中称之为“主函数”,一个c程序有且仅有一个main函数,任何一个c程序总是从main函数开始执行,main函数后面的一对圆括号不能省略。
3、被大括号{ }括起来的内容称为main函数的函数体,这部分内容就是计算机要执行的内容。
4、在{ }里面每一句话后面都有一个分号(;),在c语言中,我们把以一个分号结尾的一句话叫做一个c语言的语句,分号是语句结束的标志。
5、printf(“a=%d,b=%d,sum=%d\n”,a,b,sum); ----通过执行这条c语言系统提供给我们直接使用的屏幕输出函数,用户即可看到运行结果,本程序运行后,将在显示器上显示如下结果:a=20,b=15,sum=356、#include<stdio.h>注意:(1)以#号开头(2)不以分号结尾这一行没有分号,所以不是语句,在c语言中称之为命令行,或者叫做“预编译处理命令”。
7、程序中以/*开头并且以*/结尾的部分表示程序的注释部分,注释可以添加在程序的任何位置,为了提高程序的可读性而添加,但计算机在执行主函数内容时完全忽略注释部分,换而言之就是计算机当做注释部分不存在于主函数中。
考点2. C程序的生成过程C程序是先由源文件经编译生成目标文件,然后经过连接生成可执行文件,如图所示。
编译过程源程序的扩展名为.c ,目标程序的扩展名为.obj , 可执行程序的扩展名为.exe 。
考点3. 标识符在编写程序时,必须为函数、变量等命名,这个名字称为标识符。
C语言中标识符的命名规则如下:1、标识符只能由字母、数字、下划线组成;2、标识符的第一个字母必须是字母和下划线;3、标识符区分大小写字母,如If和if是两个完全不同的标识符。
合法标识符如下:A6, b_3 , _mn非法的标识符如下:ab#12 , 8m , tr3:4 , yes no标识符不能与程序中具有特殊意义的关键字相同,不能与用户编制的函数名、C语言库函数相同,在程序中各种标识符尽量不要重复,以便区分。
选择变量名和其他标识符时,应注意做到“见名知义”。
标识符分为如下三类:1、关键字关键字是具有特定含义的,专门用来说明c语言特定成分的一类标识符,不能用作用户的标识符。
2、预定义标识符预定义标识符在c语言中也有特定的含义,但可以用作用户标识符,预定义标识符分为两类:(1)、库函数名字,比如(printf,scanf,sin,isdigit等)(2)、编译处理命令名,比如(define,include)3、用户标识符用户根据需要自己定义的标识符称为用户标识符。
无论如何自定义标识符,都必须符合标识符的三条命名规则。
考点4. 常量在程序运行中,其值不能被改变的量称为常量。
常量有5种类型:整型常量、实型常量、字符常量、字符串常量和符号常量。
4.1 数值转换数字的四种表现形式:l 二进制:所有数字由0,1构成,逢二进一,二进制数中不会出现2.。
例:110101l 八进制:以数字0(注意不是以字母O,o)开头,所有数字由0~7构成,逢八进一,八进制数中不会出现8。
例:0112,0123,077等l 十进制:所有数字由0~9构成,逢十进一,十进制数中不会出现10。
例:0,12,-15等l 十六进制:以0x或者0X(数字0加字母x)开头,所有数字由0~9,A~F(或者a~f)构成,逢十六进一(其中A、B、C、D、E、F分别代表10、11、12、13、14、15)例:0x4A 0X14c7等在计算机内部,数字均以二进制形式表示和存放,用户输入的普通十进制数字都要被计算机转换成二进制才能在计算机内部存储,同样计算机的运算结果也为二进制,一般要将其转换成十进制数再输出给用户阅读,这种转换通常由计算机自动实现。
(1)将十进制转换二进制、八进制和十六进制除法:将十进制数除以2,记录余数,得到的商继续除以2,直到商为0,然后将各次相处所得的余数从后往前逆序排列,所得余数数字序列就是该十进制数对应的二进制数。
八进制和十六进制转换方法同上。
例:十进制数13转换成二进制数的值为1101,转换八进制为015,转换成十六进制为D.(2)将二进制、八进制和十六进制转换成十进制乘积求和:将二进制的每一位从低位到高位(右边为低位,左边为高位)分别乘以20,21,22。
,然后将这些积求和。
例如:(1101)2=(13)10 (317)8=(207)10 (23E)16=(574)10(3)二进制与八进制、十六进制数之间的相互转换①二进制转八进制:从右往左每三位一组转换成十进制数,将所得数据组合就是对应的八进制数(注意:高位不足三位补零)。
例:(010 110 111)2=(267)8②二进制转十六进制:从右往左每四位一组转换成十进制数,将所得数据组合就是对应的十六进制数(注意:高位不足四位补零)。
例:(0101 1011)2=(5B)16③八进制转化二进制:每一位数字转换为三位二进制数字例:(13)8=(001 011)2=(1011)2(注意:去掉前面的两个00,因为0在高位没有意义)④十六进制转化二进制:每一位数字转换为四位二进制数字例:(E3)16=(1110 0011)24.2 整型常量整型常量有3种形式:十进制整型常量、八进制整型常量和十六进制整型常量。
(注意:c语言中没有直接表示二进制的整型常量,在c语言源程序中不会出现二进制。
)书写方式如下:十进制整型常量:123 ,0 ,-24 , 85L(长整型常量)等八进制整型常量:051 ,-026 ,0773 等十六进制整型常量:0x55 , 0x1101 , 0x , 0x5AC0 , -0xFF。
其中L为长整型。
4.3 实型常量实型常量有两种表示形式:小数形式和指数形式。
小数形式:5.4 0.074 -23.0指数形式:5.4e0 4.3e-3 -3.3e4(1)小数部分为0的实型常量,可以写为453.0 或453。
(2)用小数表示时,小数点的两边必须有数,不能写成“.453“和“453.“,而应该写成“0.453“和“453.0“。
(3)用指数写法时,e前必须有数字,e后面的指数必须为整数(注意:整数阶码可以是正数,负数,也可以是八进制数、十六进制数,但必须为整数)。
4.4 字符常量字符常量的标志是一对单引号‘’,c语言中的字符常量有两类:(1)由一对单引号括起来的一个字符,如‘a ’, ‘r’,‘#’。
注意: ′a′和′A′是两个不同的字符常量。
(2)由一对单引号括起来,以反斜杠\开头,后跟若干数字或者字母,比如‘\n’,其中“\“是转义的意思,后面跟不同的字符表示不同的意思,这类字符常量叫转义字符。
具体如图所示。
4.5 字符串常量C语言中,以双引号括起来的,由若干个字符组成的序列即为字符串常量。
例:“ni hao”“happy”等等。
4.6 符号常量符号常量是由宏定义“#define“定义的常量,在C程序中可用标识符代表一个常量。
例:计算圆的面积的c程序。
#include <stdio.h>#define PI 3.14159main(){float r,s;r=12.5;s=PI*r*r;printf("s= %f",s);}说明:#define 是宏定义,有关宏定义在以后的章节中详细说明,此程序中所有出现PI的地方都代表3.14159,同时PI称为符号常量。
习惯上我们用大写字母来表示符号常量,小写字母表示变量,这样比较容易区别。
考点5. 变量变量就是其值可以改变的量。
变量要有变量名,在内存中占据一定的存储单元,存储单元里存放的是该变量的值。
不同类型的变量其存储单元的大小不同,变量在使用前必须定义。
5.1 整型变量整型变量分为4种:基本型(int)、短整型(short int 或short)、长整型(long int 或long)和无符号型(unsigned int ,unsigned short,unsigned long)。
不同的编译系统对上述四种整型数据所占用的位数和数值范围有不同的规定。
说明:单词signed来说明“有符号”(即有正负数之分),不写signed也隐含说明为有符号,unsigned用来说明“无符号”(只表示正数)。
5.2 实型变量C语言中,实型变量分为单精度类型( float )和双精度类型( double )两种。
如:float a , b ;double m ;在vc中,float 型数据在内存中占4个字节(32位),double型数据占8个字节。
单精度实数提供7位有效数字,双精度实数提供15~16位有效数字。
实型常量不分float型和double型,一个实型常量可以赋给一个float 型或double 型变量,但变量根据其类型截取实型常量中相应的有效数字。
注意:实型变量只能存放实型值,不能用整型变量存放实型值,也不能用实型变量存放整型值。
5.3 字符变量字符变量用来存放字符常量,定义形式:char 变量名;其中关键字char定义字符型数据类型,占用一个字节的存储单元。
例:char cr1,cr2;cr1= ‘A’, cr2=‘B’;将一个字符赋给一个字符变量时,并不是将该字符本身存储到内存中,而是将该字符对应的ASCII码存储到内存单元中。
例如,字符′A′的ASCII码为65,在内存中的存放形式如下:01000001由于在内存中字符以ASCII码存放,它的存储形式和整数的存储形式类似,所以C语言中字符型数据与整型数据之间可以通用,一个字符能用字符的形式输出,也能用整数的形式输出,字符数据也能进行算术运算,此时相当于对它们的ASCII码进行运算。