- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
上次作业中的问题
▪ 数据类型 (定义)不正确
▪ float a,b,h,s;
▪ sum?
▪ scanf()语句格式不正确
▪ scanf(“%f%f%f”,a,b,h);
▪ 输入数据时一定要按照上面的格式输入数据
▪ scanf(“%f,%f,%f”,a,b,h);
▪ 缺少符号或多了符号或者符号写得有错
误。
1
第3讲
▪简单C程序设计之二
▪多函数程序设计
• 若a,b,h分别是1,2,3,结
编写求梯形面积的程序
果会怎样?
• • 若全部数据类型都是float,
#include stdio.h s=4.000000
• s=1/2*(a+b)*h的结果又会
为什 么?
void main() 怎样?
• 因为 右边的数据都是整型数
{ • s=0.000000
,所以计算结果也是整型了。
• 因为1/2中的两个常数都是
int a,b,h; • 要想得到正确结果就需要将
整数,结果仍是整数,为0,
所有 数据改为float类型。
float s; 再继续进行运算,结果仍为
0。
printf( please input a,b,h: );
• 要想得到正确结果,要
scanf(%d%d%d, a, b, h);
s=(float)1/2*(a+b)*h(强行将
s= (a+b)*h/2; 1转换成float类型)或
printf( s=%f\n, s=1.0/2*(a+b)*h(因为第
} 一个数据是实数类型,其他
的运算结果一律自动转换成
double类型)
涉及到的语法知识
-数据类型的自动转换和强制转换
▪ 当表达式中的数据类型不一致时
▪ 数据类型的自动转换
▪ 方向:char→int→float→double
▪ 数据类型的强制转换
▪ 在表达式前加 (数据类型)
值得注 意的是:
不要让这种转换导致计算上的错误!
▪ 例:s=(float)1/2*(a+b)*h
▪ s=(float)(1/2)*(a+b)*h的 ?
▪ 赋
文档评论(0)