例2-1(自己用的编号,后面同)
#include <stdio.h>
int main(void)
{
int fahr,lower,upper;
double celsius;
printf("Enter lower");
scanf("%d",&lower);
printf("Enter upper");
scanf("%d",&upper);
if(lower<=upper){
printf("fahr celsius\n");
for(fahr = lower;fahr<=upper;fahr++)
{celsius =(5.0/9.0)*(fahr-32);
printf("%4d%6.1f\n",fahr,celsius);
}
}else{
printf("Invalid Value!\n");
}
return 0;
}
现在逐行解释这个小程序
#include <stdio.h>
它是编译预处理命令,因为后面调用的printf()函数是C语言提供的标准输出函数,在系统文件stdio.h中声明。
int main(void)
定义了一个叫做mian()的函数,该函数的返回值为整数型(int),参数在函数名后面的一对括号中定义,这里的关键字void意思是mian()函数不需要参数。
关于main()函数,main()函数在C语言中是一个特殊的函数,被称作主函数,任何一个程序都必须要有而且只能有一个main()函数,并且当程序运作时,首先从main()函数开始执行。
int fahr,lower,upper;
double celsius;
这里是定义了三个int型变量,分别叫做 fahr,lower,upper;和一个double类型的变量,分别叫做celsius;
关于变量:C语言中变量在使用之前,都必须要先定义。定义变量时要确定变量的名字和数据类型。每个变量必须要有一个名字作为标识,变量名代表内存中的一个储存单元,用于存放该变量的值,而该存储单元的大小由变量的类型决定。例如:定义整型变量fahr后,fahr代表内存中一个存储单元,该单元有4个字节,用于存放整数
printf("Enter lower");
printf("%4d%6.1f\n",fahr,celsius);
关于printf()函数:
函数printf()的一般调用格式为:
printf(格式控制符字符串,输入参数1,……,输入格式n);
格式控制字符串包含两种信息,格式控制说明和普通字符。
格式控制说明:按指定格式输出数据,它包含以%开头的格式控制字符,不同类型的数据采用不同的格式控制字符。例如,int类型数据采用%d,float和double类型用%f。
普通字符:在输出数据时,需要原样输出的字符。例如:
printf("fahr = %d,celsius = %d\n",fahr,celsius);
在格式控制字符串中包含格式控制说明(两个%d)和一些普通字符(如等号,逗号和换行符)。输出时,所有的普通字符都被原样输出,在两个%d的位置上,依次输出变量fahr和celsius的值
printf()函数的输出参数必须要和格式控制字符串中的格式控制说明相对应,并且它们的类型,个数和位置要一一对应。例如,fahr和celsius都是int变量,输出时要用%d,且fahr和第一个%d对应,celsiu和第二个%d相对应。
scanf("%d",&lower);
关于scanf()函数:
函数scanf()的一般调用格式为:
scanf(格式控制字符串,输入参数1,……,输入参数n);
输入控制字符串表示输入的格式,输入参数是变量地址(变量名前加&)。
格式控制字符串中包含两种信息:格式控制说明和普通字符。
格式控制说明:按指定的格式读入数据,它包含以%开头的格式控制字符,不同类型的数据采用不同的格式控制字符。int类型数据用%d,float类型数据使用%f,而double类型数据使用%lf。
scanf()函数的输入参数必须要和格式控制字符串中的格式控制说明相对应,并且它们的类型,个数和位置要一一对应。
普通字符:在输入数据时,需要原样输入的字符。
if-else语句和for()语句将在后面章节里面解释,暂时略过。(懒)
return 0;
它结束main()函数的运行,并且向系统返回一个整数0,作为程序的结束状态。由于main()函数的返回值是整数型,因此,任何整数都可以作为返回值。按照惯例,如果main()函数返回0,说明程序运行正常,返回其他数值则用于表示各种不同的错误情况。系统可以通过检查返回值来判断程序的运行是否成功。