分享

ASK HDM(1)

 长沙7喜 2018-09-27

ASK HDM第一期,文字版,一些萌新常见问题的回答。


1.怎么把变量算出来(的结果)小数部分和整数部分分开?


利用强制类型转换。设变量为a, (int)a强制将浮点数a转为整型数,在转换过程中直接将小数部分丢弃,这样就得到了整数部分,再使用a-(int)a,记得分离出小数部分。


2.那怎么进行四舍五入?


(int)(a+0.5)


如果a小数部分小于0.5,那么即使加上0.5,整数部分也不会发生改变;而如果a小数部分大于等于0.5,那么加上0.5,整数部分会加1。再配合强制类型转换,即可得到四舍五入的效果。


3.如何在printf输出中显示百分号%?


因为%用来作为占位符的标记,所以单独一个'%'是不能输出的,需要使用'%%'来完成输出。


4.说说scanf和printf的使用格式呗?


单个整数读入:scanf('%d',&a);


要点:%d表示需要读入一个整数,%lf表示浮点数,%c表示字符,%s表示字符数组,%lld表示long long 长整型的数据。


&符号不要忘记,这是取地址符,具体后续再解释。


两个浮点数读入:scanf('%lf%lf',&a,&b);


要点:两个占位符之间如果没有间隔,在输入数据时默认使用空格作为分隔,占位符和后面的变量是按次序一一对应的,有几个变量,就要使用几个占位符。


字符串的读入:scanf('%s',a);


要点:注意a之前没有'&',目前,我们只需要记住,除了这种特殊情况之外,都是要加'&'符号的。



单个整数的输出:printf('%d',a);

要点:注意占位符和变量类型的匹配,变量前无需使用取地址符&


控制浮点数小数位数输出:printf('%.2lf',a);

要点:需要x位小数,就写'%.xlf',注意是字母l,而不是数字1


5.这是怎么回事?



两个错误。

一是return 0之后缺少分号,这是初学者很容易犯的错误。

二是%.2lf中的字母l写错了。


    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多