信息学奥赛初赛天天练-83-NOIP2014普及组-基础题2-输入设备、输出设备、操作系统、二进制、整数除法、while、do while循环

本文主要是介绍信息学奥赛初赛天天练-83-NOIP2014普及组-基础题2-输入设备、输出设备、操作系统、二进制、整数除法、while、do while循环,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 NOIP 2014 普及组 基础题2

4 以下哪一种设备属于输出设备( )
A 扫描仪
B 键盘
C 鼠标
D 打印机

5 下列对操作系统功能的描述最为完整的是( )
A 负责外设与主机之间的信息交换
B 负责诊断机器的故障
C 控制和管理计算机系统的各种硬件和软件资源的使用
D 将没有程序编译成目标程序

11 下列各无符号十进制整数中,能用八位二进制表示的数中最大的是( )
A 296
B 133
C 256
D 199

14 设变量 x 为 float 型且已赋值,则以下语句中能将 x 中的数值保留到小数点后两位,并将第三位四舍五入的是( )
A x = (x * 100) + 0.5 / 100.0;
B x = (x * 100 + 0.5) / 100.0;
C x = (int)(x * 100 + 0.5)/100.0;
D x = (x / 100 + 0.5) * 100.0;

15 有以下程序

#include <iostream>
using namespace std;
int main()
{int s, a, n;s= 0;a= 1;cin >> n;do{s+= 1;a-= 2;}while ( a != n );cout << s << endl;return(0);
}

若要使程序的输出值为 2,则应该从键盘给 n 输入的值是( )
A -1
B -3
C -5
D 0

2 相关知识点

1) 输入输出设备

输入设备

是外界向计算机传送信息的装置。在微型计算机系统中,最常用的输入设备是键盘和鼠标。

此外还有电子光笔、数字化仪、图形扫描仪、触摸屏、麦克风、视频输入设备、条形码扫描等

输出设备

作用是将计算机的数据信息传送到外部媒介,并转化成某种为人们所识的标识形式。

在微型计算机中,最常用的输出设备是显示器和打印机。此外还有绘图仪等

2) 操作系统

操作系统是控制和管理计算机软硬件资源,以尽量合理有效的方法组织多个用户共享多种资源的程序集合

它是计算机系统中最基本的系统软件,是用户和计算机硬件之间的接口

操作系统的主要功能有:处理机管理、存储器管理、设备管理、文件管理和用户接口管理

常用的操作系统

Windows XP、Windows 2003、Vista、Windows 7、Windows 10、Windows Phone、Linux、Unix、Solaris、AIX、Netware、Mac OS、Android、iOS等

3) 二进制

二进制(Binary)是一种计数系统,它只使用两个数字:0和1。它是计算机科学中最基本的数制,因为计算机内部的所有信息都是以二进制形式存储和处理的

在二进制系统中,每一位的权重是2的幂次方

最右边的位(最低位)的权重是2^0 = 1

从右向左数第二位的权重是2^1 = 2

从右向左数第三位的权重是2^2 = 4

以此类推

二进制数的表示方法是从右向左,每一位的数字乘以其对应的权重,然后将所有的结果相加。例如,二进制数1101转换为十进制数的计算过程如下

1 * 2^3 + 1 * 2^2 + 0 * 2^1 + 1 * 2^0 = 8 + 4 + 0 + 1 = 13

4) 整数除法

整数除法中,默认是向下取整

例如 5/2=2

#include<bits/stdc++.h>
using namespace std;
/*2个整数相除结果也是整数,如果不能整除会向下取整 
*/ 
int main(){int a=15,b=2;int c=15/2;cout<<"15/2为:"<<c<<endl; return 0;
}
/*
输出:
15/2为:7
*/ 

5) while和do while

最初条件不满足,while不执行循环体,do while执行一次循环体后仍不满足循环条件,那么do while比whiel多执行一次

