作业介绍

变量类型转换回顾

常见变量类型及占用空间

变量类型 标识符 占用内存 备注
整型 int 4Byte4Byte -2147483648~2147483647
长整型 long long 8Byte8Byte 还有个哥们叫unsigned long long
字符型 char 1Byte1Byte 128个字符、3个重要ASCII码
(双精度)浮点型 double 8Byte8Byte 15位有效数字
布尔型 bool 1Byte1Byte true 和 false
单精度浮点型 float 4Byte4Byte 7位有效数字

自动类型转换

不同类型的变量进行相互运算时,会先进行类型转换,然后再进行计算。类型转换的方向向着长度增加的方向进行。

char、short -> int -> unsigned -> long long -> unsigned long long -> double

float -> double

bool -> int (true 转化为 1, false 转化为 0)

强制类型转换

使用类型名(表达式)可以将表达式的值强制转化成指定类型后输出,例如以下代码:

    cout << char('a'-32);

将会输出字符'A'。

循环使用技巧

用字符作为循环变量

一般情况下,我们会用int类型的变量i作为控制循环的循环变量。但是其实控制循环的本质在于循环条件的成立与否,因而任何变量都可以用来控制循环。例如以下代码:

for(char i='A';i <= 'Z';i++){
     cout << i << endl; 
}

可以输出2626个大写英文字母。

循环变量自增

我们最常见的循环写法是: for(int i=1; i<=n; i++) 但是显然循环可以有其他使用方法,例如:

    for(int i=1; i<=20; i+=2)
        cout << i << " "; 

会输出2020以内的所有奇数,因为ii每一次增加的值都是22

循环输入

有时候,题目输入的数据的数量并不是一个确定的值,而是由一个输入的整数(通常是nn)决定的,这就需要我们构建一个重复nn次的循环,在循环中依次输入。例如:

// 班里有n个同学,依次输入同学个个数和每个同学的年龄,请你统计同学们的平均年龄。
cin >> n;
for(int i=1; i<=n; i++){
    cin >> x;
    s += x;
}
cout << double(s)/n;
状态
已结束
题目
8
开始时间
2024-12-8 0:00
截止时间
2024-12-15 23:59
可延期
24 小时