专业的编程技术博客社区

网站首页 > 博客文章 正文

NOIP信奥入门初阶第3课(信奥初赛通过率)

baijin 2024-08-31 16:13:50 博客文章 3 ℃ 0 评论

01 流输入输出

在前面的课程中,我们已经编写过好些简单的程序,在程序中也都使用了流输入和输出语句,现在我们再来详细介绍一下

需要包含的库文件:

#include <iostream>


输入语句:

cin>>x;

cin>>x>>y;

cin是输入语句,“>>”是插入符,x为变量名,表示将键盘输入的数据放到x的变量里,多个变量输入用多个“>>”隔开。


输出语句:

cout<<x;

cout<<x<<" "<<y;

cout是输出语句,“<<”是插入符,x为变量名,表示将变量x里存储的数据输出到屏幕,多个变量输出,之间需要输出一个空格隔开。


例题1:输入正方形的边长a,计算正方形的面积。

说明:

  1. 第1行,使用 cin,cout 需要包含库 iostream;
  2. 第5行,定义变量 a,s,分别表示正方形的边长和面积;
  3. 第6行,输入正方形的边长,表示从键盘输入的数据存放在变量a内;
  4. 第7行,计算正方形的面积;
  5. 第8行,输出正方形的面积;
  6. 程序中也可以不定义变量s,第7行和第8行可以合并为“ cout<<a*a ; ”。


例题2:输入圆形的半径r,计算圆形的面积。(π取3.141,结果保留2位小数)

输入:3

输出:28.269

说明:当输入3时,程序运行输出的结果是28.269,显然没有达到保留2位小数的要求。这是因为流输出语句cout无法控制小数位。这时,就需要用到格式化输出,接下来就来讲解另一种输入输出方式。

02 格式化输入输出

在学习“格式化输入输出” 前,先来复习一下“常用的数据类型”,因为“格式化输入输出”与数据类型密切相关。

常用数据类型:

  1. 整型(int)
  2. 单精度浮点数(float)
  3. 双精度浮点数(double)
  4. 字符型(char)

在使用“格式化输入输出”时,非常重要的就是“格式符”要与变量的数据类型相匹配。


格式化输入输出的格式控制符是由“%”和格式符组成的,常用的数据类型的格式控制符如下:

  1. %d 整型(int)
  2. %f 单精度浮点数(float)
  3. %lf 双精度浮点数(double)
  4. %c 字符型(char)

格式控制符的作用是将要输入输出的数据按照指定的格式输入输出,这需要大家对题意中各变量的数据类型有明确的判断。


int x ; // 假设定义整型变量x


需要包含的库文件:

#include<cstdio>


输入语句:

scanf( " %d " , &x );

scanf是输入语句。括号内,双引号里为格式控制符,特别注意变量名前的地址符“&”


输出语句:

printf(“%d” , x);

printf是输出语句。其格式与输入语句只有地址符“&”的差异。


例题3:输入长方形的边长a和b,计算正方形的面积。

//参考代码1

//参考代码2

//参考代码3

注意:

1. 上述三种写法都是可以的,请观察他们的区别,进一步体会格式化输入输出的使用。

2. 当不需要将某个数据保存时,就可以不需要变量来存储,在输出时直接使用表达式即可。


例题4:再看看前面的例题2

输入圆形的半径r,计算圆形的面积。(π取3.141,结果保留2位小数)


//参考代码1

运行结果:

3

28.268999


//参考代码2

运行结果:

3

28.269000


//参考代码3

运行结果:

3

28.27

当输入3时,三个程序运行的结果是不同的。前两个程序未保留小数位,但是结果仍然不一样,第三个程序才是符合题意的。

注意第9行的代码的书写:printf (“ %.nf ”, x ) ,其中n表示小数位的个数。


03 两种输入输出的比较

1)cin 和 cout 需要调用 iostream 库,scanf 和 printf 需要调用 cstdio 库;

2)在时效上 scanf 和 printf 优于 cin 和 cout ;

3)数据需要保留小数位时应使用 格式化输出printf语句;

4)数据达到100万时 cin 读入就会超时( 运算出结果超过1秒 );

5) cin 和 cout 能够自动识别变量的数据类型,输入输出时,不需要指定数据类型;

scanf 和 printf 在输入输出时需要指定数据类型。


04 上机练习

本课上机练习:

一本通题库(ybt.ssoier.cn:8088)

第二章 第二节 1011 1012 1013 1014

第二章 第四节 1024 1025 1026

第二章 第五节 1031 1034


05 第2课上机练习参考代码


编者语

信奥需要长期的学习过程,即使现在不太明白,随着年纪的增加,一定有拨云见日的时候。请一定要坚持,不要半途而废。

【本人学疏才浅】

【如有谬误之处还望读者不吝留言批评指正】

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表