《21天学通C语言(第7版)》一第1部分 C语言基础 第2课 C程序的组成部分 2.1 简短的C程序-阿里云开发者社区

开发者社区> 异步社区> 正文

《21天学通C语言(第7版)》一第1部分 C语言基础 第2课 C程序的组成部分 2.1 简短的C程序

简介:
+关注继续查看

本节书摘来自异步社区《21天学通C语言(第7版)》一书中的第1章,第1.1节,作者 【美】Bradley Jones , Peter Aitken , Dean Miller,更多章节内容可以访问云栖社区“异步社区”公众号查看

第1部分 C语言基础

21天学通C语言(第7版)
本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

第2课 C程序的组成部分

21天学通C语言(第7版)
每个C程序都由多个部分组成。本书绝大多数篇幅都在解释各种程序的组成部分以及如何使用它们。为了帮助读者掌握C程序的概况,首先介绍一个完整(但简短)的C程序,并识别其中的每个部分。本课将介绍以下内容:

简短C程序的组成部分
每个程序组成部分的用途
如何编译并运行程序示例
本文仅用于学习和交流目的,不代表异步社区观点。非商业转载请注明作译者、出处,并保留本文的原始链接。

2.1 简短的C程序

21天学通C语言(第7版)
程序清单2.1列出了bigyear.c的源代码,这是一个简单的程序。该程序接受用户从键盘输入的出生年份,并计算此人指定年龄的年份。现在,还不用了解程序的各种细节和工作原理。关键是要熟悉C程序的各个部分,以便更好地理解本书后面所示的程序清单。

在查看程序示例之前,要知道什么是函数,因为函数是C语言程序设计的核心。函数(function)是一段执行某项任务的程序代码。要指定函数的名称,在程序中通过引用函数名,可以执行函数中的代码。程序还能将信息(被称为参数(argument))发送给函数,而函数也可以将信息返回。C语言有两种类型的函数:库函数(library function)和用户自定义函数(user-defined function),前者是C编译器软件包的一部分,后者由程序员创建。你将在本书中学到这两种类型函数的相关内容。

注意,程序清单2.1和本书后面所列的所有程序清单中的行号都不是程序的一部分。把它们显示在程序清单中,只是为了方便描述和分析,在键入程序时千万不要将它们也一同输入。

输入下三角

程序清单2.1 bigyear.c - 计算某人在指定年数后的年份

/* 该程序计算某人在经过指定年数后的年份。*/
#include <stdio.h>
#define TARGET_AGE 88
int year1, year2;
int calcYear(int year1);
int main(void)
{
     // 询问用户的出生年份
     printf("What year was the subject born? ");
     printf("Enter as a 4-digit year (YYYY): ");
     scanf(" %d", &year1);
     // 计算指定年数后的年份,并显示该年份
     year2 = calcYear(year1);
     printf("Someone born in %d will be %d in %d.",
             year1, TARGET_AGE, year2);
     return 0;
}
/* 该函数计算将来年份 */
int calcYear(int year1)
{
    return (year1 + TARGET_AGE);
}
输出下三角

What year was the subject born? 1963
Someone born in 1963 will be 88 in 2051.

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
MySQL 基础---存储过程和函数操作
存储过程和函数就是实现经过编译并存储在数据库中的一段sql语句集合。函数必须有返回值,而存储过程则没有。存储过程的参数类型远远多于函数参数类型。 存储过程和函数的优点: 存储过程和函数允许标准组件式编程,提高了SQL语句的重用性、共享性和可移植性。
952 0
C#基础知识之方法重载总结
1.首先解释一下什么是方法重载?    方法重载是指在同一个类中方法同名,参数不同,调用时根据实参的形式,选择与他匹配的方法执行操作的一种技术。 这里所说的参数不同是指以下几种情况: ①  参数的类型不同 ②  参数的个数不同 ③  参数的个数相同且类型不同时,它们的先后顺序不同 需要注...
544 0
C#基础知识-对象初始化顺序
本文章转载:http://blog.csdn.net/forever_wind/article/details/7442503 不错的文章:http://www.cnblogs.com/McJeremy/archive/2009/04/23/1442163.
517 0
03.Java基础(线程池和Callable<T>)
在以往的工作中,创建线程通常我们关注的都是Thread或者Runnable为主,其实忽略了另外一个比较有用的创建线程的方式,就是Callable接口,下边是Callable配合线程池实现异步任务 import java.
760 0
02.Java基础(线程池)
执行异步任务的时候,如果只是new Thread,存在一下弊端 a. 每次new Thread新建对象性能差。 b. 线程缺乏统一管理,可能无限制新建线程,相互之间竞争,及可能占用过多系统资源导致死机或oom。
509 0
+关注
异步社区
异步社区(www.epubit.com)是人民邮电出版社旗下IT专业图书旗舰社区,也是国内领先的IT专业图书社区,致力于优质学习内容的出版和分享,实现了纸书电子书的同步上架,于2015年8月上线运营。公众号【异步图书】,每日赠送异步新书。
12049
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载