#include<stdio.h>
int main()
{
int price =0;
printf("请输入变量");
scanf("%d",&price);
int change = 100-price;
printf("找您%d元。\n",change);
return 0;
}
int price =0;.
这一行定义了一个变量。名字price,类型为int,初始值为0。
变量是一个保存数据的地方,当我们需要在程序中保存数据时,比如上面的例子中要用户输入价格时就需要一个变量来保存它。用一个变量保存数据,它才能参加到后面的计算中,比如计算找零。
变量的一般形式:<类型名称><变量名称>;
如:int price;
int price,amount;
变量的名字是一种“标识符”,它是用来区分不同变量的。变量的名字由数字,字母,和下划线构成,且不能由数字开头。
C语言的保留字:(不要死记硬背,再后来的编程中自然而然会记住)
auto,break,case,char,const,continue,default,do,double,else,enum,extern,float,for,goto,if,int,long,register,return,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile,while,inline,restrict
变量的赋值和初始化
int price = 0;
这个式子中的 “=”表示赋值运算符,把0赋值给price。数学中的a=b;表示a和b是相等的这是一个等式,而程序中a=b,表示一个动作,把b赋值给a。
变量的初始化:如果没有给变量的赋初值,这个变量的初始值不是0,而是一个任意数。
变量的初始化:<类型名称><变量名称>=<初始值>;
变量类型:C语言是一种有类型的语言,所有变量必须要在使用之前定义或声明,所有变量必须有确定的数据类型,数据类型表示在变量中可以放什么样的数据类型。
int price = 0;
这一行定义了一个变量。变量的名字是price,类型是int,初始值是0。
int change = 100-price;
这一条语句,定义了一个变量,并且把一个减法式子的结果赋给了change。
读整数:scanf("%d",&price);
scanf函数要求用户输入一个整数,并且赋值给price。
常量:
int change = 100-price;
这个式子中的100是一个常数。
一般程序中的常数用常量代替:
#include<stdio.h>
int main()
{
const int AMOUNT = 100;
int price =0;
printf("请输入变量");
scanf("%d",&price);
int change = AMOUNT-price;
printf("找您%d元。\n",change);
return 0;
}
或者预定义:#defined AMOUNT 100
这样定义常量的好处:
1.程序可读性提高,别人看到100,可能不知道代表什么意思,但读到AMOUNT就知道这是个金额。
2.当程序中多次用到这个常量,要修改这个常量时,便于修改。
一次读两个变量:
int a,b;
scanf("%d %d",&a,&b);
printf("%d + %d = %d\n",a,b,a+b);
浮点数:
计算身高的程序:把英尺转换成米
#include <stdio.h>
int main()
{
printf("请分别输入身高的英尺和英寸,"
"如输入\"5 7\"表示5英尺7英寸:");
double foot;
int inch;
scanf("%d %d", &foot, &inch);
printf("身高是%f米。\n",
((foot + inch / 12) * 0.3048));
return 0;
}
((foot + inch / 12) * 0.3048));
因为inch变量 和12 这个常数都是整型,因此计算出来的也是整型。inch/12的值只保留整数部分,小数部分都扔掉了。
解决办法1:
((foot + inch / 12.0) * 0.3048));
整数和浮点数计算会转化成浮点型。
解决办法2:
把inch定义成double类型。
double inch;