变量和表达式在C语言中随处可见
现在就利用C语言来写一个华氏温度和摄氏温度的对照表
华氏温度和摄氏温度的对应公式为:设施温度=(5/9)(华氏温度-32)
效果如下
[root@]# ./sheshidu
华氏温度 摄氏温度
0 = -17
20 = -6
40 = 4
60 = 15
80 = 26
100 = 37
120 = 48
140 = 60
160 = 71
180 = 82
200 = 93
220 = 104
240 = 115
260 = 126
280 = 137
300 = 148
下边是源代码:
[root@]# cat sheshidu.c
#include <stdio.h> //宏定义头文件
main() //主main函数
{ //函数体
int i, S; //变量声明第一处
int F_max, F_min, buchang; //变量声明第二处
F_min = 0; //变量赋值
F_max = 300;
buchang = 20;
i = F_min; //变量赋值
printf("华氏温度 摄氏温度\n"); //打印函数
while ( i <= F_max) { //while循环的开始和循环条件
S = 5 * ( i - 32 ) / 9; //计算出摄氏温度和华式温度的对应关系
printf("%d\t=\t%d\n", i, S); //printf函数打印出i华氏温度和S摄氏温度
i = i + buchang; //步长,隔几度算一次
} //循环体结束
} //main函数结束
第一个知识点 声明
在C语言中,使用一个变量的时候,必须先声明之
如:
int i, S;
此处是变量的声明部分,将i,S两个变量声明成int类型
int为什么要声明?
因为C在调用变量之前,必须要有这个变量的存储空间,声明就是问系统申请这个变量的存储空间
一个int类型的值需要多少内存空间?
按编译器而定gcc一般是32位,那么最大值是32个1,十进制是4294967295取值范围应该是-2147483647~2147483647一共是4294967294再加一个0
win下的TC编译器则是16位,那么最大值是16个1,十进制为65535取值范围是(65535-1)/2 一共是+/-的32767之间
64位的编译器则int按以上规则推算
当然C语言的变量类型不止int一种以后有接触到的现解决或者查看有关C语言变量声明的资料,此处笔者只是按int类型来说明这个问题。
此处变量的声明还有一个特点
int i,S;