第二次C++上机作业_第1页
第二次C++上机作业_第2页
第二次C++上机作业_第3页
第二次C++上机作业_第4页
第二次C++上机作业_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第二次上机作业 1. #include <iostream>using namespace std ;int main ()int input ;cout<<"which number do you want to test :n"cin>>input ;if (input %2)cout<<"number"<<input<<'t'<<"is odd." else cout<<"number"<&l

2、t;input<<'t'<<"is even." return 0;(1)(1)分别使用数据 345 680 -34 -23.5 作为输入数据,测试程序,分析程序结果,并记录结果。 输入 结果 345345 odd680680 even-34-34 even-23.5-23 odd(2)使用上述数据测试结果正确吗?如果有不正确之处请修改。第四个数据输入后结果不对。修改程序后为:(3)如果对输出结果的显示格式不满意,请修改。(4)请修改if (input %2) 中的表达式,使程序仍然能正确执行。 if (input %2)改为if(i

3、nput &1)2. #include <iostream>#include<cmath>using namespace std;int main()double a,b,c;double delta,x1,x2;int sign;cout<<"一元二次方程a*x*x+b*x+c=0n"cout<<"输入三个系数a(a!=0),b,c:"<<endl;cin>>a>>b>>c;cout<<"a="<<a<

4、;<'t'<<"b="<<b<<'t'<<"c="<<c<<endl;if(a=0)cout<<"二次项系数为0,不是一元二次方程"<<endl;return 0;delta=b*b-4*a*c;if(delta=0)cout<<"方程有两个相同实根:"<<endl;cout<<"x1=x2="<<-b/(2*a)&

5、lt;<endl;elseif(delta>0) sign=1;else sign=0;delta=sqrt(fabs(delta);x1=-b/(2*a);x2=delta/(2*a);if(sign)cout<<"方程有两个不同实根:"<<endl;cout<<"x1="<<x1+x2<<'t'<<"x2="<<x1-x2<<endl;else/delta<0cout<<"方程无实

6、根!有两个不同的复数根:"<<endl;cout<<"x1="<<x1<<"+i"<<x2<<'t'<<"x2="<<x1<<"-i"<<x2<<endl;return 0;编程求一元二次方程ax2+bx+c=0的根。包括以下判断和结果,若输入a=0,给出提示;=b2-4ac ,若>0,输出两个不等的实根;若=0,输出两个相等实根;若<0,输出两个

7、复数根。 【要求】(1)参照主教材的例2.8 编写源程序并调试运行,并记录结果。比较与例2.8 的不同之处。 输入 结果 a=0 b=0 c=4二次项系数为0,不是一元二次方程a=0 b=2 c=4二次项系数为0,不是一元二次方程a=1 b=2 c=0方程有两个不同实根x1=0 x2=-2a=2 b=5 c=1方程有两个不同实根x1=-0.219224x2=-2.28079(2)思考 if else 嵌套使用时的注意事项是什么? If和else“就近配对”,即相距最近且还没配对的一对if和else首先配对。 3. 编写程序:输入一门课程的成绩,若高于90分,输出“A  grade ”

8、;若高于80分而低于90分,输出“B grade ”;若高于70分而低于80分,输出“C  grade ”;若高于60分而低于70分,输出“D  grade ”;否则输出“Not passed ”。 【要求】 1. 使用if else 语句和switch 语句两种方法实现。 2. 分析if else 语句和switch 语句的区别,switch 语句特别适合于什么情况使用? 3. 思考使用switch 语句时应注意什么? (1.)#include<iostream>using namespace std ;int main() int score,p;cout&

9、lt;<"ÇëÊäÈë·ÖÊýscore="<<endl;cin>>score;p=score/10;if (p=9) cout<<"A Grade"<<endl;elseif(p=8) cout <<"B Grade"<<endl;elseif(p=7) cout <<"C Grade"<<endl;else if

10、(p=6) cout <<"D Grade"<<endl; else cout <<"Not passed"<<endl;return 0;#include<iostream>using namespace std ;int main() int score ,p;cout<<"请输入分数score="<<endl;cin>>score;p=score/10;switch(p)case'9':case'10'

11、:cout<<"A Grade "break;case'8':cout<<"B Grade" ;break;case'7':cout<<"C Grade "break;case'6':cout<<"D Grade "break;default:cout<<"Not passed"<<endl;return 0;(2)switch的可读性比嵌套语句if语句要好,更适合于多条件选择

12、。(3)在使用switch语句的时候还要注意的一点是,常量表达式必须由常量所构成,不能含有变量。同时,常量表达式的值必须互不相同,也就是说,同一个常量在switch语句中只能对应一种处理方案4、 编写程序: 输入一个数,判断其是否是3或7的倍数,可分为4种情况输出。(1) 是3的倍数,但不是7的倍数。 (2) 不是3的倍数,是7的倍数。(3) 是3的倍数,也是7的倍数。 (4) 既不是3的被数,也不是7的倍数。 #include <iostream>using namespace std ;int main()cout<<"输入一个数 "<<endl;int a;cin>>a;if(a%3=0)if (a%7=0) cout<<"是3和7的倍数 &q

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论