程序设计基础c语言 高克宁 第四章课件 清华大学出版社.pptVIP

  • 20
  • 0
  • 约5.92千字
  • 约 25页
  • 2018-01-21 发布于湖北
  • 举报

程序设计基础c语言 高克宁 第四章课件 清华大学出版社.ppt

程序设计基础c语言 高克宁 第四章课件 清华大学出版社

计算机及程序设计概述 输入输出 输入/输出 在C语言中,没有专门的输入输出语句,所有的输入/输出操作都是通过对标准的I/O库函数的调用实现 输入/输出 输入/输出函数 输入是指从键盘接受用户输入数据,输出是指在屏幕上显示结果数据 在C的标准函数库中提供了多种输入/输出函数 例如:printf函数和scanf函数 这些函数定义在头文件stdio.h中 提示 在调用标准输入/输出库函数时,在程序的开始处应有预编译命令: #include stdio.h或 #include “stdio.h” 数据输入 getchar函数 功能 从标准输入设备上(键盘)输入一个且只能是一个字符,并将该字符返回为函数的值 格式:getchar(); 提示 只有在按“回车”键后输入的字 符才有效 此函数只接受一个字符,而非一串字符 若输入 abcde,该 函数也只接受第一个字符 a getchar函数得到的字符可以赋 给一个字符变量或整型变量,也可以不赋给任何变量而是作为表达式的一部分 数据输入 scanf函数 功能 该函数从标准输入设备(键盘)上将数据读到地址参数所指定的位置上 格式:scanf(format,addlist); format规定数据的输入格式,必须由“”括起来,其内容包括格式说明和普通字符两部分 addlist必须与 format 参数中的类型说明相一致 在C语言中一个变量的地址可以通过地址运算符得到 例如:int a,b; 则a,b的地址为a,b 数据输入 数据输入 scanf函数 格式转换说明符 格式说明规定了输入项中的变量将以何种类型的数据格式被 输入 形式:%[修饰符]格式字 可以指定输入数据的域宽,系统自动按域宽截取输入数据 例如:scanf(“%3d”,a);/*按宽度3输入一个整数给变量a*/ 字符*:*表示按规定格式输入但不赋予相应的变量,作用是跳过相应的数据 例如: scanf(“%d%*d%d”,a,b); 输入long型数据必须用%ld,输入double数据必须用%lf或%le 数据输入 scanf函数 输入方法 普通字符在输入时按原样输入 例如 scanf(“%d,%d;”,a,b);/*输入:3,4回车 */ 问题:如果3 4 回车 ? scanf(“a=%d;b=%c;”,a,b);/*输入是:a=3;b=a; */ 数据输入 scanf函数 输入方法 按格式截取输入数据 例如: scanf(“%d%4d”,a,b ); /*输入序列为:123 12345  则a=123 , b=1234*/ 为什么?虽然输入的是12345但%4d宽度为4位,截取前4位,即1234 数据输入 scanf函数 如果格式说明符之间包含其他字符,则输入时,必须在相应位置输入这些字符 如果格式说明符之间不包含其他字符,则输入数据时, 两个数据之间可以使用空格、tab键或回车键作为间隔 输入字符数据时,由于空格和转义字符都是有效字符,所以不能以空格作为间隔符 例如:scanf(“%d%c”,a,c);输入32 ach /*空格符作为输入 数据被赋值给字符型变量c*/ 不允许有精度输入 例如: scanf(“%7.2f”,a);是错误的 数据输出 putchar函数 功能 将指定表达式的值所对应的字符输出到标准设备(终端/显示器),每次只能输出一个字符 格式 putchar(输出表达式); 表达式可以是字符型或整型的变量或常量或表达式 提示 putchar()必须带输出项,只能是单个字符而不能是字符串 数据输出 printf函数 功能 是按控制字符串规定的格式,向缺省输出设备输出在输出项列表中列出的各个输出项 格式:printf(“格式字符串”,输出项列表); 格式字符串是用来说明输出项表中各输出项的输出格式 必须由“ ”括起来 当系统遇到输出的格式说明符后,会自动用后面对应的输出项的值代替它的位置,然后输出 输出项列表列出要输出的项 可以是常量、变量或表达式 当没有输出项列表,同时格式字符串中也不含格式信息,则输出的是格式字符串本身 数据输出 printf函数 输出方法 形式1: printf(字符串); 功能: 按原样输出字符串 例: printf(“hello c programming.\n); 形式2: printf(格式字符串,输出项表); 功能: 按格式字符串中的格式依次输出输出项表中的各输出项 数据输出 printf函数 输出方法 形式2: printf(格式字符串,输出项表); 例:设a=2,b=2.5,c=‘A’; printf(“a=%d,b=%f,c=%c\n”,a,b,c);  

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档