 
- UID
- 852722
|

首先请看下面这个小程序,试着自己编译运行一下。
/* Circle.C -- 计算圆的面积 */
#Include <Stdio.H>
Int Main( Void )
{
Float Radius; /* 圆的半径 */
Printf( "Please Enter The Radius: " );
/* 获取用户输入 */
Scanf( "%F", &Radius );
/* 圆面积计算公式:圆周率 * 半径的平方 */
Printf( "The Area Of The Circle Is: %.3f
", 3.14 * Radius * Radius );
Printf( "Press ENTER To Quit..." );
Getchar();
Getchar();
Return 0;
}
“Enter The Radius”的意思是:输入圆的半径,然后按回车(Enter)。这个程序要求我们输入数字,例如:15、31.6。不要输入字母,例如:Abc、T156。输入字母将导致程序出错!以后我们会学如何处理这种错误,不过现在还是老老实实地输入数字吧!当然,您也可以试着输入字母,看看到底会发生什么事情。
下面我们来仔细讲解这个程序的知识点。
1. 程序的第 7 行,我们使用Float声明了一个名为 Radius的变量。Float代表的数据类型是浮点型,也就是小数。在以往的程序中,我们都是使用 Int 来声明变量。Int 代表整型,也就是整数。用 Int 声明的变量只能存储整数;而用 Float 声明的变量可以存储小数。
2. 为了接受用户输入,我们需要使用 Scanf函数。和 Printf一样,Scanf 也是标准库里定义的函数,我们称这样的函数为标准函数。和Printf一样,Scanf的函数原型也位于标准头文件 Stdio.H 里。占位符 %F 的作用是命令 Scanf 函数读取浮点数;&Radius 告诉 Scanf 用读取到的浮点数给变量 Radius 赋值。其中 & 必不可少,否则程序将会出错。& 在这里是取址运算符,用于获取变量 Radius 的内存地址,从而告诉 Scanf 将读取到的浮点数存储到那个地址所指示的内存空间,也就达到了给 Radius 赋值的目的。如果您看不懂上面这些内容,没什么关系,真的,只要您可以记住就好了。以后,我们将更深入地学习这些知识。
3. Radius 是浮点型变量,3.14 默认是双精度浮点型(Double)恒量,所以表达式 3.14 * Radius * Radius 的结果是一个双精度浮点数。这里看不懂也没关系,以后我们会详细学习。
4. 要显示浮点型数据,我们需要使用占位符 %F。%D 是用于显示整数的,如果我们将第二个 Printf 中的 %.3f 换成 %D,那么输出会不正常。.3 的作用是告诉 Printf 只输出小数点后 3 位。我们也可以改成 .2 或者 .0 等。.0 代表不输出小数部分。
5. 程序最后连续用了两个 Getchar 函数,在此起的作用是等待用户输入回车,然后才退出程序。Getchar 也是标准函数,它的函数原型同样也是位于标准头文件 Stdio.H 中,它的作用是读取用户输入的一个字符。具体为什么这里要用两个 Getchar 请参考避免 C/C++ 程序一闪而过的方法。 |
|