输入

表达式计算规则与 scanf 输入实践

1. 表达式与括号优先级

复杂的表达式可以使用括号来控制计算顺序,括号使用次数不受限制。多层嵌套时从最内层向外计算。运算符优先级遵循先乘除后加减。

示例解析:2*(3+3*(5+4))

  1. 最内层 5+4 = 9
  2. 向内层外推 3 * 9 = 27
  3. 括号内相加 3+27 = 30
  4. 最外层相乘 2 * 30 = 60

2. 读取数据的格式说明符

通过 scanf() 处理键盘输入时,需匹配对应的格式控制符(需包含头文件 stdio.h):

操作需要的控制字符串
读取 short 类型%hd
读取 int 类型%d
读取 long 类型%ld
读取 float 类型%f 或 %e
读取 double 类型%lf 或 %le

注意:scanf 读取 float 用 %f,但读取 double 必须用 %lf(与 printf 中 float 自动提升为 double 表现不同)。

3. 综合代码示例(计算圆桌周长与面积)

利用输入的直径计算周长和面积,演示了变量声明、输入读取、表达式计算及格式化输出:

#include <stdio.h>                  

int main(void) 
{    	 
	 float radius = 0.0f;		// 圆桌半径 
	 float diameter = 0.0f;         // 圆桌直径 
	 float circumference = 0.0f;    // 圆桌周长 
	 float area = 0.0f;             // 圆桌面积 
	 float Pi = 3.14159265f;        // 圆周率
	 
	 printf("请输入圆桌的直径:");
	 scanf("%f", &diameter);         // 读取浮点数,&为寻址运算符
	 
	 radius = diameter / 2.0f;        // 计算半径
	 circumference = 2.0f * Pi * radius; // 计算周长
	 area = Pi * radius * radius;       // 计算面积
	 
	 printf("\n周长是%.2f", circumference); 
	 printf("\n面积是%.2f", area); 
	 return 0;                        
}Code language: PHP (php)

运行输出示例:

请输入圆桌的直径:3

周长是9.42
面积是7.07Code language: CSS (css)

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注