小白日志:第五天,C++与Python的运算符

今天的内容比较简单,先说下基本的内容(万幸任务不多,上午下大暴雨,我居然还要出去给别人送伞,淋了个透心凉,倒霉催的)

先说共同的基本运算符:+ - * / %,这几个运算符分别对应加减乘除和取余数。当然,对于/这个操作,很有意思的是,c++中的默认输出是int,如果要输出double是需要加一个(double);而python里却默认输出float,要输出int是用//这个运算符

再说其他的:c++里有一个神奇的操作:++(--)这个操作是一个看位置的操作,其意义是+1。但这个操作(比如a++和++a),其返回值时是按照从左到右的顺序:a++会先返回a,然后对a赋值a+1;++a会先对a赋值a+1,然后返回a。这样,在一些函数输入时就会有不同的顺序,比如:

    int alpha = 2;
	int beta = 2;
	cout << "bool:2++=3? " <<boolalpha<< bool(alpha++ == 3)<< " et 2 devient " << alpha << " actuellement" << endl;
	cout << "bool:++2=3? " <<boolalpha<< bool(++beta == 3)<< " et 2 devient "<< beta <<" actuellement" << endl;

这两个判断就完全不同。

python里还有一些操作:**:这个是对象的多少次幂的意思,当然也可以对字符(串)表示重复多少次;另外%也有一些特殊用法,用于占字符,类似于昨天的f-string。比如

print("%s a %d ans"%('elle',20))

(当然这个是比较老旧的方法,这个方法要写的东西不少,而且每个大类都有自己的名字,所以不好记,不如f-string好用,毕竟只需要在句子里插空格)

对于两种语言的运算顺序,首先可以知道的是基础的数学运算顺序优先级是没问题的。但是,c++里,++的优先级高于乘除;而python中,幂的优先级最高(废话),不过//我确实没想到有什么优先级问题,这玩意我感觉用处并没那么大

以下是今天的代码块

    int num1=3;
	int num2=5;
	int num3=7;
	cout << num1<<num2<<num3 << endl;
	cout << "l'addition de num1 et num2: " << num1 + num2 << endl;
	cout << "la soustraction de num1 et num2: " << num1 - num2 << endl;
	cout << "la multiplication de num1 et num2: " << num1* num2 << endl;
	cout << "la division de num1 et num2: " << num1 / num2 << endl;
	cout << "la  flottante de division  de num1 et num2: " <<(double) num1 / num2 << endl;
	cout << "le reste de num1 et num2: " << num1 % num2 << endl;
	cout << "num3:" << num3 << endl;
	cout << "l'operation de num3:A.++num3:" << num3 << "et ++num3:" << ++num3 <<" auctuellement num3 est" <<num3<< endl;
	cout << "l'operation de num3:A.num3++:" << num3 << "et num3++:" << num3++ << " auctuellement num3 est" << num3 << endl;
	cout << "l'operation de num3:B.--num3:" << num3 << "et --num3:" << --num3 << " auctuellement num3 est" << num3 << endl;
	cout << "l'operation de num3:B.num3--:" << num3 << "et num3--:" << num3-- << " auctuellement num3 est" << num3 << endl;
	cout << "num1,num2,num3 sont:" << num1 << num2 << num3 << " num1+num2*++num3:" << num1 + num2 * ++num3 << endl;
	int alpha = 2;
	int beta = 2;
	cout << "bool:2++=3? " <<boolalpha<< bool(alpha++ == 3)<< " et 2 est " << alpha << " auctuellement" << endl;
	cout << "bool:++2=3? " <<boolalpha<< bool(++beta == 3)<< " et 2 est "<< beta <<" auctuellement" << endl;
a = 3
b = 4
c = 5
d = 6
num1 = a + b
num2 = a - b
num3 = a * b
num4 = a / b
num5 = a // b
num6 = a % b
num7 = -a ** b + c * d
print("%s a %d ans"%('elle',20))
print(num1)
print(num2)
print(num3)
print(num4)
print(num5)
print(num6)
print(num7)
print('a = 3'+' b = 4'+' c = 5'+' d = 6')
print('num1 = a + b'+' num2 = a - b'+' num3 = a * b'+' num4 = a / b'+' num5 = a // b'+' num6 = a % b'+' num7 = -a ** b + c * d')

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值