C++为什么空格无法输出_数据的输入输出举例
前面已经看到了利用printf函数进行数据输出的程序,现在再介绍一个包含输入和输出的程序。
例:求方程ax^2+bx+c=0的根。a、b、c由键盘输入,设b^2-4ac>0
解题思路:首先要知道求方程式的根的方法。有数学知识已知:如果b^2-4ac≥0,则一元二次方程有两个实根:
可以将上面的分式分为两项:
则
有了这些式子,只要知道a、b、c的值,就能顺利地求出方程的两个根。
剩下的问题就是输入a、b、c的值和输出根的值了。需要用scanf函数输入a、b、c的值,用printf函数输出两个实根的值。
编写程序:
#include#includeint main(){ double a,b,c,disc,x1,x2,p,q; scanf("%lf%lf%lf",&a,&b,&c); disc=b*b-4*a*c; p=-b/(2.0*a); q=sqrt(disc)/(2.0*a); x1=p+q;x2=p-q; printf("x1=%7.2fx2=%7.2f",x1,x2); return 0;}
运行结果:
1 3 2
x1= -1.00
x2= -2.00
注意在输入数据时,1,3,2这3个数之间用空格分隔,最后按“回车”键。
程序分析:
(1)用scanf函数输入a、b、c的值,请注意在scanf函数中括号内变量a,b,c的前面要用地址符&,即&a,&b,&c。&a表示变量a在内存中的地址。该scanf函数表示从终端输入的3个数据分别送到地址为&a,&b,&c的存储单元,也就是赋值给变量a,b,c。双撇号内用%lf格式声明,表示输入的是双精度型实数。
(2)在scanf函数中,格式声明为“%lf%lf%lf”,连续3个“%lf”,要求输入3个实数。注意在程序运行时应怎样输入数据。从上面运行情况中可以看到输入“1 3 2”,两个数之间用空格分开,这是正确的,如果用其他符号会出错。输入的是整数,但由于指定用%lf格式输入,因此系统会先把这3个整数转换成实数1.0,3.0,2.0,然后赋值给变量a,b,c.
(3)在printf函数中,不是简单地用%lf格式声明,而是在格式符f的前面加了“7.2”,表示在输出x1和x2时,指定数据占7列,其中小数占2列。这样做的好处是:1.可以根据实际需要Laura输出小数的位数,因为并不是任何时候都需要6位小数的,例如价格只须2位小数即可,2.如果输出多个数据,各占一行,而用同一个格式声明,即使输出的数据整数部分值不同,但输出时上下行必然按小数点对齐,使输出数据整齐美观。
(4)在本例中假设给定的a,b,c的值满足b^2-4ac>0,所以程序不对此进行判断。在实际中,用所输入的a,b,c并不一定能求出两个实根。因此为稳妥起见,应在程序的开头检查b^2-4ac是否大于等于0.只有确认它大于等于0,才能用上述方法求方程的根。
搜索微信公众号【balayihuier】或扫描下方二维码关注微信公众号,资深软件工程师带你手把手撸代码,从此走上人生巅峰,迎娶白富美!
公众号《吧啦一会儿》,手把手带你撸代码
C++为什么空格无法输出_数据的输入输出举例相关推荐
- puts遇到空格无法输出_输入一句英文,只包含字母和空格,如何输出这句英文中.....-黑马程序员技术交流社区...
//输入一句英文,只包含字母和空格,如何输出这句英文中的最长单词?再把每个单词的首字母转换成大写! #include #include int main(int argc, const char * ...
- python模拟声音输出_声音的输入输出
# 声音的输入输出 在本章我们将学习如何读写WAV文件,如何利用声卡实时地进行声音的输入输出.标准的Python已经支持WAV文件的读写,而实时的声音输入输出需要安装pyAudio([http://p ...
- C++为什么空格无法输出_算法竞赛C++常用技巧——输入输出优化(防止TLE)
cin.cout优化 在默认情况下,std::cin/std::cout 是极为迟缓的输入/输出方式,而 scanf/printf 比 std::cin/std::cout 快得多. 可是为什么会这样 ...
- C++为什么空格无法输出_那些C/C++程序员该具备的32个编程修养习惯!
阅读本文可能需要较长时间. 1.版权和版本 好的程序员会给自己的每个函数,每个文件,都注上版权和版本. 对于C/C++的文件,文件头应该有类似这样的注释: /********************* ...
- python遍历data、并输出结果_获取python运行输出的数据并解析存为dataFrame实例
在学习xg的 时候,想画学习曲线,但无奈没有没有这个 evals_result_ AttributeError: 'Booster' object has no attribute 'evals_re ...
- 输出空格隔开换行_【前端干货】CSS 的空格处理
一空格规则 HTML 代码的空格通常会被浏览器忽略. <p>◡◡hello◡◡world◡◡</p> 上面是一行 HTML 代码,文字的前部.内部和后部各有两个空格.为了便于识 ...
- ahk写入excel单元格_输出excel数据到GUI 获取excel所有Sheet及字段 Autohotkey
;Thinkai@2015-10-25 Gui, Add, Tab, x0 y0 w800 h500 vtab Gui, Show, , 输出excel数据到GUI FileSelectFile, f ...
- python数据输出_python数据输出
下面的是我的code, 但是最后的结果全部都是others,有哪位大神能帮忙看产生输出的最简单方法是使用print语句,可以通过用逗号分隔零个或多个表达式.这个函数传递表达式转换为一个字符串,如下结果 ...
- 数据科学的发展_数据科学的发展与发展
数据科学的发展 There's perhaps nothing that sets the 21st century apart from others more than the concept o ...
最新文章
- 算符优先文法,中缀式求值,栈的典型应用
- python上海培训哪里比较好-python培训机构上海哪里好?
- 惯性制导精度是多少_我国东风41精度凭啥第一?激光陀螺仪不算啥,太空水漂才真厉害...
- Python_模块Module
- 推荐 | 微软SAR近邻协同过滤算法相关问题(三)
- ORB-SLAM 解读(六)ORB特征点构建BoW
- Cache基本原理之:结构
- Padavan设置无线中继
- halcon 纹理检测_halcon学习网
- 20162327WJH《程序设计与数据结构》课程总结
- 佳能2900打印机与win10不兼容_佳能LBP2900 64位驱动下载|佳能LBP2900打印机64位驱动支持Win10/Win7 下载_当游网...
- pythonlauncher是干什么用的_python launcher是什么
- php生成临时文件,php生成zip压缩文件的方法详解
- dismiss和remove_关于dismiss的用法,dismiss和fire的区别?
- 关于联想Y700,玩游戏闪屏
- 0到π/0到2π,sinⁿx、cosⁿx的定积分
- 青少年软件编程(202209)(C语言)(数据结构)等级考试(六级)试题及参考答案
- (转)MVS-OS390系统管理-第二章 大型服务器外存管理
- 3.矩阵乘法和逆矩阵
- 《有限与无限的游戏》