变量和表达式

引入:输入是以行为单位进行的,行的结束标志就是你按下了回车键。在你按下回车之前,你的程序不会读到任何东西

一.变量

1.1 变量定义:
<类型名称><变量名称>;
int price;
int amount;
int price,amount;

int price = 0; 这一行,定义了一个变量。变量的名字是price,类型是int ,初始值是0。

1.2 变量名的构造规则:
说明:变量的名字是一种“标识符”(或叫保留字)意思是它用来识别这个和那个的不同的名字。
基本原则:标识符只能由字母、数字和下划线组成,数字不可以出现在第一个位置上,C语言的关键字不可以用做标识符。
1.3 赋值:
int price = 0; 右边的值0,赋给左边的变量名price
1.4 变量的初始化:
<类型名称><变量名称>=<初始值>;
int price = 0;
int amount = 100;
组合变量定义的时候,也可以在这个定义中单独给单个变量赋初值,如:
int price = 0,amount = 100;

#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;	
}

计算机如何读整数 : 格式化(format) scanf("%d",&price);
scanf(格式化的输入)这个函数读入用户输入的整数,读到的结果赋值给变量price

第一种情况:空格必须输入一个东西
scanf("%d %d “, &a, &b);
在这里插入图片描述
第二种情况:必须要有一个东西满足\n
scanf(”%d %d\n", &a, &b);
在这里插入图片描述
第三种情况:scanf里面必须完整的读用户输入的东西
在这里插入图片描述
1.5 常量
固定不变的数,是常数。直接写在程序里,我们称作直接量(literal) 。更好的方式,是定义一个常量:
const int AMOUNT = 100;
const是一个修饰符,加在int的前面,用来给这个变量加上一个const (不变的)的属性。这个const的属性表示这个变量的值一旦初始化,就不能再修改了。一般它后面的变量名全大写。

二.数据类型

2.1 整型VS浮点型

带小数点的数值。浮点这个词的本意就是指小数点是浮动的,是计算机内部表达非整数(包含分数和无理数)的一种方式。另一种方式叫做定点数,不过在C语言中你不会遇到定点数。人们借用浮点数这个词来表达所有的带小数点的数。

inch是定义为int类型的变量,如果把int换成double,我们就把它改为double类型的浮点数变量了。

double的意思是‘“双’它本来是“双精度浮点数”的第一个单词,人们用来表示浮点数类型。除了double,还有float (意思就是浮点! )表示单精度浮点数。

整数带小数点的数
intdouble
printf("%d",…)printf("%f",…)
scanf("%d",…)scanf("%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;
}

三.表达式

3.1 表达式
一个表达式是一系列运算符和算子的组合,用来计算一个值

运算符(operator) 是指进行运算的动作,比如加法运算符“+”,减法运算符“”

算子(operand)是指参与运算的值,这个值可能是常数,也可能是变量,还可能是一个方法的返回值
在这里插入图片描述
3.2 四则运算:
在这里插入图片描述

#include <stdio.h>

int main()
{
	int hour1,minute1;
	int hour2,minute2;
	
	scanf("%d %d",&hour1,&minute1);
	scanf("%d %d",&hour2,&minute2);
	
	int t1 = (hour1*60)+minute1;
	int t2 = (hour2*60)+minute2;
	
	int t = t1-t2;
	
	printf("时间差是%d小时%d分钟。",t/60,t%60);
	
	return 0;
}

3.3 运算符优先级
在这里插入图片描述
赋值运算符
赋值也是运算,也有结果
a=6的结果是a被赋予的值,也就是6
a=b=6 一> a=(b=6)

结合关系
一般自左向右
单目±和赋值=自右向左

3.4 交换两个变量

#include <stdio.h> 
int main()
{
	int a = 5;
	int b = 6;
	int temp;
	
	temp = a;
	a = b;
	b = temp;
	
	printf("a=%d,b=%d\n",a,b);
	return 0;	
}

3.5 复合赋值

5个算术运算符,+ - * / %,可以和赋值运算符“=”结合起来,形成复合赋值运算符
+=、-=、*=、/=和%=

total += 5;
total = total + 5;
注意两个运算符中间不要有空格

total += (sum+100)/2;
total = total + (sum+100)/2;

total *= sum + 12;
total = total * (sum+12);

3.6 “++” "–“运算符

“++"和“–”是两个很特殊的运算符,它们是单目运算符,这个算子还必须是变量。这两个运算符分别叫做递增和递减运算符,他们的作用就是给这个变量+1或者-1。
count++;
count += 1;
count = count + 1;

++和–可以放在变量的前面,叫做前缀形式,也可以放在变量的后面,叫做后缀形式。

a++的值是a加I以前的值,而++a的值是加.了I以后的值,无论哪个,a自己的值都加了1了。

#include <stdio.h>

int main()
{
	int a;
	a = 10;
	
	printf("a++=%d\n", a++);//10
	printf("a=%d\n",a);     //11
	
	printf("++a=%d\n", ++a);//12
	printf("a=%d\n",a);     //12
	
	return 0;
} 

在这里插入图片描述
INC = 递增,DEC = 递减

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值