第三周作业(2014.3.21)

学习要求

1.了解数据类型概念。

2.掌握常量和变量的使用。

3.掌握各种运算符的运算结合性和优先级,掌握各类表达式正确格式。

4.掌握数据类型转换。

5.进一步熟悉VC集成编程环境的使用,熟练掌握程序设计过程和步骤,积累程序调试经验。

 

 

实验作业

1.输入课本各个例题,调试运行程序,并分析程序,将每一个程序改写2到3个版本,自己分析程序结果,然后再调试运行,核对分析结果的对错。

2.编写程序输入一个三角形的三条边,计算其面积和周长;

3.编写程序计算并输出课本本章习题3表达式的值并分析结果。

4.编写一个程序,输入一个一元二次方程的三个系数,并计算其方程的解,然后输出。

5.编写程序,自己确定一个加密算法,将自己的音标姓名(英文)加密,并输出加密后结果,请注释你的加密算法。

6.在一个自动控制设备中,控制字位数16位,控制设备产生机械动作(如削,压等)的是指令字的低8位,其中保护强制停机动作的控制命令是低8位是全为0,控制报警声音是指令的高第1位,0为报警,1为不报警。请编写程序,在紧急状况启动时,向控制器输入控制指令。

7.积累调试程序经验,收集错误信息原因(每个同学收集3-5条错误信息原因,并输入电脑形成文字)。

 

 、例题2.1 布尔类型使用

/*******布尔类型使用举例*******/  
  
#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;  
}  








例题2.2 赋值表达式

/************************************
**   功 能:赋值表达式语句使用    **
**       自动化 1121  郑泽鑫      **
************************************/
#include<iostream>
using namespace std;
int main()
{
 int a,b,c,d;
 a = 4;
 b = a;
 c = d = 6;
 c *=a;
 d %=a + b;
 cout<<"a="<<a<<endl
  <<"b="<<b<<endl
  <<"c="<<c<<endl
  <<"d="<<d<<endl;

 return 0;
}

做这道题,第13行和14行的等号前为什么不能空格呢。搞不懂,课本呀,你在欺负我,我找个错误容易嘛我。摔。


 例题2.3:数据溢出例子

#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;
}


 

 例题2.4:自增自减例

#include<iostream>
using namespace std;
int main()
{
 
	int i = 6,j,k,temp;
	j=++i;
	k+i++;
	++i=1;
	cout<<"i="<<i<<endl;
	cout<<"j="<<j<<endl;
	cout<<"k="<<k<<endl;


	return 0;
}

 

 

例题2.5 条件运算条件表达式

 /********条件运算符及条件表达式的应用********/  
#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;  
  
    return 0;  
}  


例题2.6自动类型转换

 #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;  
    cout<<"a= "<<a<<endl  
        <<"x= "<<x<<endl  
        <<"y= "<<y<<endl;  
  
    return 0;  
}  
<strong>  
</strong>  


例题2-7:强制类型转换

#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;
}


 

 例题还不是很能够理解,不过还是照着课本端详好久打了进来,调试了也没有什么问题,好了,到你的碗里去。接下……






、计算三角形的面积和周长……

/************************************
**       三角形的周长和面积求法    **
************************************/
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
 float a,b,c,p,area,perimeter;
 cout<<"请你输入三角形的三个边长啊:";
 cin>>a>>b>>c;
 perimeter=a+b+c;
 p=(a+b+c)/2;
 area=sqrt(p*(p-a)*(p-b)*(p-c));
cout<<"介个三角形的周长是:"<<perimeter<<endl;
cout<<"介个三角形的面积是:"<<area<<endl;

 return 0;
}


不过用海伦公式显然前提是我们已经知道这三个数一定能够凑成三角形,显然我跳过了验证三边是否能够构成三角形这个前提条件,不过看到题目说求三角形的周长和面积,当然,前提就是它就是一个真正的三角形,在这里我就不画蛇添足了。其实我也不会画足……



 三计算一元二次方程的解

/****************************
********计算一元二次方程*****
****************************/  
  
#include <iostream>  
#include <math.h>
using namespace std;  
  
int main()  
{  
    float a, b, c;   
    double x1, x2, k;  
    cout<<"请输入二次项系数: "<<endl;  
    cin>>a;  
    cout<<"请输入一次项系数: "<<endl;  
    cin>>b;  
    cout<<"请输入常数项: "<<endl;  
    cin>>c;  
  
    k = b*b-4*a*c;
    x1 = (-b+sqrt(k))/(2*a);  
    x2 = (-b-sqrt(k))/(2*a);  
      
    if(k>=0)  
    {         
        if(x1==x2)  
        {  
            cout<<"一元二次方程的解只有1个,x= "<<x1<<endl;  
        }  
        else  
        {  
            cout<<"一元二次方程的解有2个,x1= "<<x1  
                <<"   x2= "<<x2<<endl;  
        }  
    }  
    else  
    {  
        cout<<"一元二次方程有虚根,x1=i* "<<x1  
            <<"   x2=i* "<<x2<<endl;  
    }  
  
    return 0;  
}  

 用if语句的嵌套,解的各种情况就可以分类的比较清楚了。

 

加密的、自控的,不行了,智商不够用了,整个人都不好了……容我缓一缓……


至于错误信息杂而多的原因。首先是因为自己没有C语言基础,C++是我们学的第一门计算机语言,没有基础入门还是有点挑战的。

第二,就是还是自身问题没有经常敲敲程序涨涨姿势。最后呀,我觉得明哥你让我们做的好多作业都和后边要讲的知识点相关,学不到位真难做到每题都会,都能解决。

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值