一 程序框架
#include<stdio.h>
int main()
{
return 0;
}
二 尝试简单的程序
1 做点计算
#include<stdio.h>
int main()
{
printf("12+76=%d",12+76) ;
return 0;
}
2 找零(change.c)
#include<stdio.h>
int main()
{
int price=0;
printf("请输入金额(元):");
scanf("%d",&price);
int change=100-price;
printf("找您%d元.\n",change);
return 0;
}
或
#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;
}
或
#include<stdio.h>
int main()
{
int amount =0;
int price=0;
printf("请输入金额(元):");
scanf("%d",&price);
printf("请输入票面(元)");
scanf("%d",&amount);
int change=amount-price;
printf("找您%d元.\n",change);
return 0;
}
3 plus.c
#include<stdio.h>
int main()
{
int a;
int b;
printf("请输入两个整数:");
scanf("%d %d",&a,&b);
printf("%d+%d=%d\n",a,b,a+b);
return 0;
}
4 身高单位转换
#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;
}
5 计算时间差
#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 = t2-t1;
printf("时间差是%d小时%d分。",t/60,t%60);
return 0;
}
6 求平均值
#include<stdio.h>
int main()
{
int a,b;
scanf("%d %d",&a,&b);
double c = (a+b)/2.0;
printf("%d和%d的平均值为%f\n",a,b,c);
return 0;
}
7 计算简单复利(三年)
#include<stdio.h>
int main()
{
int x;
scanf("%d",&x);
double amount = x * (1+0.033) * (1+0.033) * (1+0.033);
printf("%f", amount);
return 0;
}
8 交换变量
#include<stdio.h>
int main()
{
int a=5;
int b=6;
int t;
t=a;
a=b;
b=t;
printf("a=%d,b=%d\n",a,b);
return 0;
}
三 变量
1 变量是一个保存数据的地方,当我们需要在程序里保存数据时,比如上面2中要记录用户输入的价格,就需要一个变量来保存它。然后这个数据才可以参加后面的计算,比如计算找零。
2 变量定义:<类型名称><变量名称>
比如上面2中的 int price;
#其中变量名称是一种“标识符”,用以区分。
标识符只能由由字母、数字和下划线组成,且数字不可以出现在第一个位置上,C语言的关键字不可以用作标识符
3 赋值与初始化
赋值是计算机做的一种动作,比如a=b意为把b的值赋给a,反过来意思则相反
变量的初始化是变量定义时就进行赋值,并不强制,但所有变量在第一次被使用之前需要被赋值一次
初始化格式:<类型名称><变量名称>=<初始值>
也可在组合变量定义时单独给单个变量赋初值,如:int price=0,amount=100
4 变量类型
C是一种有类型的语言,所有变量在使用前必须定义或声明,使其具有确定的数据类型。数据类型规定了变量中可以存放的指定的数据类型,程序运行过程中也不能改变变量的类型
5 变量输入
scanf("%d",&price);
意为scanf这个函数读入一个整数,并赋值给变量price
*注意只能scanf只能读入整数,注意&不要漏
四 浮点数
1 10和10.0是完全不同的数,10.0是浮点数
2 当浮点数与整数一起运算时,C会自动将整数转换为浮点数再进行浮点数之间的运算
3 double为表示浮点数变量的类型名称,还有float表示单精度浮点数
* double在输入时用 "%lf" ,输出时用 "%f" ,而float输入输出都是"%f"
五 补充说明
1 上面第二大点 第2小点(找零)中 的第二种方法出现了const
const是一个修饰符,加在int前面,给这个变量加上一个不变的属性。意为这个变量值一旦初始化就不能再修改了
2 数据类型
*整数:
int —— printf("%d",…)
scanf("%d",…)
*带小数点的数:
double —— printf("%f",…)
scanf("%lf",…)
3 表达式
*一个表达式是一系列运算符和算子的结合,用来计算一个值
运算符是指进行运算的动作,如“=”,“+”。
算子是指参与运算的值,常数或变量,还有可能是一个方法的返回值
4 运算符优先级
5 复合赋值
“+=”、“-=”、“*=”、“%=”
如:total+=5;
=>total=total+5;
* * 两个运算符之间不能有空格
6 递增递减运算符
“++”“--”是单目运算符,且算子必须为变量。分别叫递增和递减运算符,作用为给这个变量+1或-1。
a++为后缀形式,是a加1以前的值;++a为后缀形式,是加1以后的值,无论哪个,a自己的值都加1了。“--"同理。