目录
1.类型
1.1数字类型
int | 整数型 |
float | 单精度浮点数 |
double | 双精度浮点数 |
准确性:
双精度 > 单精度 >整数
1.2字符类型
char | 字符型 |
char [] | 字符串 |
字符可以具体参照ASCII表
字符串由字符一一构成
拓展 :对于字符串在C语言中他是怎么确定一串字符的结束位置的?
答案 : 在C语言中 \0 是表示字符串的结束 因为这样 你在使用sizeof这个函数的时候,
会比你预想中多出来一位 ,这一位就是 \0
2.变量
变量是用来储存特定类型内容,方便以后进行调用
定义变量的方法
int a; //未赋值定义
int a = 1; // a ->> 1
//多变量定义
int a,b,c;
int a = 1,b = 2,c = 3;
//char定义
char a = 'a'; //char定义时为单引号表示一个字符,并且char只能定义一个字符,
// 如果定义多个字符还是会显示一个字符
char a[] = "abcdefg"; //定义字符串的时候为双引号
// 扩展 因为在定义时 []表示一个数组所以定义字符串时可以写成
char a[] = {'a','b','c'};
3.两个函数
3.1 printf ()
printf其实就是print +format 的缩写 意思就是格式化输出 格式化体现在哪里呢?
%d | 表示输出的为整数类型int |
%f | 表示输出的为单精度浮点数float |
%lf | 表示输入的为双精度浮点数double |
%c | 表示输出的为字符类型char |
%s | 表示输出为字符串类型char [] 也叫string类型 |
具体怎么用呢?
printf("%d",1); //结果会输出1
//也可以直接输出你想要的
printf("你想要输出什么写什么");
// 当你想把一个类型为int的变量输出的时候
int a = 1;
printf("%d",a); //逗号后面就要写上变量的名字
// 这个逗号后面的东西是和前面的%d一一对应的
//比如
printf("%d %d %d",1,2,3);
3.2 scanf()
scanf的意思就是输入,也就是你运行起来程序了让用户输入
我们刚刚讲了格式化的符号%和用途
3.2.1 参数
在C语言中,命令有的是有参数
scanf(参数一,参数二);
scanf有2个参数这2个参数是固定的
他的第二个参数就是&类型也就是指针类型所以非指针变量前面要加上&
scanf("格式化输入的类型",&变量);
注意变量前面的&符号他表示一个指针
&+变量名字 意思就是这个变量所在的地址
如果不清楚也没关系,我们还没有学到指针,现在的你把他当成一种标准来记忆就行
3.2.2 实现
现在来讲scanf的使用
int a;
scanf("%d",&a);
//表示让用户输入一个为int类型的数字然后这个数字传输给a
// 原来a是0 传输之后就变为用户输入的数字了
//scanf也可以实现多数字给变量传递
int b,c,d;
scanf("%d%d%d",&b,&c,&d);
/*在这里用户输入的时候会感到麻烦因为我把这3个数字连起来了
用户输入的时候这样输入->> 123
这样会感觉到有些bug,因为%d他表示整数
在用户中他其实想让第一个%d = 1 第二个 = 2 第三个 = 3
但是123他也是整数,也有可能会传递到第一个 %d = 123
但事实上和我们想的一样,这样和用户就不对劲了吧
*/
如果用户想要正常输入就得这样↓
1
2
3
每输入一个回车一下是不是好麻烦
这时候我们引用了分隔符来解决一些问题
分隔符就是标点符号或者空格
这样用户就可以一行直接把数字输入成功了
具体写法就是把scanf里第一个参数的内容加入分隔符
scanf("%d %d %d",&b,&c,&d);
这样用户输入的时候就可以输入一个数字按一下空格输入下一个这样数字就一一对应的传输到对应的变量里面了