第3章顺序结构_第1页
第3章顺序结构_第2页
第3章顺序结构_第3页
第3章顺序结构_第4页
第3章顺序结构_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

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

文档简介

第三章顺序结构程序设计

3.1C语句分类概述3.2数据输入/输出3.3程序举例2/3/2023第4次课教学目的:了解C语句的种类;

熟记数据的输入及输出函数的一般格式;利用输入输出函数编写简单的顺序结构程序;重点:字符输入输出函数的格式及使用;格式输入输出的格式及使用;程序编写;难点:格式输入输出函数的格式及使用教具:ppt课件、屏幕投影教学过程:问题引入、内容讲解、提问、小结、作业2C程序结构:顺序结构、选择结构和循环结构。

3.1

C语句分类概述

C语句可以分为以下5类:控制语句

控制语句完成一定的控制功能。C语言只有9种控制语句,它们是:①if()~else~

(条件语句)②switch (多分支选择语句)③goto (转向语句)④while()~

(循环语句)3⑤do~while() (循环语句)⑥for()~

(循环语句)⑦break (中止执行switch或循环语句)⑧continue (结束本次循环语句)⑨return (从函数返回语句)(2)函数调用语句函数调用语句就是在函数调用的后面加一个分号。例如:printf(“ThisisaCstatement.”);函数调用语句的一般形式是:

函数名(参数列表);

4(3)表达式语句

在任何一个C语言合法表达式的后面加一个分号就构成了相应的表达式语句。表达式语句的一般形式为:表达式;注意:一个语句必须在最后出现分号,分号是语句中不可缺少的一部分。例如:

i++;

x+y;

注意空语句在语法上占有一个语句的位置,而执行该语句不做任何操作。空语句常用于循环语句中,构成空循环。(4)空语句只有一个分号的语句是空语句,其一般形式为:

;

5(5)复合语句复合语句是由花括号{}将多条语句括在一起而构成的,在语法上相当于一条语句。复合语句的一般形式为:{ [内部数据描述]

语句1

语句n}

在复合语句的“内部数据描述”中定义的变量,仅在复合语句中有效;复合语句结束的“}”之后,不需要再加分号。6例3.1复合语句main(){ intx=1;

printf("x=%d\n",x); /*输出x=1*/ { intx=2;

printf("x=%d\n",x); /*输出x=2*/ }

printf("x=%d\n",x); /*输出x=1*/}运行结果:x=1x=2x=173.2数据输入/输出

一、字符输出函数putchar()函数原型:int

putchar(int);函数功能:向标准输出设备(一般为显示器)输出一个字符,并返回输出字符的ASCII码值。参数:函数的参数可以是字符常量、字符变量或整型变量。#include"stdio.h" main() {inti=65; charch='A';

putchar(i);

putchar('\n');

putchar(ch);}运行结果:

A A8二、字符输入函数getchar()函数原型:int

getchar(void);函数功能:从标准输入设备(一般为键盘)输入一个字符,函数的返回值是该字符的ASCII码值。例如:#include"stdio.h" main() {charch;

inti;

ch=getchar();i=getchar(); putchar(ch);

putchar('\n');

putchar(i);}9三、格式输出函数printf()函数原型:int

printf(char*format[,argument,…]);函数功能:按规定格式向输出设备(一般为显示器)输出数据,并返回实际输出的字符数;若出错,则返回负数。

printf()函数使用的一般形式为:

printf(“格式控制字符串”,输出项表列);说明:1)输出项表列:列出了要输出的表达式(可以是常量、变量、带有运算符的表达式、函数返回值等),表达式可以是0个、一个或多个,每个输出项之间用逗号“,”分隔。2)格式控制字符串:必须用英文状态下的双引号括起来,它的作用是控制输出项的格式和输出一些提示信息。103)格式控制字符串内容

普通字符:普通字符在输出时,按原样输出,主要用于输出提示信息。如:printf(“123abcd”);转义字符:转义字符指明特定的操作,如‘\n’表示换行,‘\t’表示水平制表等。如:printf(“ab\ncd”);格式说明:由“%”和格式字符组成,其作用是为输出的数据指定输出的格式。见下表。11124)修饰符:在格式控制字符串中的%和格式字符之间还可以插入以下几种附加字符(又称修饰符)。5)输出项表列中的输出项为表达式。格式控制字符串中的输出项格式说明与输出项表列中的输出项按顺序一一对应,且输出项的数据类型要与格式字符相容,否则会导致执行错误。13例3.1整型数据的输出。main(){ inta=12; longb=20040978;

printf("a=%d,a=%6d,a=%-6d,a=%06d\n",a,a,a,a);

printf("%d,%o,%x,%u\n",a,a,a,a);

printf("b=%ld\n",b);}运行结果:a=12,a=12,a=12,a=00001212,14,c,12b=20040978 14例3.2实型数据的输出。main(){ floatx=1234.567; doubley=1234.5678;

printf("%f,%f\n",x,y); printf("%6.3f,%10.3f\n",x,y); printf("%e\n",x);}运行结果:1234.567000,1234.5678001234.567,1234.5681.234568e+003 15例3.3字符数据的输出。main(){ charc='B';

inti=65;

printf("%c,%d\n",c,c);

printf("%d,%c\n",i,i); printf("%-5c,%5c\n",c,c);}运行结果:B,6665,AB,B 16例3.4

