第四课 输出控制

输出控制

复合运算符

在赋值时左右两侧有同一个变量,可进行符合表示。

1
2
3
4
x += 3;  // x += 3;
a += b;  // 既 a = a + (b); 右侧视为一个整体,同时,复合运算符优先级较低。
a += a -= a * a;  // a += a -= 9; a += -6; a = -12
a += a -= a *= a;  // a += a -=9;  a += 0; a = 0;

Go

不支持这样复杂的符合运算,简洁高效清晰。

不同进制的表达方式

常规数据以十进制表示,单数有 8、16 进制的表示,没有二进制的表示!

控制符 表示方法
八进制 %o 023
十六进制 %x 0x7A

输入输出控制符

1 整型

%md m是控制输入输出位数 m>实际位数,前补空格
%-md ‘-’符号表示左对齐 m<实际位数,无效输出
1
scanf("%2d%3d",&x,&y);  // 1234567 → x=12, y=345

2 浮点数

%.nf n表示保留小数位数
%m.nf m表示总位数,小数点算一位

m<实际位数,m的控制无效

整数截断,浮点数四舍五入

结构程序设计

c program 是典型的结构化程序设计,面向过程。

有三大结构:顺序结构,选择结构,循环结构

  • 顺序结构,自顶向下,逐一执行程序中的每个语句;
  • 选择结构,就是给程序中的某些语句设置执行条件,当条件满足时执行,当条件不满足时跳过;
  • 循环结构,对程序中的语句多次的重复执行;

选择结构之 if 语句

if (表达式),当条件表达式的值是非 0,则条件成立,执行括号内容;若 if 只有一条语句,大括号可省略。

if …… else …… (语句实现是两种情况的选择)

选择对象中只有两种可能,我们选择其中两种可能(非此即彼)

eg : 输入第三边,求是否是三角形,若是求面积

面积公式:

​ l = (a+b+c)/2

​ s = sqrt(l(l-a)(l-b)(l-c))

​ 三角形定义:任意两边大于第三边

补充:

1 宏定义的字符串后一般不以分号结尾,因为宏定义不是 c 语句;

2 宏常量没有数据类型,只进行简单的字符串替换;

3 const 常量只能在定义时赋予初值;

4 在一个赋值语句中,若左右类型不一致,则赋值时右边表达式将进行自动类型转换

5 双引号扩起来的内容不会发生宏替换

Licensed under CC BY-NC-SA 4.0
本文阅读量 次, 总访问量 ,总访客数
Built with Hugo .   Theme Stack designed by Jimmy