留学群专题频道计算机二级C语言考点栏目,提供与计算机二级C语言考点相关的所有资讯,希望我们所做的能让您感到满意!
04-27
留学群为考生们整理了“2018年9月计算机二级C语言考点解析”,希望有所帮助,想了解更多考试资讯,请关注小编的及时更新哦。
2018年9月计算机二级C语言考点解析:字符型数据
6.1字符常量
有两种形式:一是用单引号括起来的一个单字符,如′a′,′?′,′=′;二是″转义字符″,即以″\″开头的字符序列。常用的转义字符见下表。
字符形式功能
\n换行
\t横向跳格(即跳到下一个输出区)
\v竖向跳格
\b退格
\r回车
\f走纸换页
\\反斜杠字符″\″
\′单引号(撇号)字符
\″双引号(″)字符
\ddd1到3位8进制数所代表的字符,如\123,表示8进制数123
\xhh1到2位16进制数所代表的字符,如\x21,表示16进制数23
在转义字符赋给字符变量时,也需要在其二侧加单引号,如:
charc=′\n′;
字符串常量是用一对双引号括起的字符序列,如″abc\n″。
请区别字符变量和字符串常量。′a′是字符常量,″a″是字符串常量。在内存中,字符常量占一个字节,而对字符串常量,则在字符串的后面加一个″字符串结束标志″,以便系统据此判断字符串是否结束。用′\0′(即ASCII代码为0的字符,即″空字符″)作为字符串结束的标志。例如,′a′内存占两个字节,即:a\0。
6.2字符变量
字符变量用来存放一个字符常量,字符变量用char来定义。如:
chara,b;
a=′0′;b=′k′;
printf(″%c%c\n″,a,b);
将输出两个字符ok。
不能将一个字符串常量赋给一个字符变量,如:
a=″0″;b=″k″;
是错误的。
给字符变量赋值可以采用如下三种方法:
(1)直接赋以字符常量,如char=′A′;
(2)赋以″转义字符″,如:
charc=′\\′;
printf(″%c″,c);
输出一个字符″\″。
(3)赋以一个字符的ASCII代码,如字符′a′的ASCII代码为97,则
charc=97;
printf(″%c″,c);
将输出一个字符″a″。实际上,字符数据在内存中是以整数形式(字符ASCII代码)存放的,例如,字符′a′的ASCII码为97,在内存字节中的存放形式为:
01100001
在输出时,如果指定输出字符的格式符″%c″输出,则输出字符′a′(在输出时先将ASCII码转换为字符)。如果指定按输出整数的格式″%d″输出(如printf(″%d″,c)),则输出一个整数97。
应记住,字符数据与整型数据二者间是通用的,可以互相赋值和运算,如:
inta=′A′;
charc=97;
print(″%d\n″,c-a...
04-27
留学群为考生们整理了“2018年9月计算机二级C语言考点解析”,希望有所帮助,想了解更多考试资讯,请关注小编的及时更新哦。
2018年9月计算机二级C语言考点解析:条件语句
一个表达式的返回值都可以用来判断真假,除非没有任何返回值的void型和返回无法判断真假的结构。当表达式的值不等于0时,它就是“真”,否则就是假。一样个表达式可以包含其他表达式和运算符,并且基于整个表达式的运算结果可以得到一个真/假的条件值。因此,当一个表达式在程序中被用于检验其真/假的值时,就称为一个条件。
一、if语句
if(表达式) 语句1;
如果表达式的值为非0,则执行语句1,否则跳过语句继续执行下面的语句。
如果语句1有多于一条语句要执行时, 必须使用{和} 把这些语句包括在其中, 此时条件语句形式为:
if(表达式)
{
语句体1;
}
例如:
if(x>=0) y=x;
if(a||b&&c)
{
z=a+b;
c+=z;
}
二、if--else语句
除了可以指定在条件为真时执行某些语句外,还可以在条件为假时执行另外一段代码。在C语句中利用else语句来达到这个木的。
if(表达式) 语句1;
else 语句2;
同样,当语句1或语句2是多于一个语句时,需要用{}把语句括起来。
例如:
if(x>=0) y=x;
else y=-x;
三、if--else if--else结构。
if(表达式1)
语句1;
else if(表达式2)
语句2;
else if(表达式3)
语句3;
.
.
.
else
语句n;
这种结构是从上到下逐个对条件进行判断,一旦发现条件满点足就执行与它有关的语句, 并跳过其它剩余阶梯;若没有一个条件满足,则执行最后一个else 语句n。最后这个else常起着缺省条件的作用。同样,如果每一个条件中有多于一条语句要执行时,必须使用{和}把这些语句包括在其中。
条件语句可以嵌套,这种情况经常碰到,但条件嵌套语句容易出错,其原因主要是不知道哪个if对应哪个else。
例如:
if(x>20||x<-10)
if(y<=100&&y>x)
printf(Good);
else
printf(Bad);
对于上述情况, Turbo C2.0规定: else语句与最近的一个if语句匹配, 上例中的else与if(y<=100&&y>x)相匹配。为了使else与if(x>20||x<-10)相匹配, 必须用花括号。如下所示:
if(x>20||x<-10)
{
if(y<=100...
04-27
留学群为考生们整理了“2018年9月计算机二级C语言考点解析”,希望有所帮助,想了解更多考试资讯,请关注小编的及时更新哦。
2018年9月计算机二级C语言考点解析:循环语句和循环函数
循环语句和循环函数
Turbo C 2.0提供三种基本的循环语句: for语句、while语句和do-while语句。
一、循环语句
(一)、for循环 它的一般形式为:
for(<初始化>;<条件表过式>;<增量>)
语句;
初始化总是一个赋值语句,它用来给循环控制变量赋初值;条件表达式是一个关系表达式,它决定什么时候退出循环;增量定义循环控制变量每循环一次后按什么方式变化。这三个部分之间用;分开。
例如:
for(i=1;i<=10;i++)
语句;
上例中先给i赋初值1,判断i是否小于等于10,若是则执行语句,之后值增加1。再重新判断,直到条件为假,即i>10时,结束循环。
注意:
(1).for循环中语句可以为语句体,但要用{和}将参加循环的语句括起来。
(2).for循环中的初始化、条件表达式和增量都是选择项,即可以缺省,但;不能缺省。省略了初始化,表示不对循环控制变量赋初值。省略了条件表达式,则不做其它处理时便成为死循环。省略了增量,则不对循环控制变量进行操作,这时可在语句体中加入修改循环控制变量的语句。
(3).for循环可以有多层嵌套。
例如:
for(;;) 语句;
for(i=1;;i+=2) 语句;
for(j=5;;) 语句;
这些for循环语句都是正确的。
main()
{
int i,j;
printf(i j\n);
for(i=0;i<2;i++)
for(j=0;j<3;j++)
printf(%d %d\n,i,j);
}
输出结果为:
i j
0 0
0 1
0 2
1 0
1 1
1 2
用for循环求1+2+……+100的和:
main()
{
int sn=0,i;
for(i=1;i<=100;i++)
sn+=i; /*1+2+……+100*/
printf(%d\n,sn);
}
从程序可以看出,使用循环语句可以大大简化代码。
(二)、while循环 它的一般形式为:
while(条件)
语句;
while循环表示当条件为真时,便执行语句。直到条件为假才结束循环。并继续执行循环程序外的后续语句。
例如:
#include stdio.h
main()
{
...
04-20
留学群在这里为考生们整理了“2018年9月计算机二级C语言考点解析”,希望能帮到大家,想了解更多考试资讯,请关注小编的及时更新哦。
2018年9月计算机二级C语言考点解析:运算符
无论是加减乘除还是大于小于,都需要用到运算符,在C语言中的运算符和我们平时用的基本上都差不多。
运算符包括赋值运算符、算术运算符、逻辑运算符、位逻辑运算符、位移运算符、关系运算符、自增自减运算符。大多数运算符都是二目运算符,即运算符位于两个表达式之间。单目运算符的意思是运算符作用于单个表达式。(具体什么是表达式下一节再说)
一、赋值运算符
赋值语句的作用是把某个常量或变量或表达式的值赋值给另一个变量。符号为‘=’。这里并不是等于的意思,只是赋值,等于用‘==’表示。
注意:赋值语句左边的变量在程序的其他地方必须要声明。
得已赋值的变量我们称为左值,因为它们出现在赋值语句的左边;产生值的表达式我们称为右值,因为她它们出现在赋值语句的右边。常数只能作为右值。
例如:
count=5;
total1=total2=0;
第一个赋值语句大家都能理解。
第二个赋值语句的意思是把0同时赋值给两个变量。这是因为赋值语句是从右向左运算的,也就是说从右端开始计算。这样它先total2=0;然后total1=total2;那么我们这样行不行呢?
(total1=total2)=0;
这样是不可以的,因为先要算括号里面的,这时total1=total2是一个表达式,而赋值语句的左边是不允许表达式存在的。
二、算术运算符
在C语言中有两个单目和五个双目运算符。
符号 功能
+ 单目正
- 单目负
* 乘法
/ 除法
% 取模
+ 加法
- 减法
下面是一些赋值语句的例子, 在赋值运算符右侧的表达式中就使用了上面的算术运算符:
Area=Height*Width;
num=num1+num2/num3-num4;
运算符也有个运算顺序问题,先算乘除再算加减。单目正和单目负最先运算。
取模运算符(%)用于计算两个整数相除所得的余数。例如:
a=7%4;
最终a的结果是3,因为7%4的余数是3。
那么有人要问了,我要想求它们的商怎么办呢?
b=7/4;
这样b就是它们的商了,应该是1。
也许有人就不明白了,7/4应该是1.75,怎么会是1呢?这里需要说明的是,当两个整数相除时,所得到的结果仍然是整数,没有小数部分。要想也得到小数部分,可以这样写7.0/4或者7/4.0,也即把其中一个数变为非整数。
那么怎样由一个实数得到它的整数部分呢?这就需要用强制类型转换了。例如:
a=(int) (7.0/4);
因为7.0/4的值为1.75,如果在前面加上(int)就表示把结果强制转换成整型,这就得到了1。那么...
04-20
留学群在这里为考生们整理了“2018年9月计算机二级C语言考点解析”,希望能帮到大家,想了解更多考试资讯,请关注小编的及时更新哦。
2018年9月计算机二级C语言考点解析:用户标识符的作用域和存储类
12.1局部变量和全局变量
在函数内部或复合语句内部定义的变量称为局部变量。函数的形参属于局部变量。在函数外部定义的变量称为全局变量。有时,局部变量也称为内部变量,全局变量也称为外部变量。
12.2变量的存储属性(自动、静态、寄存器、外部),变量的作用域和生存期
C语言中来说明变量存储属性的关键字有四个:auto(自动)、static(静态)、register(寄存器)、extern(外部)。
1.局部变量的存储属性
局部变量可以是自动类别(用auto,register说明),也可以是静态类别(用static说明)。形参只能是自动存储类别,不允许是static类别。
当局部变量未指明类别时,被自动说明成自动(auto)变量。这类局部变量称为自动变量。其值存放在内存的动态存储区,因此在退出作用域后,变量被自动释放,其值不予保留。
当局部变量说明成寄存器(register)类型时,与自动(auto)变量一样属于自动类别,所不同的是此时变量的值保留在CPU中的寄存器中。
当变量说明成static(静态)类型时,称这样的变量为静态局部变量。在程序运行期间,它占据一个永久的存储单元,在函数退出后,变量的值仍旧保留。
2.全局变量的存储属性
全局变量都属于静态存储类别,可以用extern和static对它们进行说明。
当一个文件中要引用另一文件中的全局变量或在全局变量定义前要引用它时,可用extern说明。相当于扩大全局变量的作用域。
用static(静态)说明的全局变量称为静态全局变量,它仅能由本文件引用,即使在其文件中用extern说明也不能使用,它相当于限制了全局变量作用域的扩展。
12.3内部函数和外部函数
1.在C语言中,所有的函数在本质上都是外部函数。
2.函数定义时用extern进行说明称为外部函数。函数的隐含类别为外部函数,外部函数可以被其他文件调用。
3.定义函数时用static进行说明称为静态函数,也称内部函数。静态函数也是外部函数,只是它仅局限于它所在的文件,其他文件不能调用。
推荐阅读:
04-20
留学群在这里为考生们整理了“2018年9月计算机二级C语言考点解析”,希望能帮到大家,想了解更多考试资讯,请关注小编的及时更新哦。
2018年9月计算机二级C语言考点解析:字符串
10.1字符串与字符数组
1.字符数组的定义
定义方法与前面介绍的类似,只是将数组定义为字符型即可。例如:
charc[10];
这里定义了一个包含10个元素的字符数组c。
2.字符数组的初始化
对字符数组初始化,可以采用以下方法:
(1)逐个字符赋给数组中各元素;
(2)用字符串常量使字符数组初始化。
3.字符串
在C语言中,字符串是作为字符数组来处理的,字符串可以存放在字符型一维数组中,故可以把字符型一维数组作为字符串变量。
字符串常量是用双引号括起来的一串字符。
C语言中约定用′\0′作为字符串的结束标志,它占内存空间,但不计入串的长度,′\0′的代码值为0。
系统对字符串常量也自动加一个′\0′作为结束符。例如″clanguage″共有10个字符,但在内存中占11个字节,最后一个字节存放′\0′。
4.字符数组的输入输出
(1)逐个字符输入和输出
①在标准输入输出printf和scanf中使用%c格式描述符;
②使用getchar和putchar函数。例如:
for(i=0;i<10;i++)
scanf(″%c″,&str[i]);/*或str[i]=getchar();*/
str[i]=′\0′;/*人为加上串结束标志*/
for(i=0;i<10;i++)
printf(″%c″,str[i]);/*或putchar(str[i]);*/
(2)字符串整体输入输出
①在标准输入输出函数printf和scanf中使用%s格式描述符;
输入形式:
charstr[6];
scanf(″%s″,str);
其中str为字符数组名,代表着str字符数组的起始地址,输入时系统自动在每个字符串后加入结束符′\0′。若同时输入多个字符串,则以空格或回车符分隔。
输入形式:
printf(″%s″,str);
输字符串时,遇第一个′\0′即结束。但可人为控制输出串所占的域宽如:
printf(″%6s″,str);/*若字符串中字符多于6个,仍将全部输出*/
printf(″%-6s″,str);/*只输出前6个字符,多余的不输出*/
②使用gets和puts函数输入输出一行
gets函数用来从终端键盘读字符,直到遇换行符为止,换行符不属字符串的内容。
调用形式:
gets(str);
str为字符数组名或字符指针,字符串输入后,系统自动将′\0′置于串尾代替换行符。若输入串长超出数组定义长度时,系统报错。
Puts函数用来...
04-20
留学群在这里为考生们整理了“2018年9月计算机二级C语言考点解析”,希望能帮到大家,想了解更多考试资讯,请关注小编的及时更新哦。
2018年9月计算机二级C语言考点解析:编译预处理和动态存储分配
13.1宏定义(不带参数的宏定义,带参数的宏定义)
1.编译预处理就是对C源程序进行编译前,由″编译预处理程序″对预处理命令行进行处理的过程。
2.C语言中,凡是以″#″开头的行,都称为″编译预处理″命令行。C语言中的编译预处命令有:#define,#undef,#include,#if,#else,#elif,#endif,#ifdef,#ifndef,#line,#pragma,#error。这些预处理命令组成的预处理命令行必须在一行的开头以″#″号开始,每行的未尾不得加″;″号,以区别于C语句、定义和说明语句。
3.不带参数的宏定义:命令的一般形式为:
#define标识符字符串
定义中的″标识符″为用户定义的标识符,称为宏名。在预编译时,C预编译程序将出现的宏名替换成″字符串″的内容,这一过程也称为宏展开。
4.带参数的宏定义:命令的一般形式为
#define宏名(形式参数)字符串
定义中的″字符串″应包含括号中所指定的形式参数。注意宏名与括号之间不要加空格,否则就成为不带参数的宏定义了。
5.预编译时,遇到带实参的宏名,则按命令行中指定的字符串从左到右进行置换,原则是:遇到实参则以实参代替,非形参字符原样保留,从而成展开后的内容。
13.2“文件包含”处理
1.文件包含的一般形式为:
#include″头文件名″
#include<头文件名>
头文件名一般由C语言提供,也可以是用户自己编写的,头文件通常用.h作为后缀。
2.当头文件名用双引号括起来时,系统首先在使用此命令的文件所在的目录中查找被包含的文件,找不到时,再按系统指定的标准方式检索其它目录;当头文件名用尖括号括起来时,则直接按系统指定的标准检索方式查找被包含的文件。
3.预编译时,将被包含文件的内容全部复制到包含文件中,这就是文件″包含处理″。
13.3条件编译
C语言中的条件编译命令可对源程序代码的各部分有选择地进行编译。条件编译主要有如下3种使用格式:
使用格式1:
#ifdef标识符
程序段1
#else
程序段2
#endif
使用格式2:
#ifndef标识符
程序段1
#else
程序段2
#endif
使用格式3:
#if表达式
程序段1
#else
程序段2
#endif
使用格式1表示如果已定义了“标识符”,则编译“程序段1”,否则编译“程序段2”;使用格式2表示如没有定义了“标识符”,则编译“程序段1”,否则编译“程序段2”;使用格式3表示如“表达...
04-20
留学群在这里为考生们整理了“2018年9月计算机二级C语言考点解析”,希望能帮到大家,想了解更多考试资讯,请关注小编的及时更新哦。
2018年9月计算机二级C语言考点解析:初步知识
2.1程序的构成
尽管C程序的内容千变万化,但是它们的构成都是一致的,一个完整的C源程序的格式可以如下表示:
编译预处理
主函数()
函数()
.
.
.
函数()
从上面中可以看出,一个C源程序实际上就是若干函数的集合,这些函数中有一个是程序的主函数,任何C的源程序执行时,都是从主函数开始执行的,其它的函数最终必将被这个主函数所调用。C语言除了主函数规定必须取名main外,其它的函数名可以任取,但是要符合C的标识符取名规则,另外注意不要与保留字重名,最好也不可与C语言中的库函数或其它一些命令如编译预处另命令重名。各个函数在程序中所处的位置并不是固定的,但要求一个函数是完整的、独立的。不允许出现在一个函数内部又去定义另一个函数,或是函数格式不齐全的现象。一个完整的一般意义上的函数有一个固定的框架,编写具体的函数时,只需在这个框架中填入相应的内容即可。框架如下:
函数类型函数名(形参)
形参说明
{
内部变量说明;
执行语句部分;
}
2.2C语言的基本词法
C语言的基本词法由三部分组成:符号集、关键字、保留字。
符号集就是一门语言中允许出现的字符的集合,C语言的符号集就是ASCⅡ码表中的一些字符,在键盘上不能直接得到(比如说响铃字符),C语言引入了转义字符的概念,利用反斜杠符号″\″后加上字母的一个字符组合来表示这些字符,当在源程序中遇到这类字符组合时,虽然这个字符组合是一个字符串的形式,但C语言仍会自动将之理解成某一特定的字符。比如″\″,C语言在处理这个字符组合时,会自动理解成回车换行符号。转义字符经过进一步引申应用,形成了另外两种形式:″\ddd″和″\xnn″,这里″\″后的ddd和xnn分别代表三位八进制和两位十六进制数(打头的″x″只是标明后面跟着的是十六进制数),这两种形式不再局限于表示不可打印的字符,它们可以表示ASCⅡ码表中的任意字符,只要把所需表示的字符的ASCII码转换成八进制数或十六进制数即可。比如说字母″A″,ASCII码为65,65的八进制和十六进制分别为101和x41,所以,字母A可表示为″\101″或″\x41″,对转义字符应认真理解。
标识符就是用以标识的符号。正如现实生活中给每一个人都取一个名字一样,C语言中的每一个对象(如函数、变量等)都必须取一个标识符以和其它对象区别开。在C语言中,这个标识符是一个字符串,这个字符串的选定有一定的规则:必须是以字母或下划线开头的字母与数字的序列。除了这个基本的规则外,C语言对标识符的命名还有几个限制需加以注意:①长度最好不要超过八个字符。因C中对标识符只处理前8个字符,超过8个长度的部分将被C自动忽略掉。″ABCDEFGH1″和″ABCDEFH2″是同一个标识符;②标识符不要与保留字同名,最好也不要与C提供的标准标识符,如库函数重名;③应注意C语言对大小写字母是敏...
12-17
计算机二级考试就要开始咯,赶快复习起来吧,留学群竭尽全力为各位同学准备了“2017计算机二级C语言考点:数据输入和输出”,希望对各位考生有帮助。
数据输入和输出
【考点1】printf函数
格式为:printf(输出控制,输出列表)。输出控制是用一对双引号括起来的,包含格式说明和原样信息。输出列表包含若干输出项。
%d对应整型,%f对应单精度实型,%c对应字符型,%o对应八进制无符号整型,%x对应无符号十六进制整型,%u对应无符号整型,%e对应指数型,%s对应字符串型。可在%和格式字符之间加一个数来控制数据所占的宽度和小数位数。
【考点2】scanf函数
格式为:scanf(输入控制,输入列表)
注意该函数的第二个部分是&a 这样的地址,不是a;
scanf(“%d%d%*d%d”,&a,&b,&c); 跳过输入的第三个数据。
【考点3】putchar与getchar函数
可用于输出或输入单个字符,这两个函数是stdio.h文件中的库函数,它们是printf与scanf函数的简化。
char a = getchar() 是没有参数的,从键盘得到你输入的一个字符给变量a。
putchar(‘y’)把字符y 输出到屏幕中。
【考点4】如何交换两个变量
如何实现两个变量x ,y 中数值的互换(要求背下来)
不可以把 x=y ,y=x; 要用中间变量 t=x;x=y;y=t。
【考点5】实现保留三位小数
如何实现保留三位小数,第四位四舍五入的程序
float x=12.34567;
float y=((int)(x*1000+0.5))/1000.0;
这个有推广的意义,注意 x = (int)x 这样是把小数部分去掉。
...计算机二级C语言考点推荐访问