C语言第五讲

课堂笔记

一、关系运算符和关系表达式

          >     <      >=        <=      ==  !=  都是二元运算符

        大于,小于,大于等于,小于等于,等于,不等于

        a>b 判断a是否大于b,结果是成立或者不成立

        a<b,a>=b,a<=b, a==b, a!=b

        C当中表示成立或者不成立,逻辑真与逻辑假

        C当中表示真与假,0表示假,非0即真(系统提供逻辑真的时候给的是1),

        C++中真与假的符号表示,true表示真,false表示假

1.判断语句是否成立(通过比较大小)

        int a=10,b=20,c=30;

cout<<(a>b)<<endl;//记得逻辑用语要加括号

cout<<(a=b)<<endl;

cout<<(a==b)<<endl;

//a=b表示的是赋值操作,a==b判断是否相等的操作

       

        精确的判断相等最好不用于实型数,用整型范围的

        判断实型数相等,fabs(a-b) <1e-6;  就认为两个数是相等的

       

        cout<<true<<endl;

        cout<<false<<endl;

2.判断n的奇偶性(通过01真假来反馈)

        int n;

        cin>>n;

        cout<<(n%2==0)<<endl;   //0  1  13%2   13=6*2+1  12=6*2+0

        //通常用来判断n的奇偶性

        //n%3==0  判断n能否被3整除

         

二、选择结构程序设计之if语句

        三大结构:顺序结构, 选择结构,循环结构

        符号函数:x>0, y=1;  x=0,y=0;   x<0,y=-1

        double x,y=1;

        cin>>x;

        1.最简单的条件结构

        if(x<0)//小括号中称为条件表达式 ,

        //如果条件表达式的值为真(条件成立)执行后面的语句组{}

        //如果条件表达式的值为假(条件不成立)越过语句组{}执行下面的语句

        {

                 y=-1;                                

        }

        cout<<"y="<<y<<endl;

       

        2.两路分支的if结构

        double x,y=1;

        cout<<"input x:";

        cin>>x;

        if(x>0)  //条件表达式成立的时候,执行语句组1(if)后面的{}

        {

                 y=1;

        }

        else   //否则 (条件表达式不成立的时候),执行语句组2(else)后面的{}

        {

                 y=-1;

        }

        //语句组的大括号可能会省略,是在语句组当中只有一条语句(或者可以当作一条语句用的完整结构)的时候。

         

        if(x>0)              

                 y=1;

        else         

                 y=-1;

                

        cout<<"y="<<y<<endl;

    3.符号函数的实现

        double x,y;

        cout<<"input x:";

        cin>>x;

        if(x<0)

        {

                 y=-1;

        }

        else

        {

                 if(x>0)

                 {

                         y=1;

                 }

                 else  //x=0

                 {

                         y=0;

                 }              

        }

        cout<<"y="<<y<<endl;

三、解一元二次方程

        //ax^2+bx+c=0

        double a,b,c,x1,x2,delta;

        cout<<"input a,b,c:";

        cin>>a>>b>>c;

       

        delta=b*b-4*a*c;

        if(delta>0)

        {

                 x1=(-b+sqrt(delta))/(2*a);

                 x2=(-b-sqrt(delta))/(2*a);

                 cout<<"方程有两个不相等实根:x1="<<x1<<",x2="<<x2<<endl;

        }      

        else

        {

                 if(delta<0)

                 {

                         cout<<"方程没有实数根。"<<endl;

                 }

                 else

                 {

                         x1=x2=-b/(2*a);        

                         //连续赋值:先计算出最右边的值赋予给x2

                         //再用x2的值赋予给x1      

                         cout<<"方程有两个相等实根:x1=x2="<<x1<<endl;  

                 }

        }

         

       

        return  0;

}

代码编写

#include <iostream>
#include <math.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char** argv) {
	//一、关系运算符和关系表达式
	//1.判断语句是否成立(通过比较大小)
	int a=10,b=20,c=30;
	cout<<(a>b)<<endl;
	cout<<(a<b)<<endl;
	cout<<(a==b)<<endl; //0表示假,非0即真
	
	cout<<true<<endl;
	cout<<false<<endl;
	
	//2.判断n的奇偶性(通过01真假来反馈)
	int n;
	cin>>n;
	cout<<(n%2==0)<<endl; 
	
	//二、选择结构程序设计之if语句
	double x,y=1;
	cout<<"输入x:";
	cin>>x;
	if(x>0)//if和else后面都不要加“;”断开,否则大括号内的语句无法执行 
	{
		y=1;				
	}
	else 
	{
		if(x<0)
		{
			y=-1; 
		}
		else
		{	
		y=0;
		}
	
	}
	cout<<"y="<<y<<endl;

	//三、解一元二次方程
	double a,b,c,x1,x2,delta;
	cout<<"请输入a,b,c的值:";
	cin>>a>>b>>c;
	delta=b*b-4*a*c;
	if(delta>0)
	{
		x1=(-b+sqrt(delta))/(2*a);
		x2=(-b-sqrt(delta))/(2*a);
		cout<<"方程有两个不相等的实数根:x1="<<x1<<" x2="<<x2<<endl;
		
	} 
	else
	{
		if(delta<0)
		{
		cout<<"方程没有实数根"<<endl; 
		}
		else
		{
			x1=x2=-b/(2*a);
			cout<<"方程有两个相等的实数根:x1=x2="<<x1<<endl; 
		}
	}
	return 0;
}

学习总结

1.if和else后面不要加“;”断开,否则后面大括号内的语句无法执行

2.if中>要和<对应,而不要写成if(x>0),else{ if(x=0) },这样电脑无法识别

3.输入流cin“>> >>”内不能输入加引号的内容,文字,字母都不可以,只能输入电脑能识别的数据

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值