【发布时间】:2010-08-27 19:32:27
【问题描述】:
我为我的过程编程课程购买了“A Book on C”,并且正在完成一些练习。第 2 章练习 9 是关于设计一个可以处理盎司、磅、克和千克的单位转换器。
我编写的代码有效,但我真的认为它可以做得更简洁。使用嵌套的 if 语句似乎是一种混乱的方式。
另外,我注意到的一个问题是,如果在第 27 行给 scanf() 一个字符或字符串,它将持续存在,然后在第 95 行传递给 scanf()。例如,如果您输入“y ” 作为要转换的值,程序将转到开始,不允许用户回答“您要执行额外的转换吗?”我该如何解决这个问题,以便在输入 NaN 时将其丢弃?
我的代码可以位于: http://pastebin.com/4tST0i7T
【问题讨论】:
-
我建议设置枚举——从 0 开始的整数表示类型。然后将转换粘贴到对称的 n x n 矩阵中。最后,用它来找到正确的系数。
-
把代码放在这里,而不是使用pastebin。
-
SO 问题预计会出现,因此其他人可以从阅读它们和他们的答案中受益。将重要信息放在其他网站上会适得其反。请至少将代码的重要部分放在您的问题中。
标签: c