信息学奥赛初赛天天练-70-NOIP2016普及组-基础题1-二进制、二进制状态表示、二进制加法、字符、字符数组、字符串、空串

本文主要是介绍信息学奥赛初赛天天练-70-NOIP2016普及组-基础题1-二进制、二进制状态表示、二进制加法、字符、字符数组、字符串、空串,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

NOIP 2016 普及组 基础题1

1 以下不是微软公司出品的软件是( )
A Powerpoint
B Word
C Excel
D Acrobat Reader

2 如果 256 种颜色用二进制编码来表示,至少需要( ) 位
A 6
B 7
C 8
D 9

3 以下不属于无线通信技术的是( )

A 蓝牙
B Wifi
C GPRS
D 以太网

7 二进制数 00101100 和 00010101 的和( )

A 00101000
B 01000001
C 01000100
D 00111000

10 以下关于字符串的判定语句中正确的是( )

A 字符串是一种特殊的线性表
B 串的长度必须大于零
C 字符串不可以用数组来表示
D 空格字符组成的串就是空串

2 相关知识点

1) 二进制

二进制(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

2) 二进制状态表示

1位2进制编码,可以表示0或1这2种状态,2^1=2
2位2进制编码,可以表示00,01,10,11这4种状态,2^1=2

10位2进制编码,可以表示2^10=1024种状态

3) 二进制加法

二进制加法,和十进制加法类似,可以使用竖式进行相加

和十进制加法区别为,十进制是逢十进一,二进制加法是逢二进一

例如

1001+0011=1100

 1001
+0011
-----1100

4) 字符

C语言有字符类型,也就是char类型,char类型的数据占内存大小为1字节。

C语言中不存在字符串类型,可以使用字符数组表示

字符是一种图形符号,不同国家不同地区都有自己特殊的字符,于是就衍生了“字符集合”这个名词。其中ASCII (American Standard Code for Information Interchange: 美国信息交换标准代码)是国际通用的标准字符集

例如

char a='0';
char b='P';
char c='@';
char c='65';//ascii 码 对应大写字母A

5) 字符串

是由“ ”包括起来的字符序列字符串的结束标志是‘\0’,用双引号括起来的一串字符就是字符串常量,它的末尾将由系统自动添加一个字符串结束标志‘\0’

在c语言中不能定义字符串,但是在c语言中使用字符串,通常会用字符数组来模拟字符串,必须是’\0’结尾的字符数组。如果字符数组中没有‘\0’结尾,那该字符数组就是普通的字符数组,不是字符串

字符串赋值1

//定义一个,总长度为10,有效长度为5的字符串 \0为结束符号
char c1[10]={'h','e','l','l','o','\0'};//定义一个总长度为10,有效长度为4的字符串 \0 有效长度只包括\0 前面的
char c2[10]={'h','e','l','l','\0','o'};//定义一个总长度为10,有效长度为9的字符串
char c3[10]="hello 123";

字符串赋值2

#include<bits/stdc++.h>
using namespace std;int main(){string st1="hello";//"" 包括起来的字符序列字符串 cout<<st1<<endl;int len=st1.size();//字符串的长度为 ""包括起来的字符的个数 cout<<"st1字符串长度为:"<<len;return 0;
}/*
输出 
hello
st1字符串长度为:5
*/

6) 空串

空串是指长度为0的字符串。在计算机科学中,空串通常表示没有任何字符的字符串

#include<bits/stdc++.h>
using namespace std;int main(){string st1="";//空串 长度为0 cout<<st1.size()<<endl;string st2=" ";//带1个空格的字符串 长度为1 cout<<st2.size()<<endl; return 0;
}
/*
输出 
0
1
所以st1是空串 st2不是空串 
*/ 

3 思路分析

1 以下不是微软公司出品的软件是( D )
A Powerpoint
B Word
C Excel
D Acrobat Reader

分析

A PowerPoint:这是微软公司出品的一款演示文稿制作软件,属于Microsoft Office套件的一部分。
B Word:这是微软公司出品的一款文字处理软件,也是Microsoft Office套件的一部分。
C Excel:这是微软公司出品的一款电子表格处理软件,同样属于Microsoft Office套件的一部分。
D Acrobat Reader:这是Adobe公司出品的一款免费的PDF阅读软件,用于查看、打印和注释PDF文件。
Acrobat Reader不是微软公司出品的软件,而是Adobe公司的产品。因此,选D

