回首页 回首页 ◎ 设为首页  
◎ 收藏本站  
◎ 给我留言  
  
  首 页  C/C++教程  C++之父的FAQ  C/C++动向  C/C++源代码  C/C++误区  Unix/Linux  下载中心  乱七八糟  蚂蚁的Blog  
  当前位置:首 页 >> C/C++教程 >> C 语言基础教程 >> 7. 第三个 C 程序
最 近 更 新
54. goto 语句
53. switch 语句推荐
52. continue 和 break
51. 条件运算符(?:)
50. if 语句嵌套推荐
49. 逻辑运算符推荐
48. 在循环中使用 if 语句推荐
47. if 和 else 连用推荐
46. if 语句
45. 循环应用实例 2
最 新 推 荐
53. switch 语句推荐
50. if 语句嵌套推荐
49. 逻辑运算符推荐
48. 在循环中使用 if 语句推荐
47. if 和 else 连用推荐
44. 循环应用实例 1推荐
43. 循环嵌套推荐
40. for 循环推荐
37. 关系运算符推荐
36. while 循环推荐
热 门 排 行
2. 第一个 C 程序推荐
31. 预处理指令 #define..推荐
1. C 语言简介
11. 基本数据类型:整型..推荐
24. 运算符的优先级和结..推荐
5. 如何编写函数
30. 字符串字面量推荐
13. 标识符命名规则
36. while 循环推荐
7. 第三个 C 程序推荐
站 内 搜 索

Web stdcpp.cn
关键词

搜索方式

搜索范围

精确匹配
广 告

7. 第三个 C 程序


来源:蚂蚁的 C/C++ 标准编程 作者:antigloss 等级:精品
发布于2005-10-22 17:59 被读4559次 【字体:

Antigloss 最后修改于 2006-12-23

    首先请看下面这个小程序,试着自己编译运行一下。如果不懂怎么编译,请点击下面的超链接:
      
    Dev-C++安装&使用教程

      /* 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\n", 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++ 程序一闪而过的方法

参考资料:C Primer Plus, 5th Edtion By Stephen Prata

本文版权归 蚂蚁的 C/C++ 标准编程 以及 作者 antigloss 共同所有,转载请注明原作者和出处。谢谢。



相关专题:暂无相关专题

上一篇:6. 关键字和保留标识符
下一篇:8. 错误(Error)和警告(Warning)

共有评论 7 条 网友评分 1分 查看全部评论

游客:张娱
评分:5
恩。这个程序很对,一点错误都没有。。呵呵。。很不错。。。继续看
游客:hehe
评分:3
正在学习中,希望不断加油,写出更好的东西
游客:真的?
评分:0
上面提到不懂都没关系,这是不是真的啊?后面真的就可以看懂吗?
游客:antigloss
评分:0
是的,只要记住怎么用就可以了。凡事都有个习惯的过程,要循序递进。
游客:111
评分:0
<stdafx.h>换成"stdafx.h"才可以调试过去,要么不提示错误。我的是VS2005
游客:antigloss
评分:0
stdafx.h是自定义头文件,放置于你的源代码目录,所以要用""包含。<>不会搜索你的源代码目录,只搜索标准路径;而""会先搜索你的源代码目录,然后再搜索标准路径。
游客:失败的人
评分:0
因为社会竞争大,所以要学很多东西!C语言刚开始自学!那位好心人可以帮帮我,我认他做师傅了,只要我学习中有什么不懂,或者是困难,可以教教我就可以了。交深朋友!!^o^  QQ372204638

查看全部评论

【发表评论】 评分:1分 2分 3分 4分 5分


验证码:

Powered By Www.Xydw.COM Ver1.14 管理
Copyright © 2005-2006 蚂蚁的 C/C++ 标准编程 All Right Reserved. XCMS
粤ICP备06014124号   站长:Antigloss