第4章顺序结构-C语言程序设计(谭浩强第三版)_第1页
第4章顺序结构-C语言程序设计(谭浩强第三版)_第2页
第4章顺序结构-C语言程序设计(谭浩强第三版)_第3页
第4章顺序结构-C语言程序设计(谭浩强第三版)_第4页
第4章顺序结构-C语言程序设计(谭浩强第三版)_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1第4章简单的c程序设计c语句概述赋值语句数据的输出

数据的输入程序举例24.1

c语句概述34.1

c语句概述5类控制语句函数调用语句表达式语句空语句复合语句4

(1)控制语句。控制语句用于完成一定的控制功能。C只有9种控制语句:

if()…else… for()… while()… do…while() continue break switch goto return(2)函数调用语句。函数调用语句由一个函数调用加一个分号构成。Printf(“ThisisaCstatement.”);

(3)表达式语句。表达式语句由一个表达式加一个分号构成。

(4)空语句:;。

(5)复合语句。可以用{}把一些语句括起来成为复合语句。5

赋值语句是由赋值表达式加上一个分号构成例:a=100赋值表达式

a=100;赋值语句4.2

赋值语句64.3

数据输入输出的概念及在C语言中的实现(一).所谓输入输出是以计算机主机为主体而言的输出:从计算机向外部输出设备(显示器,打印机)输出数据输入:从输入设备(键盘,鼠标,扫描仪)向计算机输入数据.(二).C语言本身不提供输入输出语句,输入和输出操作是由C函数库中的函数来实现的例如:字符输入函数:getchar字符输出函数:putchar格式输入函数:scanf格式输出函数:printf字符串输入函数:gets字数串输出函数:puts(三).在使用系统库函数时,要用预编译命令“#include”将有关的“头文件”包括到用户源文件中.例如:在调用标准输入输出库函数时,文件开头应该有:

#include“stdio.h”先从当前目录,再库文件所在目录或:

#include<stdio.h>74.4

数据的输出

数据输出:是指把计算机内存中的数据送到外部设备上去的操作。默认的输入设备是键盘,默认的输出设备是显示器。C语言没有输入/输出语句。I/O操作通过系统函数实现。介绍两个输出函数:

printf():按指定格式向终端(显示器)输出若干个任意类型的数据。

putchar():向终端(显示器)输出一个字符。

8格式:printf(“格式控制串”,输出表)功能:按指定格式向显示器输出数据返值:正常,返回输出字节数;出错,返回EOF(-1)

输出表:要输出的数据(可以没有,多个时以“,”分隔)

格式控制串:包含两种信息1、格式说明%[修饰符]格式字符

,用于指定输出格式,将数据转换为指定的格式输出.如:%d、%f2、普通字符或转义序列:将被原样输出的字符(包括转义字符).

printf(“%d%d”,a,b);

格式说明输出表列

printf(“a=%db=%d\n”,a,b);

普通字符一、格式输出函数:9完整格式说明为:printf函数%格式说明起始符—0m.nl或h格式字符指定输出类型输出长度修正指定输出宽度及精度指定空位填0指定左对齐输出10d,ix,Xoucse,Efg%%格式字符:十六进制无符号整数不带符号十进制整数十进制整数指数形式浮点小数单一字符字符串八进制无符号整数小数形式浮点小数e和f中较短一种百分号本身inta=567;printf(“%d”,a);inta=255;printf(“%x”,a);inta=65;printf(“%o”,a);inta=567;printf(“%u”,a);chara=65;printf(“%c”,a);printf(“%s”,“ABC”);floata=567.789;printf(“%e”,a);floata=567.789;printf(“%f”,a);floata=567.789;printf(“%g”,a);printf(“%%”);567ff101567AABC5.677890e+02567.789000567.789%说明 格式字符要用小写格式字符与输出项个数应相同,按先后顺序一一对应输出转换:格式字符与输出项类型不一致,自动按指定格式输出例inta=3,b=4;printf(“%d%d\n”,a,b);printf(“a=%d,b=%d\n”,a,b);例inta=3,b=4;printf(“%d%d\n”,a,b);printf(“a=%d,b=%d\n”,a,b);输出结果:34

