⭐写在前面的话:本系列文章旨在短时间内回顾C/C++语法中的重点与易错点,巩固算法竞赛与写题过程中常用的语法知识,精准地解决学过但有遗忘的情况,为算法刷题打下坚实的基础。
float, double等输出保留若干位小数时用:%.4f, %.3lf
表示这个浮点数的最小宽度为8,保留3位小数,当宽度不足时在前面补空格。
可以规定占位
#include
#include
using namespace std;
int main()
{
int a = 3;
float b = 3.12345678;
double c = 3.12345678;
//注意默认是右对齐
//占5个字符的位置
printf("%5d\n", a);
//占8个字符的位置,保留4位小数
printf("%8.4f\n", b);
//占7个字符的位置
printf("%7.3lf\n", c);
return 0;
}
Output:
3
3.1235
3.123
表示最小宽度为8,保留3位小数,当宽度不足时在后面补上空格
#include
#include
using namespace std;
int main()
{
int a = 3;
float b = 3.12345678;
double c = 3.12345678;
printf("%-5d!\n", a);
printf("%-8.4f!\n", b);
printf("%-7.3lf!\n", c);
return 0;
}
Output:
3 !
3.1235 !
3.123 !
表示最小宽度为8,保留3位小数,当宽度不足时在前面补上0,压位时常用。
上述输出修改为:
printf("%05d\n", a);
printf("%08.4f\n", b);
printf("%07.3lf\n", c);
Output:
00003
003.1235
003.123
#include
#include
using namespace std;
int main()
{
int a;
cin >> a;
if (a > 5)//不能加;
{
printf("%d is big!\n", a);
printf("%d + 1 = %d\n", a, a + 1);
}
else
{
printf("%d is small!\n", a);
printf("%d - 1 = %d\n", a, a - 1);
}
return 0;
}
注意:
在if语句之后不能加;因为C语言中允许空语句的存在,if后;相当于什么也没执行。括号内部具体语句勿忘;。
else
语句可以省略。
当只有一条语句时,大括号可以省略
if-else
语句内部也可以是if-else
语句。
eg:简单计算器输入两个数,以及一个运算符+, -, *, /,输出这两个数运算后的结果。
当运算符是/,且除数是0时,输出Divided by zero!; 当输入的字符不是+, -, *, /时,输出Invalid operator!。
#include
#include
using namespace std;
int main()
{
int a, b;
char c;
cin >> a >> b >> c;
if (c == '+') cout << a + b << endl;
else if (c == '-') cout << a - b << endl;
else if (c == '*') cout << a * b << endl;
else if (c == '/')
{
if (b != 0)
{
cout << a / b << endl;
}
else
{
cout << "Divided by zero!" << endl;
}
}
else
{
cout << "Invalid operator!" << endl;
}
return 0;
}