实验作业
1.输入课本各个例题,调试运行程序,并分析程序,将每一个程序改写2到3个版本,自己分析程序结果,然后再调试运行,核对分析结果的对错。
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
bool flag=true;
cout<<flag<<endl;
cout<<boolalpha<<flag<<endl;
cout<<flag+5<<endl;
flag=0;
cout<<"执行语句flag=0;后flag的值为:"<<boolalpha<<flag<<endl;
flag=0.0;
cout<<"执行语句flag=0.0;后flag的值为:"<<boolalpha<<flag<<endl;
return 0;
}
#include<iostream>
using namespace std;
int main()
{
int a,b,c,d;
a=4;
b=a;
a=5;
c=d=6;
c*=a;
d%=a+b;
cout<<"a="<<a<<endl
<<"b="<<b<<endl
<<"c="<<c<<endl
<<"d="<<d<<endl;
return 0;
}
#include<iostream>
using namespace std;
int main()
{
short i,j,m,n;
i=1000;
j=1000;
m=i+j;
n=i*j;
cout<<"m="<<m<<endl;
cout<<"n="<<n<<endl;
return 0;
}
#include<iostream>
using namespace std;
int main()
{
int i=6,j,k;
j=++i;
k=i++;
++i=1;
cout<<"i="<<i<<endl
<<"j="<<j<<endl
<<"k="<<k<<endl;
return 0;
}
#include<iostream>
using namespace std;
int main()
{
char ch;
cout<<"please input a character:";
cin>>ch;
ch=ch>='a'&&ch<='z'?ch-'a'+'A':ch;
//上述语句等价于ch=ch>='a'&&ch<='z'?ch-32:ch;
cout<<"The result is:"<<ch<<endl;
return 0;
}
#include<iostream>
using namespace std;
int main()
{
char ch='c';
int a,b=13;
float x,y;
x=y=2.0;
a=ch+5;
x=b/2/x;
y=b/y/2;
}
#include<iostream>
using namespace std;
int main()
{
int ab,ac;
double b=3.14;
char c='A';
ab=int (b);
ac=int (c);
cout<<"b="<<b<<endl;
cout<<"ab="<<ab<<endl;
cout<<"c="<<c<<endl;
cout<<"ac="<<ac<<endl;
return 0;
}
2.编写程序输入一个三角形的三条边,计算其面积和周长;
#include<iostream>
#include<math.h> //调用包含有数学函数的头文件
using namespace std;
int main()
{
float a,b,c,q,w,s; //输入变量
cout<<"输入三角形的三条边长:"<<endl;
cin>>a>>b>>c;
if(a+b>c&b+c>a&a+c>b) //p判断能否形成三角形
{
q=(a+b+c)/2;
s=sqrt((q-a)*(q-b)*(q-c)*q);
w=a+b+c;
cout<<"周长="<<w<<endl;
cout<<"面积="<<s<<endl;
return 0;
}
else
cout<<"无结果"<<endl;
}
3.编写程序计算并输出课本本章习题3表达式的值并分析结果。
4.编写一个程序,输入一个一元二次方程的三个系数,并计算其方程的解,然后输出。
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
float a,b,c,k1,k2,deta;
cout<<"输入二元一次方程的系数:"<<endl;
cin>>a>>b>>c;
deta=b*b-4*a*c;
if(deta>=0)
{
k1=(-b+sqrt(deta))/2*a;
k2=(-b-sqrt(deta))/2*a;
cout<<"k1="<<k1<<endl;
cout<<"k2="<<k2<<endl;
return 0;
}
else
cout<<"无解"<<endl;
}
5.编写程序,自己确定一个加密算法,将自己的音标姓名(英文)加密,并输出加密后结果,请注释你的加密算法。
6.在一个自动控制设备中,控制字位数16位,控制设备产生机械动作(如削,压等)的是指令字的低8位,其中保护强制停机动作的控制命令是低8位是全为0,控制报警声音是指令的高第1位,0为报警,1为不报警。请编写程序,在紧急状况启动时,向控制器输入控制指令。
7.积累调试程序经验,收集错误信息原因(每个同学收集3-5条错误信息原因,并输入电脑形成文字)。