当前位置:首页 > 菜鸟学编程(何勤)10.20 - 图文
printf(\ printf(\
实型量不能用格式符%d匹配,整型量不能用格式符%f匹配,这是初学者经常犯的编程错误。
有了以上这些必要知识,现在我们终于可以通过编程来做一些比较有意义的事了。
例题2.1求住宅的每月物管费用
已知每平方米每个月的物管费用是1.3元人民币,求86.5平方米的一套住宅每月要交的物管费用是多少。
程序分析:每月的单位面积物管费用1.3元是一个常量,很少会改变,我们不妨用常量。住宅面积要用一个float型的变量tenement_area来表示,这是因为程序要处理的每套住宅的面积都可能不一样。
该住宅每月应交的物管费用也还要用一个变量,显然还是应当用float类型来定义,该变量不妨用标识符management_cost 。
一套住宅每月的物管费用应当是:1.3×tenement_area 。 经过上述分析,我们可以编出如下程序来: 0 #include
3. float tenement_area=86.5 ; /*定义实型变量时初始化为86.5*/ 4. float management_cost ; /*定义实型变量物管费用*/
5. management_cost=1.3 * tenement_area ; /* 求出每月物管费用*/ 6 printf(\每月物管费用为:%.2f元\\n\ , management_cost ) ; 7. return 0; 8.}
运行此程序,得到的结果是: 每月物管费用为:112.45元
程序说明:在C语言程序中,我们要用C字符集中的 “*” 替换“ ×” 表示要做乘法运算。这样一来,就可通过第5行的语句management_cost=1.3 * tenement_area ; 求出每月要交的物管费用来,并且存放在变量management_cost中。因为这条语句的含义是:计算出式子1.3 * tenement_area的值来,并把它保存在变量management_cost所对应的内存单元中。
但是,此程序还存在一个亟待解决的问题:
这个程序不经过修改,只能计算面积为86.5平方米的住宅每月的物管费用。如果要计算其它面积住宅的每月物管费用,必须在每次运行前修改程序的第3行并重新编译。这对程序使用者来说非常麻烦。如果在程序每次运行时,能够通过键盘将实际的住宅面积输入到变量tenement_area中,那么这个程序每一次运行就可以算出一套实际住宅的每月物管费用。这样就可以不必每次都修改程序。
所以,在程序运行时,将程序变量需要的当前值,通过键盘输入到内存指定单元中去是非常重要的、必不可少的。
下面这一节将讨论:如何调用格式化输入库scanf()函数,在程序运行时,通过键盘输入指定变量的值。解决上述至关重要的问题。
49
2.7格式化输入库函数scanf()的用法(一)
在程序运行过程中,我们想要暂时中断一下程序运行,通过键盘输入数据到变量所对应
的内存单元中,就要在程序中事先写好输入库函数调用语句。scanf()是格式化输入库函数,这是一种常用到的输入库函数。
格式化输入库函数scanf()的调用,可以使得程序运行暂停下来,等待用户从键盘输入数据。程序用户可以通过键盘输入一个数值(输完数据后,要按下回车键:Enter键或Return键),scanf()函数就会将这个输入值(经过转换)存放到变量所对应的内存单元中。
不过在scanf()函数调用时,第一个参数是相应的格式符%d,%f或%c,它们与要输入的变量类型的简单对应关系如下表: 格式符 %d %f %c 输入变量的类型 int float char 表2.3格式符与输入变量类型的匹配
用库函数scanf()的调用通过键盘输入一个变量值的最简单形式是:
scanf(“格式符”,&变量);
例如:scanf(\%f\ , & tenement_area ) ; //假设tenement_area是float型变量 scanf(\%d\ , & age ) ; //假设age是int型变量 scanf(\%c\ , & ch ) ; //假设ch是 char型变量
演示程序 2.5 #nclude
int num ; float x ; char ch;
printf(\请输入总人数\\n\scanf(\%d\ , & num ) ;
printf(\请输入现在气温\\n\scanf (\%f\ ,&x ) ;
printf(\请输入等级(A、B、C)\\n\ scanf(\%c\ ,& ch ) ;
printf(\总人数是:%d\\n气温是:%.2f\\n 等级是:%c\\n\输出变量值 }
程序运行后,人机之间的交互过程如下:
请输入总人数 //计算机显示的输入提示
18↙ //程序用户在键盘上的输入 符号 “↙” 表示按下回车键
50
共分享92篇相关文档