#include<bits/stdc++.h>
using namespace std;
/*while 条件满足才执行do while 先执行1次,然后再判断条件是否成立 
*/ 
int main(){bool b=false;while(b){//条件成立才执行 cout<<"b为false时,while 不执行!";}do{//先执行1次,再判断条件是否成立 cout<<"b为false时,do while 会执行1次!";	}while(b);return 0;
}
/*输出  b为false时,do while 会执行1次!
*/

3 思路分析

4 以下哪一种设备属于输出设备( D )
A 扫描仪
B 键盘
C 鼠标
D 打印机

分析

打印机把电脑内容输出,属于输出设备
扫描仪,键盘,鼠标都是把内容输入到电脑中,属于输入设备
所以选D

5 下列对操作系统功能的描述最为完整的是( C )
A 负责外设与主机之间的信息交换
B 负责诊断机器的故障
C 控制和管理计算机系统的各种硬件和软件资源的使用
D 将没有程序编译成目标程序

分析

操作系统负责控制和管理计算机系统的各种硬件和软件资源的使用
所以选D

11 下列各无符号十进制整数中,能用八位二进制表示的数中最大的是( D )
A 296
B 133
C 256
D 199

分析

1位二进制 最大为1 - 2^1-1=1
2位二进制 最大为3 - 2^2-1=3
3位二进制 最大为3 - 2^3-1=7
8位二进制 最大为3 - 2^8-1=255
4个选项中比255小的有133和199,较大的是199
所以选D

14 设变量 x 为 float 型且已赋值,则以下语句中能将 x 中的数值保留到小数点后两位,并将第三位四舍五入的是( C )
A x = (x * 100) + 0.5 / 100.0;
B x = (x * 100 + 0.5) / 100.0;
C x = (int)(x * 100 + 0.5)/100.0;
D x = (x / 100 + 0.5) * 100.0;

分析

A x = (x * 100) + 0.5 / 100.0; 使x的值扩大100倍,并且+0.005
B x = (x * 100 + 0.5) / 100.0; 都是float类型运算,不能保留2位小数
比如 x=3.144,x*100=314.4+0.5=314.9/100=3.149
C x = (int)(x * 100 + 0.5)/100.0; 可以实现保留2位小数,把第3为四舍五入
比如x=3.146, x * 100 + 0.5=315.1 ,(int)(315.1)=315, 315/100.0=3.15
D x = (x / 100 + 0.5) * 100.0; 结果会变大
比如x=3.146,x / 100 + 0.5=0.03146+0.5=0.53146,0.53146*100=53.146
所以选C

15 有以下程序

#include <iostream>
using namespace std;
int main()
{int s, a, n;s= 0;a= 1;cin >> n;do{s+= 1;a-= 2;}while ( a != n );cout << s << endl;return(0);
}

若要使程序的输出值为 2,则应该从键盘给 n 输入的值是( B )
A -1
B -3
C -5
D 0

分析

1 根据程序分析,s初始为0,循环1次累加1
2 要使程序的输出为2,需要循环体执行2次do while循环判断条件前先执行1次,需要判断条件只第1次满足
3 循环1次a减2,a初始为1执行1次a为-1,此时条件成立,还需要循环1次再次执行边为-3 此时条件不成立退出,因此n=-3
所以选B

这篇关于信息学奥赛初赛天天练-83-NOIP2014普及组-基础题2-输入设备、输出设备、操作系统、二进制、整数除法、while、do while循环的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1139970

相关文章

MySQL存储过程之循环遍历查询的结果集详解

《MySQL存储过程之循环遍历查询的结果集详解》:本文主要介绍MySQL存储过程之循环遍历查询的结果集,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言1. 表结构2. 存储过程3. 关于存储过程的SQL补充总结前言近来碰到这样一个问题:在生产上导入的数据发现

从基础到进阶详解Pandas时间数据处理指南

《从基础到进阶详解Pandas时间数据处理指南》Pandas构建了完整的时间数据处理生态,核心由四个基础类构成,Timestamp,DatetimeIndex,Period和Timedelta,下面我... 目录1. 时间数据类型与基础操作1.1 核心时间对象体系1.2 时间数据生成技巧2. 时间索引与数据

安装centos8设置基础软件仓库时出错的解决方案

《安装centos8设置基础软件仓库时出错的解决方案》:本文主要介绍安装centos8设置基础软件仓库时出错的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录安装Centos8设置基础软件仓库时出错版本 8版本 8.2.200android4版本 javas

Linux基础命令@grep、wc、管道符的使用详解

《Linux基础命令@grep、wc、管道符的使用详解》:本文主要介绍Linux基础命令@grep、wc、管道符的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录grep概念语法作用演示一演示二演示三,带选项 -nwc概念语法作用wc,不带选项-c,统计字节数-

Python使用pynput模拟实现键盘自动输入工具

《Python使用pynput模拟实现键盘自动输入工具》在日常办公和软件开发中,我们经常需要处理大量重复的文本输入工作,所以本文就来和大家介绍一款使用Python的PyQt5库结合pynput键盘控制... 目录概述:当自动化遇上可视化功能全景图核心功能矩阵技术栈深度效果展示使用教程四步操作指南核心代码解析

python操作redis基础

《python操作redis基础》Redis(RemoteDictionaryServer)是一个开源的、基于内存的键值对(Key-Value)存储系统,它通常用作数据库、缓存和消息代理,这篇文章... 目录1. Redis 简介2. 前提条件3. 安装 python Redis 客户端库4. 连接到 Re

SpringBoot基础框架详解

《SpringBoot基础框架详解》SpringBoot开发目的是为了简化Spring应用的创建、运行、调试和部署等,使用SpringBoot可以不用或者只需要很少的Spring配置就可以让企业项目快... 目录SpringBoot基础 – 框架介绍1.SpringBoot介绍1.1 概述1.2 核心功能2

Spring Boot集成SLF4j从基础到高级实践(最新推荐)

《SpringBoot集成SLF4j从基础到高级实践(最新推荐)》SLF4j(SimpleLoggingFacadeforJava)是一个日志门面(Facade),不是具体的日志实现,这篇文章主要介... 目录一、日志框架概述与SLF4j简介1.1 为什么需要日志框架1.2 主流日志框架对比1.3 SLF4

Spring Boot集成Logback终极指南之从基础到高级配置实战指南

《SpringBoot集成Logback终极指南之从基础到高级配置实战指南》Logback是一个可靠、通用且快速的Java日志框架,作为Log4j的继承者,由Log4j创始人设计,:本文主要介绍... 目录一、Logback简介与Spring Boot集成基础1.1 Logback是什么?1.2 Sprin

C语言中的常见进制转换详解(从二进制到十六进制)

《C语言中的常见进制转换详解(从二进制到十六进制)》进制转换是计算机编程中的一个常见任务,特别是在处理低级别的数据操作时,C语言作为一门底层编程语言,在进制转换方面提供了灵活的操作方式,今天,我们将深... 目录1、进制基础2、C语言中的进制转换2.1 从十进制转换为其他进制十进制转二进制十进制转八进制十进