信息学奥赛初赛天天练-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

相关文章

好题——hdu2522(小数问题:求1/n的第一个循环节)

好喜欢这题,第一次做小数问题,一开始真心没思路,然后参考了网上的一些资料。 知识点***********************************无限不循环小数即无理数,不能写作两整数之比*****************************(一开始没想到,小学没学好) 此题1/n肯定是一个有限循环小数,了解这些后就能做此题了。 按照除法的机制,用一个函数表示出来就可以了,代码如下

零基础学习Redis(10) -- zset类型命令使用

zset是有序集合,内部除了存储元素外,还会存储一个score,存储在zset中的元素会按照score的大小升序排列,不同元素的score可以重复,score相同的元素会按照元素的字典序排列。 1. zset常用命令 1.1 zadd  zadd key [NX | XX] [GT | LT]   [CH] [INCR] score member [score member ...]

【测试】输入正确用户名和密码,点击登录没有响应的可能性原因

目录 一、前端问题 1. 界面交互问题 2. 输入数据校验问题 二、网络问题 1. 网络连接中断 2. 代理设置问题 三、后端问题 1. 服务器故障 2. 数据库问题 3. 权限问题: 四、其他问题 1. 缓存问题 2. 第三方服务问题 3. 配置问题 一、前端问题 1. 界面交互问题 登录按钮的点击事件未正确绑定,导致点击后无法触发登录操作。 页面可能存在

PTA求一批整数中出现最多的个位数字

作者 徐镜春 单位 浙江大学 给定一批整数,分析每个整数的每一位数字,求出现次数最多的个位数字。例如给定3个整数1234、2345、3456,其中出现最多次数的数字是3和4,均出现了3次。 输入格式: 输入在第1行中给出正整数N(≤1000),在第二行中给出N个不超过整型范围的非负整数,数字间以空格分隔。 输出格式: 在一行中按格式“M: n1 n2 ...”输出,其中M是最大次数,n

【Linux 从基础到进阶】Ansible自动化运维工具使用

Ansible自动化运维工具使用 Ansible 是一款开源的自动化运维工具,采用无代理架构(agentless),基于 SSH 连接进行管理,具有简单易用、灵活强大、可扩展性高等特点。它广泛用于服务器管理、应用部署、配置管理等任务。本文将介绍 Ansible 的安装、基本使用方法及一些实际运维场景中的应用,旨在帮助运维人员快速上手并熟练运用 Ansible。 1. Ansible的核心概念

整数Hash散列总结

方法:    step1  :线性探测  step2 散列   当 h(k)位置已经存储有元素的时候,依次探查(h(k)+i) mod S, i=1,2,3…,直到找到空的存储单元为止。其中,S为 数组长度。 HDU 1496   a*x1^2+b*x2^2+c*x3^2+d*x4^2=0 。 x在 [-100,100] 解的个数  const int MaxN = 3000

AI基础 L9 Local Search II 局部搜索

Local Beam search 对于当前的所有k个状态,生成它们的所有可能后继状态。 检查生成的后继状态中是否有任何状态是解决方案。 如果所有后继状态都不是解决方案,则从所有后继状态中选择k个最佳状态。 当达到预设的迭代次数或满足某个终止条件时,算法停止。 — Choose k successors randomly, biased towards good ones — Close

poj3750约瑟夫环,循环队列

Description 有N个小孩围成一圈,给他们从1开始依次编号,现指定从第W个开始报数,报到第S个时,该小孩出列,然后从下一个小孩开始报数,仍是报到S个出列,如此重复下去,直到所有的小孩都出列(总人数不足S个时将循环报数),求小孩出列的顺序。 Input 第一行输入小孩的人数N(N<=64) 接下来每行输入一个小孩的名字(人名不超过15个字符) 最后一行输入W,S (W < N),用

如何编写Linux PCIe设备驱动器 之二

如何编写Linux PCIe设备驱动器 之二 功能(capability)集功能(capability)APIs通过pci_bus_read_config完成功能存取功能APIs参数pos常量值PCI功能结构 PCI功能IDMSI功能电源功率管理功能 功能(capability)集 功能(capability)APIs int pcie_capability_read_wo

Linux操作系统 初识

在认识操作系统之前,我们首先来了解一下计算机的发展: 计算机的发展 世界上第一台计算机名叫埃尼阿克,诞生在1945年2月14日,用于军事用途。 后来因为计算机的优势和潜力巨大,计算机开始飞速发展,并产生了一个当时一直有效的定律:摩尔定律--当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。 那么相应的,计算机就会变得越来越快,越来越小型化。