1、整数有很多,如果将无限大的整数看作很大,则不可能用有限的计算机内存来表示所有的整数。因此,语言只能表示所有整数的一个子集。C++提供好几种整型,这样便能够根据程序的具体要求选择最合适的整型。
2、 a) short Value=80;
b) unsigned int Value=42110;
c) long long Value=3000000000; 或 unsigned long Value=3000000000;(建议使用这个)
3、C++本身并不能限制某个类型是否超出了它类型的范围,但是可以用 limits 头文件来看某种类型具体的范围。
4、33L和33这两个都是数值型常量。
33L强制为长整数long型,33系统会识别为int整型。
在数值上,两者相等,只是存储上,33根据编译器不同可能为2字节也可能为4字节,33L则一定为4字节。
5、这两条语句并不真正等价,虽然对于某些系统来说,它们是等效的。最重要的是,只有在使用ASCII码上的系统上,第一条语句是将ASCII编码值设置为字母A,而第二条语句还可用于使用其他编码的系统。其次,65是一个int常量,而'A'是一个char常量。
6、
char c = 88;
cout << c << endl; // char type prints as character
cout.put(char{ 88 }); // put() prints char as character
cout << char{88} << endl; // new-style type cast value to char
cout << (char)88 << endl; // old-style type cast value to char
7.这种情况也还是得视系统而定,也就是说取决于两种类型的长度。如果 long 为 4 个字节,则没有损失,因为占 4 个字节的 long 的最大值为 2147483647,即有十位数,而 double 提供了至少十三位有效数字,这种情况下没有舍入误差。但是 long long 类型提供了 19 位数字,这超过了 double 的有效位数,故这种情况下有舍入误差。
8.a) 74, b) 4, c) 0, d) 4.5, e) 3。
9、
#includeusing namespace std; int main() { double x1, x2; int y; cin >> x1 >> x2; y = (int)( x1 + x2 );//或者使用y=int(x1+x2),但是编译器会报错 cout << y << endl; return 0; }
10
a.int
b.float
c.char
d.char32_t//auto crat = U'/U00002155' 字符常量中字符过多(编写时提示)
U再字符串前面代表 宽字符字符在串 即UNICODE 字符串。UTF-8/UTF-16 ...
等等
类型 char32_t 的宽字符文本,例如 U'a'
e.double
- 后面的2.5如果后面不加f的话,就是个double类型的值
- /的两个操作数一个是float一个是double,float向double方向做类型提升(Type promotion)
- 两个double的结果还是double,所以auto 的类型推断就认为fract是个double了
1、
//一英尺等于12英寸,一英寸等于0.083英尺 #includeusing namespace std; int main() { constexpr auto F = 0.083; double high; cout << "请输入自己的身高" << endl; cin >> high; cout << "您的身高转化为英尺为" << endl; cout << F * high << endl; system("pause"); return 0; }
2、
#includeusing namespace std; int main() { constexpr auto yczhm = 0.0254; constexpr auto yczhyc = 12; constexpr auto qgzhb = 0.0254; int yhigh, chigh ,weight ; double zhigh, kweight,IBM; cout << "请以几英尺几英寸的方式输入你的身高" << endl; cout << "你的身高有几英尺" << endl; cin >> yhigh; cout << "你的身高有几英寸" << endl; cin >> chigh; cout << "你的体重是多少磅" << endl; cin >> weight; zhigh = yczhm *(yczhyc * yhigh + chigh); kweight = weight * 1 / qgzhb; IBM = kweight / zhigh / zhigh; cout << "你的体重指数为:"<< IBM << endl; return 0; }
3.
#includeusing namespace std; int main() { auto degrees = 0, minutes = 0, secends = 0; float final=0; constexpr int zh = 60; cout << "Enter a latitude in degree ,minutes,and seconds:" << endl; cout << "First,enter the degrees: " << endl; cin >> degrees; cout << "Next,enter the minutes of arc: " << endl; cin >> minutes; cout << "Finally,enter the secends of arc: " << endl; cin >> secends; final = degrees + minutes / zh + secends / zh / zh; cout << degrees << " degrees, " << minutes << " minutes, " << secends << " secends = " << final << " degrees " << endl; return 0; }
5.
#include#include using namespace std; int main() { long long worldpopulation, USpopulation ; cout << "Enter the world's population : " << endl; cin >> worldpopulation; cout << "Enter the populartion of the US: " << endl; cin >> USpopulation; cout << "The population of the US is " << 100 *( USpopulation*1.)/ (worldpopulation*1.) << "%" << endl; return 0; }
6.
#include#include using namespace std; int main() { int Facter, mileage1=0, quantity1=0, mileage2=0, quantity2=0; cout << "选择输入驱车里程和使用汽油量,选择以英里为单位输入距离键入:0,选择以公里为单位输入距离键入:1" << endl; cin >> Facter; if (Facter == 1) { cout << "请输入驱车里程(英里): " << endl; cin >> mileage1; cout << "请输入使用汽油量(加仑): " << endl; cin >> quantity1; cout << "您的车耗油量为一加仑的里程: " << mileage1 / quantity1 << endl; } else { cout << "请输入驱车里程(公里): " << endl; cin >> mileage2; cout << "请输入使用汽油量(升): " << endl; cin >> quantity2; cout << "您的车每一百公里的耗油量为: " <<100* mileage2 / quantity2 << endl; } return 0; }
7.
#includeusing namespace std; int main() { double x = 0;//输入的汽油量 constexpr double y1 = 62.14, y2 = 3.875; cout << "按照欧洲风格输入汽车的耗油量(每一百公里消耗的汽油量)" << endl; cin >> x; cout << x/y1/y2; }