2 如果 256 种颜色用二进制编码来表示,至少需要( B ) 位
A 6
B 7
C 8
D 9

分析

1位2进制编码,可以表示0或1这2种颜色,2^1=2
2位2进制编码,可以表示00,01,10,11这4种颜色,2^1=2
...
8位2进制编码,可以表示2^8=256种颜色

3 以下不属于无线通信技术的是( D )

A 蓝牙
B Wifi
C GPRS
D 以太网

分析

A 蓝牙:这是一种短距离无线通信技术,用于连接各种电子设备,如手机、电脑、耳机等。
B Wifi:这是一种无线局域网技术,用于连接互联网,提供高速的数据传输。
C GPRS:这是一种移动通信技术,用于移动设备之间的数据传输,包括短信、彩信、数据上网等。
D 以太网:这是一种有线局域网技术,用于连接计算机和其他设备,提供高速的数据传输。
以太网是一种有线通信技术,不属于无线通信技术。因此,选D

7 二进制数 00101100 和 00010101 的和( B )

A 00101000
B 01000001
C 01000100
D 00111000

分析

竖式计算,逢二进一00101100 
+00010101 
----------01000001

10 以下关于字符串的判定语句中正确的是( A )

A 字符串是一种特殊的线性表
B 串的长度必须大于零
C 字符串不可以用数组来表示
D 空格字符组成的串就是空串

分析

A 字符串是一种特殊的线性表:这个说法是正确的。字符串是由字符组成的序列,可以看作是一种特殊的线性表。
B 串的长度必须大于零:这个说法是错误的。串的长度可以为零,这样的串称为空串。
C 字符串不可以用数组来表示:这个说法是错误的。实际上,字符串可以用数组来表示,特别是在编程语言中,字符串通常用字符数组来实现。
D 空格字符组成的串就是空串:这个说法是错误的。空串是指长度为零的串,而空格字符组成的串长度不为零,因此不是空串。
因此选A

这篇关于信息学奥赛初赛天天练-70-NOIP2016普及组-基础题1-二进制、二进制状态表示、二进制加法、字符、字符数组、字符串、空串的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Springboot3+将ID转为JSON字符串的详细配置方案

《Springboot3+将ID转为JSON字符串的详细配置方案》:本文主要介绍纯后端实现Long/BigIntegerID转为JSON字符串的详细配置方案,s基于SpringBoot3+和Spr... 目录1. 添加依赖2. 全局 Jackson 配置3. 精准控制(可选)4. OpenAPI (Spri

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

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

MySQL JSON 查询中的对象与数组技巧及查询示例

《MySQLJSON查询中的对象与数组技巧及查询示例》MySQL中JSON对象和JSON数组查询的详细介绍及带有WHERE条件的查询示例,本文给大家介绍的非常详细,mysqljson查询示例相关知... 目录jsON 对象查询1. JSON_CONTAINS2. JSON_EXTRACT3. JSON_TA

C#如何去掉文件夹或文件名非法字符

《C#如何去掉文件夹或文件名非法字符》:本文主要介绍C#如何去掉文件夹或文件名非法字符的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#去掉文件夹或文件名非法字符net类库提供了非法字符的数组这里还有个小窍门总结C#去掉文件夹或文件名非法字符实现有输入字

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

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

使用Python实现base64字符串与图片互转的详细步骤

《使用Python实现base64字符串与图片互转的详细步骤》要将一个Base64编码的字符串转换为图片文件并保存下来,可以使用Python的base64模块来实现,这一过程包括解码Base64字符串... 目录1. 图片编码为 Base64 字符串2. Base64 字符串解码为图片文件3. 示例使用注意

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

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

IIS 7.0 及更高版本中的 FTP 状态代码

《IIS7.0及更高版本中的FTP状态代码》本文介绍IIS7.0中的FTP状态代码,方便大家在使用iis中发现ftp的问题... 简介尝试使用 FTP 访问运行 Internet Information Services (IIS) 7.0 或更高版本的服务器上的内容时,IIS 将返回指示响应状态的数字代

python操作redis基础

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

golang float和科学计数法转字符串的实现方式

《golangfloat和科学计数法转字符串的实现方式》:本文主要介绍golangfloat和科学计数法转字符串的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望... 目录golang float和科学计数法转字符串需要对float转字符串做处理总结golang float