网站建设方案书纯文字引擎搜索器
C语言计算
1、变量
用途:需要存放输入的数据
定义格式:数据类型 + 变量名(用于区分其他变量)
变量名格式:只能由字母/下划线/数字构成,首位不能是数字;且变量名不能是标识符
**变量赋值和初始化:**使用 = 将右边的值赋值给左边,= 为操作符,有操作符的语句为表达式
如果变量没有初始化,则为内存中不确定的值。
C99标准是支持任意地方对变量进行定义,ANSI标准变量初试化只能放在程序开头。
2、程序输入
scanf("%d",&price)
使用scanf函数,类似printf函数,%d表示接受用户输入整数,&price赋值给price变量。
3、常量vs变量
#include<stdio.h>int main(int argc,char const *argv[]){int price = 0,change = 0;const int AMOUNT 100;printf("请输入金额:");scanf("%d",&price);change = AMOUNT - price;printf("找您%d元\n",change);return 0;
}
为了增加代码可读性,将固定的值100用const int定义为常量(只能C99标准下使用)
常量不可被修改
scanf函数中有几个%d,就会等到用户输入几个整数才会结束读入,中间的回车和空格不在计算当中。
4、表达式
时间差.c
设计思想:将时间转换成分钟为单位,然后作差。小时是差值对60除数,分钟是差值对60的余数
#include<stdio.h>int main(int argc,char const *argv[]){int hour1,hour2,minute1,minute2;int t1,t2,t;scanf("%d %d",&hour1,&minute1);scanf("%d %d",&hour2,&minute2);t1 = hour1 * 60 + minute1;t2 = hour2 * 60 + minute2;t = t1 - t2;printf("时间差是%d小时%d分钟。\n",t / 60,t % 60);return 0;
}
5、运算符优先级
±:单目运算符优先级最高,结合关系是自右向左
*/±:双目运算符优先级第二,符合数学规律,结合关系是自右向左
=:赋值运算优先级最低
a = b = c,运算逻辑是b赋值给c,然后运算结果赋值给a
减少嵌入式赋值,不容易阅读
6、交换两个变量
#include<stdio.h>int main(int argc,char const *argv[]){int a = 5,b = 6;int temp;temp = b;b = a;a = temp;printf("a = %d,b = %d\n",a,b);return 0;
}
程序是顺序执行的步骤,交换两个变量的值需要一个中间变量进行暂存,为程序编写中交换变量常用的套路。
7、复和赋值
会将赋值右边先进行运算,然后再进行赋值右边的运算。
递增递减运算符:++、–
只能对变量进行使用,且放在变量前的最先生效,放在变量后面,语句结束才生效。