1、输入输出要点 C语言程序设计 2 3 2数据输出 主要内容 格式输出函数 3 3 3 2格式输出函数 函数调用的一般形式printf 格式控制 参数2 参数n 功能 按格式控制所指定的格式 在标准输出设备上输出参数2 参数n的值 例如有程序段 inta 123 b 100 printf d d d n a b a b printf c d d d n a b a b 输出结果 123100223c 123 100 223 4 格式控制 用双引号括起的字符串 用于指定输出数据的类型 格式 个数包括 普通字符和格式说明符 照原样输出 printf c d d d n a b a b 格式说明符 指
2、定输出3个十进制整型数 分别为变量a b a b的值 5 输出格式说明符 在 和格式符之间可以使用附加说明符 6 附加格式说明符 例如 ld 输出十进制长整型数 m nf 右对齐 m位域宽 n位小数或n个字符 m nf 左对齐 7 例2整型数据的输出 main inta 11 b 22 intm 1 longn 123456789 printf d d n a b printf a d b d n a b printf m d o x u n m m m m printf n d n n printf n ld n n 程序输出 1122a 11 b 22m 1 177777 ffff 655
3、35n 13035n 123456789 8 例3实型数据的输出 main floatx 1234 56 y 1 23456789 doublez 1234567 123456789 printf x f y f n x y printf z f n z printf z e n z printf z g n z printf z 18 8f n z printf x 10 3f n x printf x 10 3f n x printf x 4 3f n n x 程序输出 x 1234 560059 y 1 234568z 1234567 123457z 1 23457e 06z 12345
4、67z 1234567 12345679x 1234 560 x 1234 560 x 1234 560 9 例4字符型数据的输出 main intm 97 charch B printf m d c n m m printf ch d c n ch ch printf s n student printf 10s n student printf 10s n student printf 10 3s n student printf 3s n n student 程序输出 m 97ach 66Bstudentstudentstudentstustu 10 注意 printf函数格式控制中的格
5、式说明符与输出参数的个数和类型必须一一对应 格式说明符的 和后面的描述符之间不能有空格 除 X E G外类型描述符必须是小写字母 长整型数应该用 ld 或 lo lx lu 格式输出 否则会出现输出错误 printf函数的参数可以是常量 变量或表达式 在计算各参数值时 TurboC采用从右至左的顺序求值 11 3 3数据输入 主要内容 格式输入函数 12 3 3 2格式输入函数 函数调用的一般形式scanf 格式控制 地址参数2 地址参数n 功能 按格式控制指定的格式 从标准输入设备 即键盘 交互输入数据 并依次存放到对应地址参数指定的变量中 即将输入值赋给变量 例如 scanf d f 13
6、 格式控制 用双引号括起的字符串 用于指定输入数据的类型 格式 个数以及输入的形式包括 普通字符和格式说明符 照原样输入 scanf a d b d 格式说明符 指定输入2个十进制整型数赋给变量a和b 14 输入格式说明符 在 和格式符之间可以使用附加说明符 15 附加格式说明符 例如 ld lo 输入十进制 八进制长整型数 lf le 输入双精度实型数 mf 输入m位数 域宽 d 忽略输入的一个整型数 对float和double型指整数位数 小数点 小数位数 16 例如 scanf d d d 输入的形式是 a 32 b 28 普通字符要照原样输入 17 使用scanf函数应注意 要求在程序
7、运行中输入数据 输入的数据个数和类型必须与格式说明符一一对应 地址参数形式 变量名 除数组或指针变量 格式控制中有普通字符时 必须照原样输入 格式控制中无普通字符时 输入的数值型数据和字符串用空白符分隔 字符型数据不必分隔 double型数据输入时 必须用 lf或 le格式实型数输入时域宽不能用m n形式的附加说明为了减少不必要的输入量 除了逗号 分号 空格符以外 格式控制中尽量不要出现普通字符 也不要使用 n t 等转义字符 18 scanf c c c 要输入 abc 不能输入 a b c 注意数值型数据与char型数据的混合输入 注意 续 格式符之间若无普通字符 则 输入的数值型数据用空白符分隔输入的char型数据不必分隔 例如 scanf d d 错误输入 32 28 a 正确输入 32 28a 19 举例 例7 已知三条边a b c 求三角形面积 计算三角形面积的海伦公式 其中 设定义 整型变量a b c实型变量s area 20 程序如下 include math h main inta b c floats area scanf d d d 程序运行情况如下 3 4 5 area 6 000 实际上还需要判断a b c是否能构成三角形 即应该进行选择判断处理