2.1.4
scanf后面字符串里的内容是他要读的内容,输入的东西
2.1.5
#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;
}
常量
int change=100-price
固定不变的数,是常数。直接写在程序里,我们称作直接常量(literal).
更好的方式定义一个常量 ...const int AMOUNT=100;
const是一个修饰符,加在int的前面,用来给这个变量加上一个const不变的属性,表示这个变量的值一旦初始化,就不可以在修改了。(后面单词全大写)
(用有意义的单词更容易理解数字是什么,例子中的AMOUNT就是)
#include <stdio.h>
int main()
{
int amount=100;
int price=0;
printf("请输入金额(元):");
scanf("%d",&price);
printf("请输入票面");
scanf("%d",&amount);
int change=amount-price;
printf("找您%d元。\n",change);
return 0;
}
这么做可以让用户输入变量AMOUNT的值,而不是使用固定的初始值。
#include <stdio.h>
int main()
{
int a;
int b;
printf("请输入两个整数:");
scanf("%d %d",&a,&b);
printf("%d + %d =%d\n",a,d,a+b);
return 0;
}
这么做一个scanf可以读入两个整数(%d)
2.1.6
计算身高的程序(尺寸转化成米)
#include <stdio.h>
int main ()
{
printf("请分别输入身高的英尺和英寸,"
"如输入\"5 7\"表示5英尺7英寸:");
int foot;
int inch;
scanf("%d %d",&foot,&inch);
printf("身高是%f米。\n",
((foot + inch / 12) * 0.3048));
return 0;
}
这个图中编程无论输入5 7,5 9,5 0,答案都是1.524。。。。错了
因为两个整数的运算c语言中结果也只能是整数(不带小数点的数是整数)
浮点数
带小数点的数值。浮点这个词的本意就是指小数点是浮动的,是计算机內部表达非整数(包括分数和无理数)的一种方式。另一种方式叫做定点数,不过c语言中你不会遇到定点数。人们借用浮点数这个词来表达所有的带小数点的数。
10和10.0是不同的数,10.0是浮点数
当浮点数和整数放到一起运算时,c会将整数转化成浮点数,然后进行浮点数的运算。
改正方法一后的身高计算程序(12改成12.0)
#include <stdio.h>
int main ()
{
printf("请分别输入身高的英尺和英寸,"
"如输入\"5 7\"表示5英尺7英寸:");
int foot;
int inch;
scanf("%d %d",&foot,&inch);
printf("身高是%f米。\n",
((foot + inch / 12.0) * 0.3048));
return 0;
}
改正方法2(inch类型表示整数改成double类型的浮点数变量)
double的意思是"双",他本来表示“双精度浮点数”的第一个单词,人们用来表示浮点类型。除了double,还有float(意思就是浮点!)表示单精度浮点数。*double......%lf*
#include <stdio.h>
int main()
{
printf("请分别输入身高的英尺和英寸,"
"如输入\"5 7\"表述5英尺7英寸:");
double foot;
double inch;
scanf("%lf %lf",&foot,&inch);
printf("身高是%f。\n",
((foot+inch/12)*0.3048));
return 0;
}
数据类型
整数 int
printf("%d",........);输出
scanf("%d",..........)输入
浮点数(带小数点的数)
double
printf("%f",......);输出
scanf("%lf",......)输入