文章教程

全国计算机等级考试二级C语言13.2C语言的基本结构

8/22/2020 10:24:52 PM 人评论 次浏览

13.2 C语言的基本结构

考点5 格式输入与输出

1.printf()用于格式化输出数据

格式:printf(格式控制,输出列表);

其中,格式控制是用“”引起来的部分,它包括两种信息:格式转换说明和原样输出的字符。输出列表是需要输出的一些数据,可以是常量、变量或表达式。

printf("HelloWorld!!");  原样输出字符串HelloWorld!!

printf("%5d",123);    输出□□123,即123前面还有两个空格,5表示格式输出长度

printf("%2d",123);    输出123,即如果格式长度不足,则按实际长度输出

printf("%c",c);    输出字符型变量c,其中c一定被赋值过

printf("%s","string");  输出字符串string

printf("%f",a);    输出单精度数a

printf("%2.2",1.2);   输出“□1.20”,即前面一个空格,小数点后两位有效数字

2.scanf()用于格式化输入数据

格式:scanf(格式控制,地址列表);

其中,格式控制与printf()函数相同,只是没有位数的设置。

值得注意的是,格式化输入字符的时候,空格也是被当做一个字符输入的,所以连续输入多个字符的时候,中间一定不能添加空格,例如:

#include<stdio.h>

void main(){

char a,b,c;

scanf("% c% c% c",&a,&b,&c);

/* 容易忽略的地方是输入时候的空格以及这里的取地址符* /

scanf("% c % c % c",&a,&b,&c);

可以看到,如果在格式控制中添加空格,那么连续输入字符的时候添加空格就是合法的。

3.putchar()用于向终端输出一个字符

格式putchar()

putchar('a');    将字符a输出在屏幕上

putchar(65);    将ASCII码为65的字符输出在屏幕上

char a= 'c';putchar(a);将字符型变量a的值输出在屏幕上

4.getchar()用于从终端获得一个字符

格式getchar()

题型剖析:输入输出是基本知识点,其他的功能往往通过输入输出来体现。考点主要有以下3个方面

(1)格式控制,根据输出列表判断格式控制的形式。

(2)输出列表,根据题目要求不同,输出不同结果。

(3)地址列表,根据题目要求,输入不同的数据。

该知识点通常会在填空题和改错题中出现。填空题中会要求根据格式控制、输出列表或地址列表的部分内容补充另外部分的内容,从而符合语法要求。而改错题则是要求判断格式控制、输出列表、地址列表之间的对应关系是否正确,如小数点后有效位数的保留情况,小数点之前整数位数预留情况,输入输出的格式中空格的作用,等等。

另外,应用scanf()函数接收终端输入的时候,带入的待赋值变量参数一定要是加上取址符号&,以传值引用的方式调用,否则,可能出现未初始化,或者计算错误等问题。

考点6 条件与分支(if,switch)

1. if语句

if条件语句可以有两种形式:if(exp){}或者if(exp){} else{}。在嵌套结构中,else只与其前面最近的且未匹配的if匹配,或者,在嵌套结构中直接应用{}将if…else搭配关系表示清楚。

例如:

inta=0;

if(1)a=3;

if(0)a=4;

elsea=5;

得到的答案是5,而下面的代码:

inta=0;

if(1){

a=3;

if(0)a=4;

}

elsea=5;

得到的答案是3。

if语句的另外一种表达方法是三目运算符,即(exp1)?exp2:exp3;,等价于if(exp1)exp2;elseexp3;,同样的三目表达式也可以嵌套。

$,8A469B语句

分支语句switch是支持多分支的选择语句,用来实现多分支选择结构。

格式:

switch(exp){

caseconstexp1:exp1;

caseconstexp2:exp2;…

default:expn;

}

如果想在执行某条case语句后直接跳出分支判断,则在exp后面添加break;即可。每个case的值应该不同,否则会出现冲突。

题型剖析if语句作为条件判断必不可少的语句,考查广泛分布在填空题、改错题、编程题中,尤以编程题中居多。考查方式主要有如下。

(1)if语句的表达式,一般根据题目要求填入判断的条件,如if(______)。语句的表达式有很多种,可以是简单的算术表达式、逻辑表达式,也可以是带有指针、数组等变量的表达式。

(2)if语句体,根据题目要求填入判断后应执行的语句,如if(a==0){______}。

(3)if的嵌套形式,应该注意if语句的配对,在填空题中可以考查根据嵌套形式写出结果,也可以在改错题中判断所应用的嵌套形式中某个条件是否正确,是否满足算法的判断要求。

switch语句的考查主要涉及填空题中语句的书写形式。一般根据题目要求填入表达式,如switch(______),或选择条件及执行语句,如case ______:______;,或考查break语句。

考点7 循环

1.常用的循环语句

while(exp) {}        当exp为真时,执行语句

do{}while(exp);      先执行语句,然后判断exp是否为真,若为真则继续执行

for(exp1;exp2;exp3){}   应用exp1初始化,满足条件exp2则执行,变化为exp3

其中{}表示要执行的语句块。

循环是可以嵌套的,其实质是对应语句块的嵌套,也就是{}的配对。

考试中,循环的考查方式往往是给出一段程序,然后让考生填写循环表达式。循环表达式包括:循环变量的出始化,循环变量的取值范围及以循环的结束条件等。

2.跳出循环的语句(continue,break)

continue:表示跳过本次循环,而直接继续执行下一次循环。

break:表示跳出整个循环体,直接执行该循环的后继语句。

题型剖析:

(1)while语句中条件表达式的考查。一般根据题目要求填入循环条件,如while(______)。while与if语句的表达式一样有很多种,可以是简单的算术表达式、逻辑表达式,也可以是带有指针、数组等变量的表达式。

(2)while结构语句的考查,根据题目要求填入循环执行语句,如while(a>5&&a<10){______}

(3)do…while循环是经常考查的知识点,其考查形式如下:

①循环条件。即while语句的表达式的考查,与while语句考查形式基本相同。

②循环体。根据题目要求填写,基本与while循环体语句的考查形式相同。但是要注意do…while循环先执行循环体,再进行循环判断,而while循环是先进行循环判断,再执行循环体。

③与迭代算法一起考查,如求级数,或者求阶乘。

(4)for语句是C语言中最常用的循环体语句

①考查循环起始条件,继续条件,循环变量。如:for(______;______;______);

②for语句的执行语句部分的考查,根据题目要求写出循环执行语句,如:for(i=0;i<100;i++){______;______}。

(5)循环嵌套多出现在复杂的算法中,常见的考查形式有以下两种。

①循环嵌套的形式:6种基本嵌套形式。

②for循环的嵌套,执行的过程,内循环的执行以及循环语句的结束条件。

教程类别