第一课

本课主题: 语句、程序结构、数据输出

教学目的: 掌握C程序的基本框架,掌握简单的数据输出输入方法。

教学重点: C程序的的基本框架。

教学难点: 语句的概念,程序结构

授课内容:

一、C程序基本结构:

1、举例说明C程序的结构组成:

[例3.1]

说明:
(1)本程序包括两个函数:主函数main和被调用函数max。主函数main是每一个C程序都必须具有的,max函数的作用是将x和y中较大者的值赋给变量z,函数体由大括号{ }括起来。
(2)return语句的作用是将z的值返回给主调用函数main,返回值将通过函数名max带回到main函数的调用处。
(3)scanf和printf都是C语言提供的标准输入输出函数,scanf函数的作用是输入a和b的值;printf函数的作用是按设置的格式输出有关量的值。

2、C程序的基本结构:

(1)C程序是由函数组成的。一个C源程序至少包括一个主函数(main函数),也可以包括一个main函数和若干个其它函数。
(2)一个函数由两部分组成:

1)、函数的说明部分:包括函数名、函数类型、函数属性、函数参数(形参)名、形式参数类型。一个函数名后面必须跟一对圆括号(),函数参数可以没有。如main()。
2)、函数体,即函数说明部分下面的大括号{......}内的部分。如果一个函数内有多个大括号,则最外面的一对{ }为函数体的范围。
函数体一般包括:
①变量定义:
②执行部分:

(3)一个C程序总是从main函数开始执行的,而不论其在程序中的位置如何。
(4)C程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上。C程序没有行号。
(5)每个语句和数据定义的最后必须有一个分号,分号不可少。
(6)C语言本身没有输入输出语句,输入和输出功能是由库函数来完成的。
(7)可以用/*......*/对C程序中的任何部分作注释。

二、基本输出与输入的方法

1、基本输出方法

printf(格式控制字符串,变量表列);

格式字符及其用法:
1、d格式符:用来输出十进制整数。有以下几种用法:
(1)%d,按整型数据的实际长度输出。
(2)%md,m为指定的输出字段宽度。如果数据的位数小于m,则左端补以空格,若大于m,则按实际位数输出。
(3)%ld,输出长整型数据。也可以指定长整型数据输出字段宽度,如%mld。
2、o格式符:以8进制数形式输出整数,是将内存单元中的各位的值按八进制形式输出,因此输出的数值不带符号。
3、x格式符:以16进制数形式输出整数,方法同o格式符。
4、u格式符:用来输出unsigned型数据,即无符号数,以十进制数形式输出。
5、c格式符:用来输出一个字符。
6、s格式符:用来输出一个字符串。有几种用法:
(1)%s,输出指定的字符串。
(2)%ms,输出的字符串占m列,如字符串本身长度大于m,则全部输出字符串;若串长小于m,则左补空格。
(3)%-ms,如果串长小于m,则在m列范围内,字符串向左靠,右补空格。
(4)%m.ns,输出占m列,但吸取字符串左端n个字符,这n个字符输出在m列的右侧,左补空格。
(5)%-m.ns,其中m,n含义同上,个字符输出在m列范围的左侧,右补空格。如果n>m,则m自动取n值,即保证n个字符正常输出。
7、f格式符:用来输出实数,以小数形式输出。有以下几种用法:
(1)%f,不指定安段宽度,由系统自动指定,使整数部分全部如数输出,并输出6位小数。应当注意,并非全部数字都是有效数字单精度实数的有效位数为7位,双精度实数的有效位数为16位。
(2)%m.nf,指定输出的数据位数占m列,其中有n位小数。如果数据长度小于m,则左补空格。
(3)%-m.nf,与%m.nf基本相同,只是使输出的数值向左端靠,右端补空格。
8、e格式符:以指数形式输出实数。可用以下形式:
(1)%e,不指定输出数据所占的宽度和数字部分小数位数,由系统自动指定给出6位小数,指数部分占5位(如e+002),其中e占一位,指数符号占一位,指数占3位。数值按标准化指数形式输出。
(2)%m.ne和%-m.ne,m、n和“-”字符含义与前相同。此处n指数据的数字部分的小数位数。
9、g格式符:用来输出实数,它根据数值的大小,自动选f格式或e格式,且不输出无意义的零。
小结:
printf格式字符

说            明

d 以带符号的十进制形式输出整数(正数不输出符号)
o 以8进制无符号形式输出整数(不输出前导符0)
x 以16进制无符号形式输出整数(不输出前导符0x)
u 以无符号的十进制形式输出整数
c 以字符形式输出,只输出一个字符
s 输出字符串
f 以小数形式输出单、双精度数,隐含6位小数
e 以标准指数形式输出单、双精度数,数字部分小数位数为6位
g 选用%f或%e格式输出宽度较短的一种形式,不输出无意义的0
附加格式说明字符

说            明

l 用于长整型数据,可加在格式符d、o、x、u前面
m(代表一个正整数) 数据最小宽度
n(代表一个正整数) 对实数,表示输出n位小数;对字符串,表示截取的字符个数
- 输出的数字或字符在域内向左靠

2、基本输入方法

scanf(格式控制字符串,变量地址表列);

三、数据输入要注意的问题:

(1)要用变量的地址做参数

(2)运行时输入数据要严格按照格式控制字符串中规定的格式。例:

输入数据格式 实际输入数据
%d,%f 23,34.5
%d%f 23 34.5

 

回目录