基础语法复习
c
数据类型
- unsigned取正数,否则是正负参半,0算在正数侧
- int范围大概到20w
- sizeof(xxx)获取所占字节数
♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥♥
输入输出
putchar()和getchar()
putchar
putchar(‘A’); //输出大写字母A
putchar(x); /*输出字符变量x的值*/
putchar(‘\n’); /*换行*/
成功返回ASCII码,失败返回EOF也就是-1
getchar
char c;
c = getchar();
返回读取到的字符
♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦♦
printf()和scanf()
格式词典
%c
输出一个单一的字符
%hd、%d、%ld
以十进制、有符号的形式输出 short、int、long 类型的整数
%hu、%u、%lu
以十进制、无符号的形式输出 short、int、long 类型的整数
%ho、%o、%lo
以八进制、不带前缀、无符号的形式输出 short、int、long 类型的整数
%#ho、%#o、%#lo
以八进制、带前缀、无符号的形式输出 short、int、long 类型的整数
%hx、%x、%lx
%hX、%X、%lX
以十六进制、不带前缀、无符号的形式输出 short、int、long 类型的整数。如果 x 小写,那么输出的十六进制数字也小写;如果 X 大写,那么输出的十六进制数字也大写。
%#hx、%#x、%#lx
%#hX、%#X、%#lX
以十六进制、带前缀、无符号的形式输出 short、int、long 类型的整数。如果 x 小写,那么输出的十六进制数字和前缀都小写;如果 X 大写,那么输出的十六进制数字和前缀都大写。
%f、%lf
以十进制的形式输出 float、double 类型的小数
%e、%le
%E、%lE
以指数的形式输出 float、double 类型的小数。如果 e 小写,那么输出结果中的 e 也小写;如果 E 大写,那么输出结果中的 E 也大写。
%g、%lg
%G、%lG
以十进制和指数中较短的形式输出 float、double 类型的小数,并且小数部分的最后不会添加多余的 0。如果 g 小写,那么当以指数形式输出时 e 也小写;如果 G 大写,那么当以指数形式输出时 E 也大写。
%s
输出一个字符串
- 总结
- c字符 s字符串 d整数 u无符号 f单精 lf双精 e科学计数
- o八进制 x十六进制
- 加h为short 加l为long 加#为添加多进制前缀
- x和e区分大小写(0x 0X这种)
- %5.2f表示输出至少五个位置(物理上,屏幕占的位置)留两位小数,不够的话前面是空白。
注:不想写5可以省略也可以用*代替 - d、s这几个的.2就是实际的保留位数
printf()
int num = 5;
printf("您输入的数字是:%d",num);
返回值是显示的字符个数,失败返回一个负数
scanf()
int num;
scanf("请输入数字",&num);
返回值是成功读入的项目的个数,错误返回0,文件末尾返回EOF
- scanf可指定宽度不可指定精度
float a;
scanf(“%10f”,&a); //正确
scanf(“%10.2f”,&a); //错误
- %*d可以读取后不赋值