a=3,b=4例main(){unsignedintu=65535;printf(”u=%d\n",u);}输出结果:u=-11111111111111165535%—0m.nl或h

格式字符11.n对实数,指定小数点后位数(四舍五入)对字符串,指定实际输出位数修饰符功能m输出数据域宽,数据长度<m,左补空格;否则按实际输出输出数据在域内左对齐(缺省右对齐)-指定在有符号数的正数前显示正号(+)+输出数值时指定左面不使用的空位置自动填00在八进制和十六进制数前显示前导0,0x#在d,o,x,u前,指定输出精度为long型在e,f,g前,指定输出精度为double型l%—0m.nl或h

格式字符附加格式说明符(修饰符)12例整型、字符、实型字符串的输出。inta=1234;floatf=123.456;charch=‘a’;printf(“%8d,%-8d,%2d\n”,a,a,a);printf(“%f,%10f,%10.1f,-%10.1,%.2f,%.2e\n”,f,f,f,f,f,f);printf(“%3c\n”,ch);运行结果:

1234,1234,1234123.456000,123.456000,123.5,123.5,123.46,1.23e+02a例m.n-13运行结果:

CHINA,CH,CHIN,CHI例字符串的输出。

#include<stdio.h>

voidmain()

{

printf(“%3s,%7.2s,%.4s,%-5.3s\n”,“CHINA”,“CHINA”,“CHINA”,“CHINA”);

}

14printf函数注意:除X、G、E外,其余格式字符必须小写。15二、字符输出函数

putchar()结果:AA例1:#include“stdio.h”main(){charc1,c2;c1=‘A’;c2=65;

putchar(c1);putchar(c2);}例2:输出控制字符、转义字符。#include“stdio.h”main(){putchar(‘\101’);putchar(‘\n’);putchar(‘\\’);}结果:A

\格式:putchar(c)参数:c为字符常量、变量或表达式功能:把字符c输出到显示器上返值:正常,为显示的代码值;出错,为EOF(-1)164.5

数据的输入

数据输入:是指从计算机的外部设备上将数据送入内存的操作。介绍两个输入函数:scanf():按指定格式从键盘读入数据给变量,存入地址表指定的存储单元中。getchar():从键盘输入一个字符。17一、格式化输入函数

scanf()

格式:scanf(“格式控制字符串”,地址表列)功能:按指定格式从键盘读入数据。格式字符串、普通字符内存地址,可以是变量的地址、数组元素的地址等。

形式为:%[*mhl]格式字符

d,i,o,x(X),u,c,s,f,e(E),g(G)18常用:

%d——int型变量的地址%ld——long型变量的地址%f——float型变量的地址%lf——double型变量的地址%c——char型变量的地址%s——char型数组名一、格式化输入函数

scanf()

19例scanf(“%4d%2d%2d”,&yy,&mm,&dd);

输入19991015

则1999yy,10mm,15dd例scanf(“%3d%*4d%f”,&k,&f);

输入12345678765.43则123k,8765.43f例scanf(“%2d%*3d%2d”,&a,&b);

输入1234567则12a,67b附加格式说明符(修饰符)修饰符功能*表示本输入项在输入后不赋给相应的变量数字m指定输入数据宽度,遇空格或不可转换字符则结束

h用于d,i,o,x,u前,指定输入为short型整数

l用于d,i,o,x,u前,指定输入为long型整数;用于e,f,g前,指定输入为double型实数

L用于e,f,g前,指定输入为longdouble型实数20一、格式化输入函数

scanf()

输入分隔符的指定一般以空格、TAB或回车键作为分隔符

其它字符做分隔符:格式串中两个格式符间字符例scanf(“%d%o%x”,&a,&b,&c);输入123123123例scanf(“%d:%d:%d”,&h,&m,&s);输入12:30:45则12h,30m,45s例scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);输入a=12,b=24,c=3621当一行内输入的数据个数小于格式字符串的个数时,光标会出现在下一行,等待用户继续输入。当一行内输入的数据个数大于格式字符串的个数,会把多于的数据留给后面的scanf函数使用。一、格式化输入函数

scanf()

例scanf(“%7.2f”,&a);是不合法的说明:输入数值时不能规定精度22一、格式化输入函数

scanf()

用“%c”格式符时,空格和转义字符作为有效字符输入。

可以指定字符宽度例如scanf(“%c%c%c”,&c1,&c2,&c3);若输入abc则ac1,

c2,bc3例如scanf(“%3c%2c”,&c1,&c2);若输入

abcde

则‘a’c1,‘d’c223一、格式化输入函数

scanf()

输入数据时,遇以下情况认为该数据结束:

遇空格、TAB、或回车

遇宽度结束

遇非法输入例如scanf(“%d%c%f”,&a,&b,&c);若输入1234a123o.26则1234a,‘a’b,123

c24例intx;charch;scanf(“%d”,&x);scanf(“%c”,&ch);printf(“x=%d,ch=%d\n”,x,ch);执行:123输出:x=123,ch=10例intx;charch;scanf(“%d”,&x);ch=getchar();printf(“x=%d,ch=%d\n”,x,ch);执行:123输出:x=123,ch=10注意:输入函数留下的“垃圾”(略)25二、字符输入函数

getchar()注意:(1)getchar()

只接受一个字符。输入多个字符时,多余字符作废。(按回车后才开始接收字符)(2)用getchar()得到的字符可以赋给字符型变量、整形变量或作为表达式的一部分。如c=getchar()+32;putchar(c);若输入是:A则输出是:a(3)使用getchar()、putchar()时,在程序的开头要有:

#include<stdio.h>或#include“stdio.h”格式:getchar()功能:从键盘缓冲区读入一个字符。函数值:从输入设备得到的字符。26例:#include<stdio.h>main(){intc;printf(“Enteracharacter:”);c=getchar();printf(“%c:%d\n”,c,c);}Enteracharacter:aa:97二、字符输入函数

getchar()274.6

顺序程序设计举例顺序结构程序设计主要过程——定义变量,输入或赋值,计算,输出结果28#include<math.h>#include<stdio.h>main(){floata,b,c,s,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);}例1输入三角形边长,求面积输入:3,4,6输出:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论