第三章顺序结构程序设计
3.1 基本要求
z掌握C语言中使用最多的一种语句——赋值语句的使用方法。
z掌握各种类型数据的输入输出的方法,并能正确使用各种格式转换符。
z掌握文件包含预处理命令#include。
3.2 内容小结
本章主要介绍了一些为编写简单程序所必须的语句及基本的输入输出方法。 它们是C语言中5类基本语句:控制语句、函数调用语句、表达式语句、空语句和复合语句。
格式输入输出函数scanf( )和printf( ):在C语言中没有专用的输入输出语句,但可通过调用输入输出函数及C系统提供的9种格式字符,进行各种类型数据、各种格式的输入输出。
单个字符的输入输出函数getchar( )和putchar( )。
文件的包含:函数是C程序的构成单元,C程序中的函数调用可分为两类,本源程序中函数的调用和非本
源程序中函数的调用,如是后者需用#include 文件包含预处理命令把该函数所在的源文件包含到本源文件中来。
3.3 典型例题分析
z例题1 printf( )函数的功能
main( )
{ int a , b;
a=10;
b=25;
printf(“a=%d b=%d\n”,a,b);
printf(“a+b=%d\na-b=%d\n”,a+b,a-b);
}
运行结果:
a=10 b=25
29
a+b=35
a-b=-15
从上例中可以看出,转换说明符不仅规定了输出格式,而且也决定了输出项在整个输出信息中的位置。此外,从上例也可以看出,输出项还可以是运算表达式,这时输出的是它的运算结果值。
z例题2 scanf( )函数的功能霹雳布袋戏在哪个平台看
main( )
{ int x, y;
printf(“Enter integer x:”);
scanf(“%d”,&x);
excel函数包含内容公式printf(“Enter integer y:”);
scanf(“%d”,&y);
printf(“x+y=%d\n”,x+y);
printf(“x-y=%d\n”,x-y);
}
该程序是以人机对话方式给变量x和y赋值,它的某次运行情况如下所示:Enter integer x:16〈CR〉
Enter integer y:25〈CR〉
x+y=41
x- y=-9
其中划有下横线的部分是从键盘打入的字符,其中〈CR〉表示回车键。
z例题3 输入三角形的三边长,求三角形的面积。
设输入的三边长a、b、c能构成三角形。根据数学知识已知求三角形面积的公式为:area= √s(s-a)(s-b)(s-c)
其中:s=(a+b+c)/2
程序如下:
#include <math.h>
main( )
{ float a, b ,c, area;
scanf(“%f,%f,%f”,&a,&b,&c);
s=1.0/2*(a+b+c);
area=sqrt(s*(s-a)*(s-b)*(s-c));
printf(“a=%7.2f,b=%7.2f,c=%7.2f,s=%7.2f\n”,a,,b,c,s);
printf(“area=%7.2f\n”,area);
网页代码div是什么意思}
30
3.4 习题
3.1C语言中的语句有哪几类?C语句与其它语言中的语句有哪些异同?
3.2怎样区别表达式和表达式语句?什么时候用表达式,什么时候用表达式语句?
3.3C语言为什么要把输入输出的功能作为函数,而不作为语言的基本部分?
3.4若i=1,j=2,k=3,x=2.2,y=3.4,z=-5.6,u=47215,n=123456,c1=’a’,
c2=’b’。试按以下格式,用函数printf( )组织输出。
i=1 j=2 k=3
x=2.200000,y=3.400000,z=-5.600000
x+y=5.60y+z=-2.20z+x=-3.40
u= 47215n= 123456
c1=‘a’or97(ASCII)
c2=‘b’or98(ASCII)
3.5 设有变量定义
int i=100, k=-1;
以下函数调用的输出是什么?
printf(“i=%x;k=%u,%o.\n”,i,k,k);
3.6 写出以下程序的输出结果。
main( )
{ int a=8, b=9;
float x=127.895, y= -123.456;
char c=’B’;
long n=12345678L;
unsigned u=65535u;
printf(“%d %d\n”,a,b);
printf(“%5d %5d\n”,a,b);
printf(“%f, %f\n”,x,y);
printf(“%-12f, %-12f\n”,x,y);
printf(“%8.3f ,%8.3f,%.3f,%.3f,%4f,%5f\n”,x,y,x,y,x,y);
printf(“%e, %10.4e\n”,x,y);
printf(“%c, %d,%o,%x\n”,c,c,c,c);
printf(“%ld ,%lo,%lx\n”,n,n,n);
printf(“%u, %o,%x,%d\n”,u,u,u,u);
printf(“%s, %6.3s,%-10.5s\n”, “C language”, “C language”, “C language”); } 3.7 设有若干变量定义如下:
int i ; char c ;
long k; float f ;
31
试用函数scanf( )为这些变量输入值。
3.8 设有变量定义:
int i, j; float x, y ; char c1 , c2 ;
欲使这些变量有值
i=2, j=4 ,x=5.8 ,y=8.72, c1=’B’, c2=’6’
并有以下函数调用
scanf(“i=%d j=%d”,&i,&j);
scanf(“%f %e”,&x,&y);
putchar函数scanf(“ %c%c”,&c1,&c2);
十大培训问键盘上应如何输入?
3.9 用下面的scanf( )函数调用输入数据,使i=5,j=7,c1=‘Z’,c2=‘z’,x=2.3,
y=-25.6,问键盘上应如何输入数据。
scanf(“%4d%4d%c%c%7f%*f,%5f”,&i,&j,&c1,&c2,&x,&y);
3.10 使用printf( )函数编制程序显示下列图形:
A
B B B
C C C C C
D D D D D D D
3.11 以人机对话方式输入a,b,c,d四个整数,计算下列式子并显示计算结果:
(a+b-c)×d
3.12 使用字符输入输出函数编制程序,把从键盘输入的一个字符显示在屏幕上。3.5 实验顺序结构程序
z实验目的和要求
1.掌握格式输入输出函数中各种格式转换符的正确使用方法。
2.文件包含预处理命令#include的运用。
3.比较用getchar( )和scanf( )函数输入字符的不同;及putchar( )和printf( )函数输出字符的特点。
z实验内容及步骤
一、格式输入输出函数中各种格式转换符的正确使用
① 程序输入
main( )
{ int a, b;
float d, e;
char c1, c2;
32
long h, i;
unsigned int j, k;
a=56; b=57;
c1=’A’; c2=’B’;
d=2.34; e=-7.58;
f=1234.891232; g=0.123456789;wsdl调用
h=48000; i=-58000;
j=32768; k=50000;
printf(“a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n”,a,b,c1,c2,d,e);
printf(“f=%15.6f,g=%15.12f\nh=%ld,i=%ld\nj=%u,k=%u\n”,f,g,h,i,j,k); }
② 运行此程序并分析运行结果。
③ 在此基础上,对程序的8~13行做如下修改:
a=56; b=57;
c1=a; c2=b;
f=1234.891232; g=0.123456789;
d=f; e=g;
j=a=h=48000; k=b=i=-58000;
再运行程序,并分析结果。
④ 改用scanf( )函数输入数据而不用赋值语句,调用scanf()函数的形式如下: scanf(“%d,%d,%c,%c,%f,%f,%lf,%lf,%ld,%ld,%u,%u”,
&a,&b,&c1,&c2,&d,&e,&f,&g,&h,&i,&j,&k);
输入的数据如下:
56,57,A,B,1234.891232,0.123456789,48000,-58000,32768,50000<CR>
(说明:lf和ld格式符分别用于输入double型和long型数据;<CR>表示回车键) 运行并分析结果。
⑤ 在④的基础上将printf( )函数调用语句改为:
printf(“a=%d,b=%d\nc1=%c,c2=%c\nd=%15.6f,e=%15.12f\n”,a,b,c1,c2,d,e); printf(“f=%f,g=%f\nh=%d,i=%d\nj=%d,k=%d\n”,f,g,h,i,j,k);
运行程序。
⑥ 将j、k改用%o格式输出。
⑦ 将scanf( )函数中的%lf和%ld改为%f和%d,运行程序并观察分析结果。
二、文件包含预处理命令#include的运用
典型例题中的例3
程序中第7行中sqrt( )是求平方根的函数。它是C系统提供的数学函数库中的函数。程序中调用了数学函数库中的函数 ,须在程序开头加一条包含预处理命令#include <math.h>,把头文件“math.h”包含到程序中来。请注意,凡在程序中要用到系统函数库中的函数,都应当利用包含预处理命令#include把相应的头文件包
33
含到程序中来。
三、编程序
用getchar( )和scanf( )函数分别读入两个字符给c1、c2,然后分别用putchar( )函数和printf( )函数输出这两字符。
上机运行程序,比较用getchar( )和scanf( )函数输入字符的不同;及putchar( )和printf( )函数输出字符的特点。
z实验分析与讨论
z根据实验过程书写实验报告上交老师检查
3.6本章习题解答提示
3.4 printf(“i=%2d j=%2d k=%2d\n”,i,j,k);
printf(“x=%8.6f,y=%8.6f,z=%9.6f\n”,x,y,z);
printf(“x+y=%5.2f y+z=%5.2f z+x=%5.2f\n”,x+y,y+z,z+x);
printf(“u=%6ld n=%9ld\n”,u,n);
printf(“”c1=’%c’ or %d(ASCII)\n”,c1,c1);
printf(“”c2=’%c’ or %d(ASCII)\n”,c2,c2);
3.5 i=64;k=65535,177777.
3.6 8 9
8 9
8 9
127.894997, -123.456001
127.894997 , -123.456001
127.895 ,-123.456,127.895,-123.456,127.894997,-123.456001
1.27895e+02, -1.235e+02
B, 66,102,42
12345678 ,57060516,bc614e
65535, 177777,ffff,-1
C language, C l,C lan
3.8 i=2 j=4
5.8 8.72
B6
3.9 5 7Zz2.3 7.25,-25.6
3.11 用格式输入输出函数scanf( )、printf( ) 实现
3.12 采用字符输入输出函数getchar( )、putchar( )实现
34
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论