1. 在竞赛中,题目:给定两个整型数a,b,将其交换后输出。
最优解法:(直接反序输出)
- #include<iostream>
- int main()
- {
- int a,b;
- cin>>a>>b;
- cout<<b<<a;
- return 0;
- }
2. 带有与、或等操作的表达式,若判定结果已经确定,则不再进行运算,这种策略成为短路(short-circuit)。或许读者认为,用短路的方法计算逻辑表达式唯一的优点是速度更快,但其实不是。
3. if 和 else if 在独立性(多个并列,情况不交叉)上面的使用。
4. //表达式 cout<<sqrt(-10) 输出:nan 表达式 1.0/0.0 输出:inf 表达式 0.0/0.0 输//出:nan 表达式:0/0 和 1/0 在一小段时间之后没有任何输出,程序结束。
- #include<iostream>
- #include<cstdio>
- using namespace std;
- int main()
- {
- int a,b;
- cin>>a>>b;
- printf("%d %d\n",a,b);
- cout<<a<<" "<<b<<endl;
- return 0;
- }
//若输入“12 s”,则输出 “12 0“。
5.
- printf("%%d");//输出 "%d"
- printf("\\n");//输出 “\n"
6. 计算输出 1+2+3+…+n 的值:
- cout<<n*(n+1)/2<<endl;
int a,b;
printf("%d %d",a,b);//输出随机值,分配了空间没有对其初始化,输出值即是该空间储存的值
7. 闰年的计算
- if( (n%4==0 && n%100!=0)|| n%400==0 )
8. 用实验测出int 型能表示的最大值和最小值
- #include<iostream>
- using namespace std;
- int main()
- {
- int i;
- while(i>0)
- i++;
- cout<<i<<endl<<i-1<<endl;
- return 0;
- }
- //原理就是有符号数最大值加1后,其二进制最高位(符号位)变成1,也即是最小的负数。
9. 用实验测出double型精确度
- #include"stdio.h"
- int main()
- {
- printf("%.50lf\n", 1.0/3.0 ); //超过一定位数,显示是错误的以此得出
return 0; - }
10. 如何通过实验测出double型最大正数值和最小正数值(不必特别精确)
11. 与或非优先级:! > && > || 。
C语言优先级见百度:https://baike.baidu.com/item/运算符优先级/4752611?fr=aladdin#2