1.3 for语句
for语句的基本格式如下:
for(初始化部分;条件部分;增加步长部分)
{
循环体
}
for语句是一种循环语句,是对while语句的推广,只是for语句的操作更直观一些。for后面的圆括号共包含3个部分,各部分用分号隔开。当循环体部分只要一条语句时,大括号也可以不要。
具体见下面温度转换程序:
#include <stdio.h>
/*打印华氏温度-摄氏温度对照表*/
main()
{
int fahr;
for(fahr=0;fahr<=300;fahr=fahr+20)
printf("%3d %6.1f\n",fahr,(5.0/9.0)*(fahr-32));
}
1.4 符号常量
在程序中,经常使用300,20等类似的常数并不是一个好习惯。第一,它们几乎无法为阅读者提供什么信息;第二,当程序规模较大时,这些数使得程序修改变得很困难。
所以,在C语言中,通常的方法是赋予这些数意义的名字。#define指令可以把符号名(或符号常量)定义为一个特定的字符串:
#define 名字 替换文本
定义之后,
1. 程序中出现的所有在#define中定义的名字都将用相应的替换文本替换;
2. 名字命名方式与普通变量名相同,都是以字母打头的字母和数字序列;
3. 替换文本可以是任何字符序列,不仅仅局限于数字。
所以上述温度转换程序可以改写为:
#include <stdio.h>
/*打印华氏温度-摄氏温度对照表*/
#define LOWER 0 /*表的下限*/
#define UPPER 300 /*表的上限*/
#define STEP 20 /*步长*/
main()
{
int fahr;
for(fahr=LOWER;fahr<=UPPER;fahr=fahr+STEP)
printf("%3d %6.1f\n",fahr,(5.0/9.0)*(fahr-32));
}
注意:
1. #define指令行的末尾没有分号;
2. LOWER和UPPER等都是符号常量,而非变量,不需要进行声明;
3. 为了与用小写字母拼写的变量名区别,符号常量通常用大写字母拼写。
1.5 字符输入/输出
C语言的标准库中提供了一次读/写一个字符的函数,最简单的是getchar和putchar两个函数。
1. 调用getchar函数,从文本流中读入下一个输入字符,并将其作为结果值返回。即在执行语句c=getchar()之后,变量c中将包含输入流中的下一个字符。
2. 调用putchar函数,将打印一个字符,通常显示在屏幕上。即在执行putchar(c)后,将整型变量c的内容以字符形式打印出来。