第三章
顺序结构程序设计
计算机与通信工程学院
万红
内容概述
本章介绍C语言的最基本结构-顺序程序控制结构,并详细介绍了输入输出函数。
教学目的和基本要求:
要求学生了解C语句,尤其是复合语句的概念和使用场合
教学重点:
复合语句,数据输入输出格式
目录
3.1 C语言的基本语句
3.2 数据输入与输出
3.3 程序举例
程序控制结构概述
定义:结构化程序设计就是只采用三种基本的程序控制结构来编制程序从而使程序具有好的结构。三种结构如下:
s1
s2条件
s1
s2
顺序结构选择结构循环结构
?特点:每种结构都只有一个入口和一个出口。每种结构的内部修改不影响整体布局结构。
条件
s1
3.1 C语言的基本语句
C语言的语句可分为以下四类:
?简单语句
?空语句
?复合语句
?流程控制语句。
本章将介绍前三种语句。
C程序设计教程3.1.1 简单语句
1.表达式语句:
表达式加上分号。例如:
i++;
x=y+1;
2.函数调用语句:
函数调用加上分号。例如:
scanf(“%d”,&x);
printf(“%d,%d”,a,b);
举例-数学函数的调用
sin(x)x的正弦,值域为[-1,1]exp(x)指数函数cos(x)x的余弦,值域为[-1,1]log(x)自然对数tan(x)x的正切log10(x)常用对数asin(x)x的反正弦pow(x,y)x的y次方acos(x)x的反余弦pow10(n)幂函数
atan(x)x的反正切,定义域为[-
1,1]
sqrt(x)x的平方根
atan2(y, x)y/x的反正切,值域为[-
1,1]
ceil(x)不小于x的最小整数
sinh(x)x的双曲正弦floor(x)不大于x的最大整数cosh(x)x的双曲余弦fabs(x)x的绝对值
tanh(x)x的双曲正切fmod(x,y)X/y的浮点余数
举例-数学函数的调用(续)
?定义:c语言中包含一些数学函数,它们定义在
?三角函数的自变量以弧度为单位,反三角函数的函数值以弧度为单位。
?自变量x,y为double型。n为int型。所有的函数值都是double型。
若有代数式:√y x+log10y,则正确的C表达式为:
A)sqrt (fabs (pow(y,x)+log(y)))
B)sqrt (abs (pow(y,x)+log(y)))
C)sqrt (fabs (pow(x,y)+log(y)))
D)sqrt (abs (pow(x,y)+log(y)))
3.空语句:
只有一个分号的语句。表示什么也不做。例如:for(i=0;i<1000;i++)
;
空语句的意义;
?满足程序特定的语法规则要求
?作为未来可能添加程序代码的占位标记
end
3.1.2 复合语句
将一系列语句置于一对花括号中间。复合语句作为一个语句对待。例如:
if(x<10)
{ x=x+5;
y=y+x;
}
复合语句不仅使运算过程清晰、简洁、高效,而且有助于表达程序的设计思路。
3.1.3 注释
注释部分用一对“/*”包含,增加程序的可读性。例如:
/* This is a main function*/
?注释不是C语句。
?既不被编译,也不被执行。
?可以出现在程序的任何位置。
?可以分若干行书写。
3.1.4 C程序的书写规范
?每条语句必须以分号结束,一行可以写任意条语句,通常写一条。
?注释的位置任意,每行以/*开始,以*/结束?建议按缩进格式书写,不同层次的语句从不同位置开始,用Tab键和空格键调整。
?程序范例见0301.c
3.1.4 C 程序的书写规范
【例题-计算并输出圆的面积和周长】
#define PI 3.14159 /*宏定义*/ main()
{
float r,a,c; /*定义变量*/
r=2.5;
a=PI*r*r; /*计算面积*/
c=2*PI*r; /*计算周长*/
printf(“r=%f,a=%f,c=%f\n”,r,a,c);
3.2 数据的输入与输出
?字符输入与输出函数
?格式输入与输出函数
注:C语言本身不提供输入输出语句
3.2.1 字符输入输出函数
1.字符输出函数
调用格式:putchar(c);
c可以是字符型常量(变量)或整型常量(变量)功能:向标准输出设备输出一个字符。定义于stdio.h #include
main()
{char ch=…a?;int i=97;
putchar(ch);putchar(i);
putchar(…a?);
} 三个输出结果都是字符a
3.2.1 字符输入输出函数
2. 字符输入函数
调用格式:getchar( );
功能:从输入设备上输入一个字符。定义于stdio.h
#include
{char ch;
ch=getchar(); putchar(ch);
}注意:
1.输入字符后必须按回车键才能被接收。
2.使用时常用一个变量接收输入的字符。
示例0302.c-字符输入输出函数
3.2.2 格式输出函数printf
printf(“格式控制字符串”,输出列表);
?格式转换说明符由“%”和格式字符组成,将输出的数据转换为指定的格式输出。?普通字符:
按照原样
输出的字
符。
?输出列表:
需要输出的
变量或表达
式。
例:printf(“a=%d,b=%d\n”,a,b);
输出列表
格式说明
如果a,b的值分别为3和4,则结果为:a=3,b=4
?转义序列
printf函数的格式转换说明符(常用)?%d格式
?%c格式
?%f格式
示例0303.c-输出格式
%d格式
作用:控制输出十进制整数。
printf(“%d”,100);
【运行结果】
100
printf(“a=%d,b=%d”,10,20);【运行结果】
a=10,b=20