宏
include就是我们所说的宏
作用: 导入头文件
注:
如果系统已经提供某些功能的实现只需使用include将这些功能所在
的头文件导入进来就可以了
<系统提供的类库>
例如:
“自己定义的头文件”
例如:"calculate.h"
二者区别
1.#include
2.#include“stdio.h” 编译器首先从自己的类库来查找这个头文件 如果没有再从系统的库中查找,如果没有,就报错
小贴士:【注释语句】
1.//单行注释
2./* 加内容
*/
多行注释(不能嵌套)
注释语句可以让程序具有条理性,可以帮助我们思考和检查
main()函数
完整的main()函数应该是int main(int argc,char*argv[]){}
main()函数的作用
1.main ()函数=代码块=完成特定功能
2.所有的程序入口点都是main函数
关于 int argc:参数的个数 argument count
- char\ argv【】:有是字符串 无*是字符【j,kd】每个参数组成的字符串数组
- int argc:参数的个数 argument count
char *argv【】:有*是字符串 无*是字符【j,kd】每个参数组成的字符串数组
注:int返回值 记录当前程序的运行状态
0:正常结束 资源自由分配
非0:异常结束 没收
数据结构
int main(int argc,char*argv[])
{
printf("%d",argc);
printf("%s",argv[0]);
printf("hello world");
}
在输出数据时应先说明所需要的数据类型
常用数据类型
int 整型数据
long 长整型
float 单精度浮点型 1.5 99.3
double 双精度浮点数 1.5 2.2
char 字符 ’d' ‘c’
string 字符串 ”Jack“”rose“
shot 短整型
bool 是,成立,ture 不是,不成立,false
这些数据类型的区别>>所占内存不同
各数据类型大小如下
print("%d\n",sizeof(int));>>4
print("%d\n",sizeof(long));>>4
print("%d\n",sizeof(double));>>8
print("%d\n",sizeof(float));>>4
print("%d\n",sizeof(bool));>>1
print("%d\n",sizeof(chart));>>1
各数据类型的表示
int>> %d
long>>%ld
float>>%f
double >>%f
char 1>>%c
bool 1>>%d
注:关于显示0与小数点保留的问题
例:
#include
#include
int main(){
int count = 0;
count = 3;
//%d
//%02d 不足两位用0补齐
printf("I have %02d dogs\n",count);//前为输出格式 后为变量的值
float score = 95.5;
printf("%f\n",score);//%.2f 代表保留小数点后两位
char choose = '\0';//中文占据两个字符
printf("%c\n"",choose");
常用语句
printf 输出语句>>终端 console口
scanf 输入:终端输入
\n换行
\t 一个缩进
运算符
常用运算符
++ 自增 a++ 先用a再加 ++a 先加再用a (--类比++)
== 判断 a==2 >> a是否等于2 = 赋值
+= a+=2 == a=a+2 != 不等于
/ 除或者取整 % 取余数部分
&& 且 两个同时成立 // 或 只要一个成立
问号表达式和逗号表达式
1.问号表达式
例:
char c;
if (3>1){
c = 'y';
}else{
c = 'n';
}
c = 3>1? 'y':'n';//成立为前者 否则为后者
2.逗号表达式
例: result=表达式1,表达式2,表达式3
把最后的值赋给result
关于scanf
canf 格式化输入
缓冲区:"123 456 '\n'"
终端: 123 456 ‘\n’
int pwd = 0;
scanf("%d",pwd);
printf("pwd=%d\n,pwd");
int num1,num2;
scanf("%d %d",&num1,&num2);
printf("%d %d\n",,num2);
注意:不要在scanf随便写内容 ,scanf中的格式就是客户输入格式,若不按照所scanf格式进行输入,则无法识别。
关于if语句
当某种条件成立 才......
if(条件 ture 非零 false=0)
{成立要做的事情}
下面我们可以做一个小程序
要求:输入工资,计算实发工资
2.5000以下不交税 5000-8000交10% 8000-10000交15%
10000以上交20%
推荐使用DEV-C++
参考代码
#include
int main(){
int wage = 0;
int tax = 0;
int pay = 0;
printf("请输入工资:\n");
scanf("%d",&wage);
if(wage<5000){
pay = wage;
}else if(wage>=5000&&wage<8000){
tax = (wage-5000)*0.1;
pay = wage - tax;
}else if(wage>=8000&&wage<10000){
tax = (wage-8000)*0.15+3000*0.1;
}else if(wage>=10000){
tax = (wage-10000)*0.2+2000*0.15+3000*0.1;
}
printf("实发工资:%d",wage - tax);
return 0;
}
运行结果
下面我们可以做一个难一点的小程序
要求:输入一个人的年龄将其转化成英文
例: 请输入年龄
18
your eage is eighteen
参考
#include
int main(){
int age = 0;
//保存个位数 21%10 = 1
char* gewei[] = {"","one","two","three","four","five","six","seven","eight","nine"};
//保存10-19
char* temp[] = {"ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"};
//保存十位
char* shiwei[] = {"twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"};
printf("请输入年龄:");
scanf("%d", &age);
char *name;//保存每次取出的字符串
if(age < 10){
//直接访问各位数数组
name = gewei[age];
}else if(age >= 10 && age <= 19){
//获取个位数
int index = age % 10;
name = temp[index];
} else{
//获取个位数
int g = age % 10;
//获取十位数
int s = age / 10;
//取出对应的单词
char* sString = shiwei[s-2];
char* gString = gewei[g];
printf("your age is %s-%s\n"
,sString,gString);
//程序还未运行完毕就提前结束
return 0;
}
printf("your age is %s\n",name);
return 0;
}
运行结果