第三周作业
1.输入课本各个例题,调试运行程序,并分析程序,将每一个程序改写2到3个版本,自己分析程序结果,然后再调试运行,核对分析结果的对错。
2.编写程序输入一个三角形的三条边,计算其面积和周长;
3.编写程序计算并输出课本本章习题3表达式的值并分析结果。
4.编写一个程序,输入一个一元二次方程的三个系数,并计算其方程的解,然后输出。
5.编写程序,自己确定一个加密算法,将自己的音标姓名(英文)加密,并输出加密后结果,请注释你的加密算法。
6.在一个自动控制设备中,控制字位数16位,控制设备产生机械动作(如削,压等)的是指令字的低8位,其中保护强制停机动作的控制命令是低8位是全为0,控制报警声音是指令的高第1位,0为报警,1为不报警。请编写程序,在紧急状况启动时,向控制器输入控制指令。
7.积累调试程序经验,收集错误信息原因(每个同学收集3-5条错误信息原因,并输入电脑形成文字)。
书本当中的例题
1
#include <iostream>
using namespace std;
int main()
{
cout<<"numerb of bytes in int is "<<sizeof(int)<<endl;
cout<<"numerb of bytes in long int is "<<sizeof(long)<<endl;
cout<<"numerb of bytes in shott int is "<<sizeof(short)<<endl;
cout<<"numerb of bytes in long long int is "<<sizeof(long long)<< endl;
cout<<"numerb of bytes in float int is " << sizeof(float) << endl;
return 0;
}
2
#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<<"执行语句a=0.0;后flag的值为:"<<boolalpha<<flag<<endl;
cout <<noboolalpha<<flag <<endl;
return 0;
}
3
#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;
cout<<"b = "<<b<<endl;
cout<<"c = "<<c<<endl;
cout<<"d = "<<d<<endl;
return 0;
}
4
#include<iostream>
using namespace std;
int main()
{
short i,j,m,n;
long a,b;
i=1000;
j=1000;
m=i+j;
n=i*j;
cout<<"i="<<i<<endl;
cout<<"j="<<j<<endl;
cout<<"m="<<m<<endl;
cout<<"n="<<n<<endl;
a=i*j;
cout<<"a="<<a<<endl;
return 0;
}
5
#include<iostream>
using namespace std;
int main()
{
int i = 6,j,k,l,m,temp;
j=++i;
k=i++;
++i=1;
l=i++;
--m=1;
cout << " i = " <<i<< endl
<< " j = " <<j<< endl
<< " k = " <<k<< endl
<< " l = " <<l<< endl
<< " m = " <<m<< endl;
return 0;
}
6
#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;
cout << "The result is :"<< ch << endl;
ch= ch >='A' &&ch<='Z'?ch+'a'-'A':ch;
cout << "The result is :"<< ch << endl;
return 0;
}
7
#include<iostream>
using namespace std;
int main()
{
int ab,ac;
double b = 3.14;
char c = 'A',ad;
ab = int(b);
ac = int(c);
ad = char(int(b));
cout << "b = "<<b<<endl;
cout << "ab = "<<ab<<endl;
cout << "c = "<< c << endl;
cout << "ac = " << ac <<endl;
cout << "ad = " << ad << endl;
return 0;
}
计算三角形的面积与周长
#include <iostream>
using namespace std;
int main()
{
float side_1, side_2,side_3,gap_1,gap_2,gap_3;
cout << "Please enter the first side length:";
cin >> side_1;
cout << endl;
cout << "Please enter the second side length:";
cin >> side_2;
cout << endl;
cout << "Please enter the third side length:";
cin >> side_3;
cout << endl;
gap_1=side_2+side_3-side_1;
gap_2=side_1+side_3-side_2;
gap_3=side_1+side_2-side_3;
if(gap_1>0&&gap_2>0&&gap_3>0){
cout << "Perimeter of the triangle is :" << side_1+side_2+side_3 << endl;//计算周长并输出
cout << "Area of the triangle is :" << (side_1+side_2+side_3)/2 << endl;//计算面积并输出
}
else cout << "This is not a triangle" << endl;
return 0;
}
#include<iostream>
#include <math.h>
using namespace std;
int main()
{
int e=1,f=4,g=2;
float m=10.5,n=4.0,k;
k=(e+f)/g+sqrt((double)n)*1.2/g+m;
cout<<k<<endl;
float x=2.5,y=4.7,z;
int a=7;
z=x+a%3*(int(x+y)%2)/4;
cout<<z<<endl;
return 0;
}
一元二次方程
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
float a,b,c,y,x1,x2;
cout<<"请输入一元二次方程的三个系数: "<<endl;
cin>>a>>b>>c;
if(b*b-4*a*c>0)
{
x1=(-b+sqrt(b*b-4*a*c))/(2*a);
x2=(-b-sqrt(b*b-4*a*c))/(2*a);
cout<<"一元二次方程的第一个解为: "<<x1<<endl;
cout<<"一元二次方程的第一个解为: "<<x2<<endl;
}
if(b*b-4*a*c==0)
{
x1=x2=(-b)/(2*a);
cout<<"一元二次方程只有一个解为: "<<x1<<endl;
}
if(b*b-4*a*c<0)
{
cout<<"方程无解"<<endl;
}
return 0;
}
加密算法
#include <iostream>
#include <string>
using namespace std;
int main()
{
const int Size=20;
string name;
int num,i,name_num[Size];
cout << "Pleast enter your name :";
cin >> name;
cout << endl;
cout << "Please enter a number you like and don't forget: ";
cin >> num;
cout << endl;
for (i=0;name[i]!='\0';i++)
{
name_num[i]=int(name[i]);
name_num[i]=name_num[i] ^ num;
}
cout << "After the name Encryption :";
for (i=0;name[i]!='\0';i++)
{
cout << name_num[i]<<" ";
}
cout << endl;
return 0;
}
//输入音标姓名,先将每个字母转换为ASCII码,再与输入的数做异或运算,最后输出加密后的结果
老师,只能先到这里了,最后一提真心不会,以后补上。