C语言第六讲

课堂笔记

一、逗号表达式

cout<<a=10,a++,b=a+2<<endl;13

注:1.从左到右运算       

        2.逗号后最后一个表达式为最后编译输出的值

二、如何实现多路分支 else if 

       

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

        const double eps=1e-6;

        cin>>a>>b>>c;

        if(fabs(a)<eps) a小于精度值认定为0

        {

                 cout<<"no"<<endl;

                 exit(0); 直接退出为0

        }

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

        if(delta>0) 也可以写成delta>eps

        {

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

                 x2=(-b-sqrt(delta))/(2*a);  养成写括号的习惯

        cout<<"x1="<<x1<<",x2="<<x2<<endl;

        }

        else if(delta<0) 前面条件不满足,继续判断下列条件

        {

                 cout<<"no real root"<<endl;

        }

        else 前两个条件都不满足

        {

                

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

                 cout<<"x1="<<x1<<",x2="<<x2<<endl;

        }

*24对大小写希腊字母

多路分支:假设6路分支,即if+5 else if+else

       

三、条件运算符  ?  :

        法一:if语句

int a,b,max;

        cin>>a>>b;

       

        if(a>b)

        {

                 max=a;

        }

        else

        {

                 max=b;

        }

        法二:利用条件运算符

        max=(a>b)?a+2:b-3;

        ——————

         条件表达式

若条件成立,执行/输出?后部分

若条件不成立,执行/输出:的部分

        cout<<max<<endl;

       

四、逻辑运算符和逻辑表达式

        1.逻辑与 &&(两个连着写) and 并且  a && b →a与b同时成立   

c>=1 && c<=10  [1,10]

2.逻辑或  ||     or    或者  a || b→a与b有一个条件成立即成立

   c>=10 || c<=1

|这个符号是英文状态+shift+、

    3.逻辑非  !   not   去反  !a 此为一元运算符

   

   例1:判断输入的字符为……

        char c;

        cin>>c;

       

        if(c>='A' && c<='Z')(判断c是否为大写英文字母)

        {

                 cout<<"uppercase"<<endl;

        }

        else if(c>='a' && c<='z') (判断c是否为小写英文字母)

        {

                 cout<<"lowercase"<<endl;

        }

        else if(c>='0' && c<='9') (判断c是否为数字)

        {

                 cout<<"digital"<<endl;

        }

        else(到这里为4路分支)

        {

                 cout<<"other"<<endl;

        }

       

       

        if((c>='A' && c<='Z') || (c>='a' && c<='z')) (判断c是否为英文字母)

   2:年数如果能够被4整除,但不能被100 整除,或者能够被400整除

   

    int year;

        cin>>year;

         

        if((year%4==0 && year%100!=0) || year%400==0)

                 cout<<"Y"<<endl;

        else

                 cout<<"N"<<endl;

此程序也可以写一个万年历程序,因为星期对应与每年是365天还是366天有关

       

作业:百分制  90-100  A  80-89  B  70-79 C  60-69 D 0-59 E

                

       

        return 0;

}

代码编写

#include <iostream>
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) {
//法一: 
	int a;
	cout<<"欢迎来到百分制转换等级系统!"<<endl;
	cout<<"请输入您的成绩:";
	//for(a<100);
	cin>>a;
	if(a>=90 && a<=100) 
	{
		cout<<"您的等级为A。"<<endl; 
	}
	else if(a>=80 && a<=89) 
	{
		cout<<"您的等级为B。"<<endl; 
	}	
	else if(a>=70 && a<=79) 
	{
		cout<<"您的等级为C。"<<endl; 
	}
	else if(a>=60 && a<=69) 
	{
		cout<<"您的等级为D。"<<endl; 
	}
	else
	{
		cout<<"您的等级为E。"<<endl; 
	}
	return 0;
}

学习总结

1.昨天晚上纠结很久捏运行不了,是在else后面加了条件,else后面是不能,是不能!加条件,条件已经是隐藏的了,今天讲了第七讲,老师说前面条件不满足就会跳到else if或者else,所以条件的范围是已经确定好只是隐藏了,可以不写出来,可能用文字表示不清楚,可以看第七讲的笔记/博客。

2.也就是因为不熟悉条件语句的条件表示,此方法比较繁冗。第七讲老师有讲比较简练的方法。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值