第3课:C语言程序的构成和书写规则

第2课:编写第一个C语言程序

先来看一个C语言程序:输入两个正整数,计算并输出两数的和。

程序代码:

/*ex1_2.c:求两个正整数的和*/
#include <stdio.h>
void main()                         /*主函数*/
{
    int a,b,sum;                    /*定义三个整型变量*/
    printf("请输入两个正整数!\n");
    scanf("%d",&a);                 /*输入数据给变量a*/
    scanf("%d",&b);                 /*输入数据给变量b*/
    sum=a+b;                 *变量a和变量b的值相加,然后将结果赋给变量sum*/                                                              
    printf("相加结果是%d\n",sum);   /*输出变量sum的值*/
}

程序运行结果:

请输入两个正整数!

5 6

相加结果是11

程序说明:

① “int a,b,sum;”是变量声明。声明了三个具有整数类型的变量a,b,sum。C语言的变量必须先声明后使用。

② 程序中的scanf是输入函数的名字,程序中的scanf函数的作用是输入a,b的值。&a,&b中的&的含义是取地址,此scanf函数的作用是输入a,b的值。&a和&b中的&的含义是取地址,此scanf函数的作用是将两个数值分别输入到变量a和b的地址所标志的单元中,也就是输入给变量a和b。

③“sum=a+b;”是将a,b两变量内容相加,然后将结果赋值给整型变量sum。

④“printf(“相加结果是%d \n”,sum);”是调用库函数printf()输出sum的结果。“%d”为格式控制,表示sum的值以十进制整数的形式输出。

C语言程序的构成

⑴ C程序是由函数构成的,函数是C程序的基本单位。一个源程序至少包含一个main函数,即主函数,也可以包含一个main函数和若干个其他函数。被调用的函数可以是系统提供的库函数,也可以是用户根据需要自己设计编写的函数。

⑵ main函数是每个程序执行的起始点,一个C程序不管有多少个文件,有且只能有一个main函数。一个C程序总是从main函数开始执行,不管main函数在程序中的位置。可以将main函数放在整个程序的最前面,也可以放在整个程序的最后,或者放在其他函数之间。

⑶ 源程序可以有预处理命令(include是其中一种),预处理命令通常放在源文件或源程序的最前面。

⑷ 每个语句都必须以分号结尾,但预处理命令、函数头和花括号“}”之后不加分号。

⑸ 标识符和关键字之间,至少加一个空格以示间隔,空格的数目不限。

⑹ 源程序中需要解释和说明的部分,可用“/*……*/”加以注释,注释是给程序阅读者看的,机器在编译和执行程序时,注释将被忽略。

C语言程序的书写规则

从书写清晰,便于阅读,理解,维护的角度出发,养成良好的编程风格,在书写程序时应遵循以下规则:

⑴ 在C语言中,虽然一行可写多个语句,一个语句也可占多行,但是为了便于阅读,建议一行只写一个语句。

⑵ 应该采用缩进格式书写程序,以便于增强层次感、可读性和清晰性。低一层次的语句或说明可比高一层次的语句或说明缩进若干格后书写。

⑶ 用{} 括起来的部分,通常表示了程序的某一层次结构。{}一般与该结构语句的第一个字母对齐,并单独占一行。

⑷ 为便于程序的阅读和理解,在程序代码中,应加上必要的注释。

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/5644.html

(1)
江山如画的头像江山如画管理团队
13种极简风格的扁平化按钮样式-bttn.css
上一篇 2020年4月5日 下午9:36
第4课:标识符和关键字
下一篇 2020年4月5日 下午9:59

99%的人还看了以下文章

  • aspx文件编码不统一导致乱码

    今天发现了一个很奇怪的现象,页面在VS2008下面,有些页面乱码,而有些則不会。 上网查找了很多方法均不能解决,根据以前开发asp,php的经验,怀疑这些页面的编码可能不一样。 在VS2008下面还真的不知道在哪里看文件的编码,用Dreamweaver打开一个乱码跟一个不乱码的页面对比了一下,发现一个是gb2312(不乱码),而别外一个则是utf-8(乱码)…

    2019年2月14日
    3.2K0
  • Python数据分析及可视化,科学计算练习题

    第一章 单元测试 1、 问题:数据分析是指通过分析手段、方法和技巧对准备好的数据进行探索、分析,从中发现因果关系、内部联系和业务规则,为商业提供决策参考。( )选项:A:对B:错答案: 【对】 2、 问题:Anaconda中包含了conda、Python在内的超过18个科学包及其依赖项。( )选项:A:对B:错答案: 【对】 3、 问题:数据分析是一个有目的…

    2022年1月29日
    29.0K1
  • 上机四 数据库访问技术

    上机四  数据库访问技术上机四  数据库访问技术上机四  数据库访问技术上机四  数据库访问技术

    2学时 一、数据库编程案例:读取数据库信息并显示 数据库员工信息表字段如下: 使用JDBC连接数据库,读取employee表中信息并显示到页面。 mysql驱动下载:mysql-connector-java-5.1.41-bin.zip 注意事项:将驱动程序mysql-connector-java-5.1.6-bin,拷贝到Web应用程序的WEB-INF\l…

    2018年10月16日 编程开发
    9.2K0
  • 第一个Spring MVC 项目:Hello World(Eclipse版)

    第一个Spring MVC 项目:Hello World(Eclipse版)第一个Spring MVC 项目:Hello World(Eclipse版)第一个Spring MVC 项目:Hello World(Eclipse版)第一个Spring MVC 项目:Hello World(Eclipse版)

    125建站网前面分享了《Spring框架概述》,新学习的同学可以先阅读引文章,今天给大家分享第一个Spring MVC实战项目:Hello World 目录  一、MVC概要 二、Spring MVC介绍 三、第一个Spring MVC 项目:Hello World(Eclipse版) 3.1、通过Maven新建一个Web项目 3.2、添加依赖的jar包 3…

    2023年1月24日 编程开发
    1.3K0
  • String、StringBuffer、StringBuilder的区别?

    String在实例化之后,其内存空间的内容大小是不能够被修改的;而StringBuffer是一个线程安全的可变字符序列,在实例化之后可以动态的修改堆内存中的内容,所以内存长度和大小是可变的;StringBuilder实例化之后内存大小长度也是可变的,不同之处在于StringBuilder不是线程同步,因此操作起来必然比StringBuffer更加高效。

    2018年10月24日
    3.0K0
  • 程序设计基础(C语言)—教学设计、教案

    教学设计——程序设计基础 教学基本信息 课程名称 程序设计基础 性质 专业基础课 学分 3 学时 48 题目 数据类型 专业年级 软件工程专业一年级 教材 书名:C程序设计(第五版) 出版社:清华大学出版社    出版日期: 2017年8月 教学背景分析 一、学习内容分析: 本节课要介绍的知识点——数据类型比较简单,但都是概念。对于这些陌生的、枯燥的纯概念性…

    2020年4月10日
    14.7K0

发表回复

登录后才能评论