中学信息学第三课--算术表达式

计算机的本职工作就是计算,信息学竞赛也大部分是算术相关的题目,本文主要讲解一下如果用计算机做计算。

从最简单的开始:

#include <cstdio>
int main() {
    printf("%d\n", 1+2);
    printf("%d\n", 3-4);
    printf("%d\n", 5*6);
    printf("%d\n", 8/4);
    printf("%d\n", 8/5);
    printf("%d\n", 8%5);
    return 0;
}
逐行讲解:

#include <cstdio>

#include语句上次课讲过,上次是引入C++的标准库iostream,这次是引入c的标准库stdio,为标明是c语言的库,所以前面增加了一个字母c作为前缀:cstdio

然后是main函数:

int main() {

    ......

}

函数提是加、减、乘、除、求余数的运算。输出到屏幕都是用的prinf()函数。

1+2输出3

3-4输出-1

5*6输出30 --- 注意键盘没有乘号,用*代替

8/4输出2---注意键盘没有除号,用正斜线代替

8/5输出1--注意不是1.6,因为是整数除法,只能取整除部分

8%5输出3--整除后的余数是3

如果要得到8除以5等于1.6的结果怎么办,就不能用整数了,要用浮点数:

int main() {
    printf("%.1lf\n", 8.0/5.0);

    return 0;
}

8.0,5.0被看做是实数,或者专业点,叫浮点数(因为计算机CPU处理这类数比整数复杂,要有浮点处理器,因此叫浮点数),浮点数运行结果仍旧是浮点数:1.6

最后介绍一下C的标准输出函数printf,比上次文章介绍的C++的cout操作符使用更加广泛,尤其在竞赛中:

int printf(char *fromat, arg1, arg2,...);

函数printf在输出格式format的控制下,将参数arg1,arg2...进行转换与格式化,然后输出在标准输出设备上(屏幕上)

格式:

%d: 十进制整数

%f: 十进制小数

%lf: long float,长的浮点数

%.2lf: .表示小数点,后面的2表示输出浮点数精度为小数点后保留2位,可以程序中改为3试试。

最后说一个更加复杂的计算:平方根

#include <cstdio>
#include <cmath>
int main(){
    printf("%.8lf\n", 1+2*sqrt(3)/(5-0.1));
    return 0;
}

说明:

#include增加一个库函数:cmath,是C语言的标准数据库,开平方根的函数就在这个库里面,所以程序要用平方根sqrt函数,就要包含这个库。如果去掉,编译程序会报找不到sqrt函数的错误。

printf("%.8lf\n", 1+2*sqrt(3)/(5-0.1));

.8刚刚说过了,表示精度是小数点后面8位。 sqrt(3)表示根号3.  其他与上面程序类似。

总结:今天学习了算术运算:整形的加减乘除和取余数,浮点型的除和取平方根。

猜你喜欢

转载自blog.csdn.net/hb_zxl/article/details/81273267