西南交通大学C++实验报告计算机程序设计基础(C++)实验1一、实验目的1.熟悉C++程序的集成开发环境;2.学习新建和打开控制台应用程序的方法;3.掌握简单数据运算,以及输入与输出方法。
二、实验任务1.输入一摄氏温度,输出显示所转换的华氏温度。
(提示:摄氏温度=(华氏温度-32)×5/9)2.画出一头威武雄壮的雄狮。
,%%%%%%,%%/\%%%%/\%,%%%\c "" J/%%%%. %%%%/ o o \%%%`%%. %%%% _ |%%`%% `%%%%(__Y__)%// ;%%%%`\-/%%%'(( / `%%%%%%%'\\ .' |\\ / \ | |\\/ ) | |\ /_ | |__(___________)))))))三、实验结果(源程序+ 注释)1.源程序#include<iostream>using namespace std;void main(){double a,b;cout<<"请输入一摄氏温度:"<<endl;cin>>a;b=a*9/5+32;cout<<"转换的华氏温度为:"<<b<<endl;}2.源程序#include<iostream>using namespace std;void main(){cout<<" ,%%%%%% "<<endl;cout<<" ,%%/\%%%%/\% "<<endl;cout<<" ,%%%\c "" J/%%% "<<endl;cout<<"%. %%%%/ o o \%%% "<<endl;cout<<"`%%. %%%% _ |%% "<<endl;cout<<" `%% `%%%%(__Y__)% "<<endl;cout<<" // ;%%%%`\-/%%%' "<<endl;cout<<"(( / `%%%%%%%' "<<endl;cout<<" \\ .' | "<<endl;cout<<" \\ / \ | | "<<endl;cout<<" \\/ ) | | "<<endl;cout<<" \ /_ | |__ "<<endl;cout<<" (___________))))))) "<<endl;}实验2一、实验目的1.掌握对一般数据的输入和输出格式控制方法;2.掌握对实型数据输出形式的设置和小数位数的控制方法;3.了解数据输入的相关注意事项。
二、实验任务1. 键盘输入某台计算机的编号和该计算机的价格,并输出这些信息。
要求:编号为11位数字构成,如10987654321;价格含有小数部分,如998.0元;输出的编号只是由数字组成,不应该出现小数点等非数字符号。
2. 有一种加密方法是用原来字母的第n个字母代替原来的宁母。
例如把A用其后第4个字母E来替代。
现在有一密文内容为wigvix,编程求出它的原文是什么?(提示:可根据上述加密原理,使用若干字符型变量来实现)。
3.编程实现:在计算机的提示下输入某学生的学号、英语成绩、高等数学成绩、线性代数成绩,计算得出三门课程平均成绩,并按如下格式输出显示。
成绩单学号20100002****************************************科目成绩-----------------------------------------------------------------英语85高等数学90线性代数88.5****************************************平均成绩87.8三、实验结果(源程序+ 注释)1.源程序#include<iostream>using namespace std;void main(){ double a,b;cout<<"请输入某台计算机的编号和该计算机的价格:"<<endl;cin>>a>>b;cout.precision(11);cout<<"该计算机的编号和价格分别为:"<<endl;cout<<a<<" "<<b<<endl;}2.源程序#include<iostream>using namespace std;void main(){ char c1,c2,c3,c4,c5,c6;cout<<"请输入密码内容:"<<endl;cin>>c1>>c2>>c3>>c4>>c5>>c6;c1=c1-4;c2=c2-4;c3=c3-4;c4=c4-4;c5=c5-4;c6=c6-4;cout<<"原文是:"<<endl;cout<<c1<<c2<<c3<<c4<<c5<<c6<<endl;}3.源程序#include <iostream>#include <iomanip>using namespace std;void main(){ float score1,score2,score3,average;cout<<"请输入三门课程的成绩"<<endl;cin>>score1>>score2>>score3;average=(score1+score2+score3)/3;cout<<"成绩单"<<endl;cout<<"学号 20100002"<<endl;cout<<"****************************************"<<endl; cout<<"科目"<<setw(16)<<"成绩"<<endl;cout<<"----------------------------------------"<<endl; cout<<"英语"<<setw(15)<<score1<<endl;cout<<"高等数学"<<setw(11)<<score2<<endl;cout<<"线性代数"<<setw(12)<<score3<<endl;cout<<"****************************************"<<endl; cout<<fixed;cout.precision(1);cout<<"平均成绩"<<setw(12)<<average<<endl;}实验3一、实验目的1. 掌握“处理某一或某些操作只有在特定条件成立的情况下才会被执行”的编程思路和方法;2. 掌握简单分支程序设计,以及if 和if-else 语句的使用方法。
二、实验任务1. 已知一函数⎪⎩⎪⎨⎧>=-<<=-<=)10(113)101(12)1(x x x x x x y ,输入x 的值,求解并输出相应的y 值。
2. 求一元二次方程ax2+bx+c=0的根,其中a 、b 、c 为实数,由键盘输入。
三、实验结果(源程序 + 注释)1.源程序#include <iostream>using namespace std;void main(){ double x,y;cout<<"请输入x的值:"<<endl;cin>>x;if(x<1)y=x;if(x>=1&&x<10)y=2*x-1;if(x>=10)y=3*x-11;cout<<"输出相应的y值为:"<<y<<endl;}2.源程序#include<iostream>#include<cmath>using namespace std;void main(){ double a,b,c,delta,x,x1,x2;cout<<"求一元二次方程ax2+bx+c=0的根"<<endl;cout<<"请输入a,b,c的值:"<<endl;cin>>a>>b>>c;delta=b*b-4*a*c;if(delta<0)cout<<"一元二次方程无实根"<<endl;elseif(delta==0){ x=-b/(2*a);cout<<"一元二次方程ax2+bx+c=0的根为a:"<<"x1=x2="<<x<<endl;} if(delta>0){ x1=(-b-sqrt(delta))/(2*a);x2=(-b+sqrt(delta))/(2*a);cout<<"一元二次方程ax2+bx+c=0的根为:"<<"x1="<<x1<<""<<"x2="<<x2<<endl;}}实验4一、实验目的1.掌握多路分支结构的程序设计,以及switch语句的使用方法;2.学习通过程序调试来跟踪程序运行过程,查看程序运行过程中各个变量的取值变化情况。