字符串的输出。main(){printf("computer\n");

printf("%s\n","computer");printf("%5s\n","computer"); printf("%10s\n","computer");printf("%-10s\n","computer");printf("%-10.5s\n","computer");}运行结果:computercomputercomputercomputercomputercompu

17四、格式输入函数scanf()1.格式输入函数的一般形式函数原型:int

scanf(char*format[,argument,…]);函数功能:按规定格式从键盘输入若干任何类型的数据给argument所指的单元。scanf()函数使用的一般形式为

scanf(“格式控制字符串”,地址表列);2.格式控制字符串格式控制字符串的作用与printf()函数中的作用相似,它一般由普通字符、输入数据格式说明组成。

(1)格式说明输入数据格式说明以%开始,以一个格式字符结束,中间可以插入附加的字符。这里格式说明的作用是控制输入数据的格式。

1819(2)普通字符与printf()函数的普通字符不同,scanf()格式控制字符串中的普通字符是不显示的,而是规定了输入时必须输入的字符。例如:scanf("a=%d",&a);若要将30输入到a变量中,应按下列格式输入:a=30scanf("%d,%f",&a,&x);要将10送给a,2.5送给x,则对应的输入格式为:10,2.5

203.地址表列地址表列是由若干个地址组成的列表,可以是变量的地址、字符串的首地址、指针变量等,各地址间用逗号“,”隔开。对于变量的输入,应为:scanf(“%d,%d”,&a,&b);scanf("%d",&a); /*从键盘输入数据,存入a变量的内存地址中*/

printf("%d",a); /*将变量a的值输出*/注意214.使用scanf()函数应注意的问题

若用一个scanf()函数输入多个数据,且格式说明之间没有任何普通字符例如:scanf("%d%d",&a,&b);执行该语句时,应以空格、回车或tab键作为数据输入的结束。如

510或

5

10

或5tab键

10当scanf()函数指定输入数据所占的宽度时,将自动按指定宽度来截取数据。例如:scanf("%2d%3d",&a,&b);若输入为123456789则函数截取12存入地址&a中,截取345存入地址&b中。22(2)输入实型数时不能规定精度用scanf()函数输入实型数时,可以指定宽度,但不能规定精度。例如:scanf("%4f%5f",&x,&y);√若输入12.345.6789↙则12.3送给变量x,45.67送给变量y。而语句scanf("%10.2f",&x);☓23(3)用“%c”格式如何输入字符在用“%c”格式输入字符时,空格字符和转义字符都作为有效字符输入。例如:scanf("%c%c%c",&a,&b,&c);若输入

abc则字符'a'送给a,空格送给b,字符'b'送给c,若输入abc则字符'a'送给a,字符'b'送给b,字符'c'送给c。思考inta,b;charch;

scanf("%d%c%d",&a,&ch,&b);若想将12、a、34分别输入到a,ch,b中,应如何输入?24(4)附加字符“*”的用法格式说明中的附加字符“*”为输入赋值抑制字符,表示该格式说明要求输入数据,但不赋值。例如:scanf("%3d%*2d%f",&a,&x);若输入为12345678.9则123送给a,678.9送给x,而45不赋给任何变量。253.3程序举例一个顺序结构程序,一般包括以下两个部分。1.编译预处理命令在程序的编写过程中,若要使用标准库函数,需要用编译预处理命令#include,将相应的头文件包含进来。若程序中只使用scanf()函数和printf()函数可省略不写#include"stdio.h"。2.主函数在主函数体中,包含着顺序执行的各个语句。主要有以下几个部分:(1)变量类型说明;(2)给变量提供数据;(3)按题目要求进行运算;(4)输出运算结果。26eg3.6从键盘上输入一个小写字母,输出对应的大写字母。定义字符型变量c;输入小写字母存入变量c;转换成大写c=c-32;输出变量c。算法分析参考程序:#include"stdio.h"main(){charc;

printf("Inputalowercaseletter:");c=getchar(

温馨提示

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

评论

0/150

提交评论