第三章课本以及章节习题
输入输出流的控制符,
#include < iomanip >
输出数据右对齐,且小数位个数相同
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
double a = 123.456, b = 3.14159, c = -3214.67;
cout << setiosflags(ios::fixed) << setiosflags(ios::right) << setprecision(2);
//固定小数位是2个,且输出数据右对齐
cout << setw(15) << a << endl;
cout << setw(15) << b << endl;
cout << setw(15) << c << endl;
//保证数字右对齐,小数点的位置对应
return 0;
}
getchar()
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
cout << "enter a char:" << endl;
char a,b;
cout << getchar() << endl;//输出数字
cout << (b = getchar() )<< endl;//输出字符
//表达式要加括号
cout << ( getchar() + 32) << endl;//输出数字
return 0;
}
3.5 求解一元二次方程的根
#include <iostream>
#include <cmath>
using namespace std;
int main() {
float a, b, c, x1, x2;
cout << "enter a b c:" << endl;
cin >> a >> b >> c;
x1 = (-b + sqrt(b * b - 4 * a * c)) / (2 * a);//不要忘记括号!!!
x2= (-b - sqrt(b * b - 4 * a * c)) /( 2 * a);//不要忘记括号!!!
cout << x1 << endl;
cout << x2 << endl;
return 0;
}
判断闰年
#include <iostream>
using namespace std;
int main() {
int year;
cin >> year;
//闰年:能被4整除但不能被100整除 或 被400整除
bool f = (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
if (f)
cout << "is 闰年";
else cout << "is not 闰年";
return 0;
}
海伦公式计算三角形面积
#include <iostream>
#include <cmath>
using namespace std;
int main() {
float a, b, c;
cout << "enetr a b c" << endl;
cin >> a >> b >> c;
if (a + b > c && a + c > b && c + b > a) {
double s, area;
//s和area定义在复合语句里,使用范围仅仅在复合语句内
//海伦公式计算三角形面积
s = (a + b + c) / 2;
area = sqrt(s * (s - a) * (s - b) * (s - c));
cout << "area is " << area;
}
return 0;
}
Fibonacc数列,12 两个数为1,后面为前两个数和
#include <iostream>
#include <iomanip>
using namespace std;
int main() {
int f1, f2, i;
f1 = 1;
f2 = 1;
for (i = 1;i <= 20;i++) {
cout << setw(10) << f1 << setw(10) << f2;
//输出数据对齐,好看;setw()只能对就近一个起作用
if (i % 2 == 0) cout << endl;
f1 = f1 + f2;
f2 = f2 + f1;
}
return 0;
}
素数:
素数的定义:也即是质数,指大于1的自然数中,除了1和它本身以外不再有其他因数的自然数
m不能被2-根号m之间的数字整除,则是素数
bool型
#include <iostream>
#include <cmath>
#include <iomanip>
using namespace std;
//素数的定义:也即是质数,指大于1的自然数中,除了1和它本身以外不再有其他因数的自然数
//m不能被2-根号m之间的数字整除,则是素数
int main() {
int m, k, i,n=0;
bool prime;
for (m = 101;m <= 200;m = m + 2) {//偶数肯定就不是
prime = true;
k = (int)sqrt(m);//表示根号m的整数部分
for (i = 2;i <= k;i++) {
if (m % i == 0)
{
prime = false;
break;
}//跳出这个for循环,到后继语句
}
if (prime) {
cout << setw(5)<<m;
n++;
}
if (n % 10 == 0)
cout << endl;
}
return 0;
}
3.2
#include <cmath>
#include <iomanip>
using namespace std;
int main() {
const float pi = 3.1415926;
float r, h;
cin >> r >> h;
double l, area, s, v1, v2;
l = 2 * pi * r;
area = pi * r * r;
s = 4 * pi * r * r;
v1 = 4 / 3.0 * pi * r * r * r;
v2 = pi * r * r*h;
cout <<setw(10)<< setiosflags(ios::fixed) << setprecision(2);
cout << setw(10) << l << endl;
cout << setw(10) << area << endl;
cout << setw(10) << s<< endl;
cout << setw(10) << v1 << endl;
cout << setw(10) << v2 << endl;
return 0;
}