C++NOIP模拟试题
- 格式:doc
- 大小:79.50 KB
- 文档页数:7
NOIP完善程序练习题(C语言)NOIP完善程序练习题(C语言)1.【问题描述】求出所有满足下列条件的二位数:将此二位数的个位数字与十位数字进行交换,可得到一个新的数,要求新数与原数之和小于100。
【程序要求】每行输出6个满足要求的数。
【算法说明】分解每一个二位数,然后重新组成一个新数,当满足条件时,用计数器来统计个数.【程序清单】main(){ int k=0,i,x,y,j;for(i=____【1】____;i<100;i++){ x=____【2】____; y=____【3】____;j=x*10+y;if(____【4】____) { k++; printf("%4d",i); if(____【5】____) printf("\n");} }}2.判断质数题目描述:给出一个正整数,判断这个数是否是质数。
输入:一个正整数n(1 ≤ n ≤ 10000)。
输出:如果n是质数,输出”YES”;否则,输出”NO”。
输入样例:10输出样例:NO程序:#includeint main() {int ①;scanf("%d", &n);if (n == 2) puts( ②);else if ( ③|| n % 2 == 0) puts("NO");else {i = 3;while (i * i <= n) {if ( ④) {puts("NO"); return 0;}i = i + 2;}puts("YES");}return 0;}3.三角形内切圆的面积(8分)【题目描述】给出三角形三边的边长,求此三角形内切圆(如下图所示,三角形的内切圆是和三角形三边都相切的圆)的面积。
【输入】三个正实数a、b、c(满足a+b>c,b+c>a,c+a>b),表示三角形三边的边长。
N O I P初赛模拟考试题及答案解析集团标准化小组:[VVOPPT-JOPP28-JPPTL98-LOPPNN]信息学奥林匹克联赛初赛模拟试题(普及组C语言二小时完成)●●全部试题答案均要求写在答卷纸上,写在试卷纸上一律无效●●一.选择一个正确答案代码(A/B/C/D/E),填入每题的括号内(每题1.5分,共30分)1.被誉为“人工智能之父”的是()。
A.冯·诺依曼。
B.巴贝奇。
C.文顿·瑟夫和卡恩。
D.阿兰·图灵。
E.弗雷德里克·特曼。
2.下列哪个不是CPU(中央处理单元)()。
A.IntelItaniumB.DDRSDRAMC.AMDAthlon64D.AMDOpteronE.IBMPower53.常见的邮件传输服务器使用()协议发送邮件。
A.HTTPB.SMTPC.TCPD.FTPE. POP34.下列无符号数中,最小的数是()。
10 C.(37)8 D.(2A)165.下列哪个软件属于操作系统软件()。
A.MicrosoftWordB.PhotoshopC.FoxmailD.WinRARE.RedHatLinux6.下列哪个不是计算机的存储设备()。
A.文件管理器B.内存C.高速缓存D.硬盘E.U盘7.组成’教授’(jiaoshou)’副教授’(fujiaoshou)与’讲师’(jiangshi)这三个词的汉字,在GB2312-80字符集中都是一级汉字.对这三个词排序的结果是()。
A教授,副教授,讲师B.副教授,教授,讲师C讲师,副教授,教授D.副教授,讲师,教授8.彩色显示器所显示的五彩斑斓的色彩,是由红色、蓝色和()色混合而成的。
A.紫B.白C.黑D.绿E.橙9.以下哪个软件不是即时通信软件()。
A.网易泡泡B.MSNMessengerC.GoogleTalkD.3DSMaxE.QQ10.一台计算机如果要利用电话线上网,就必须配置能够对数字信号和模拟信号进行相互转换的设备,这种设备是()。
信息学初赛模拟试题(四)一、选择题:(选出每题正确的答案代码,填在括号里,1—10题为单选题,每小题只有一个正确答案,11—20题为不定项选择题,每小题有一个或一个以上的正确答案,共20题,每题,共30分)1、二进制数01100100转换成十六进制数是()。
A.32 B.64 C.128 D.100 E.2562、操作系统是一类重要的系统软件,下面几个软件中,不属于系统软件的是()。
A.Java B.MS-DOS C.Linux D.Windows7 E.Unix3、计算机病毒的传染是以计算机运行和()为基础的,没有这两个条件,病毒是不会传染的。
A.编辑文稿 B.读写磁盘 C.编程序 D.扫描图画 E.打印4、因特网不属于任何个人,也不属于任何组织。
其中在网络知识这一块中有一个英文简写ISP,它的中文意思是()。
A.因特网连接 B.因特网使用 C.因特网设计 D.因特网服务提供者 E.信息传输5、Internet给我们提供了资源共享、浏览、检索信息和远程登录等多种服务,下面几个选项中用于远程登录的是()。
A.WWW B.TCP/IP C.Telnet D.E-mail E.FTP6、IE是目前流行的浏览器软件,它的工作基础是解释执行用()语言书写的文件。
A.VC B.HTML C.BASIC D.HTTP E.VB7、给出3种排序:插入排序、冒泡排序、选择排序。
这3种排序的时间代价分别是()。
A.O(n)、O(n2)、O(logn) B.O(logn) 、O(n)、O(n2) C.O(n2)、O(n)、O(logn) D.O(n2)、O(n)、O(n) E.O(n2)、O(n2)、O(n2)8、一棵完全二叉树的结点总数为18,其叶结点数为()。
A.7个 B.8个 C.9个 D.10个 E.11个9、在流程图的符号中,菱形框一般作为()。
A.起始框 B.判断框 C.输入输出框 D.处理工作框 E.结速框10、在解决计算机主机与打印机之间速度不匹配时通常设置一个打印数据缓冲区,主要将要输出打印的数据依次写入该缓冲区,而打印机从该缓冲区中取出数据打印。
一、选择题:共20 题,每题1.5 分,共计30 分)。
1、计算机网络最大的优点是。
A、精度高B、资源共享C、运行速度快D、存储容量大E、逻辑判断能力强2、计算机病毒是指。
A、编制有错误的计算机程序B、设计不完善的计算机程序C、计算机的程序已被破坏D、以危害系统为目的的特殊的计算机程序E、没有经过编译的计算机程序3、在各种查找算法中,平均查找长度(与关键字比较次数的期望值)与查找表中元素个数 n 无关的查找方法是____。
A. 顺序查找B. 散列查找C. 折半查找D. 动态查找 E、二分查找4、下列各数中最大的是____。
A、 11010110.0101(二进制)B、D6.53(十六进制)C、 214.32(十进制)D、326.25(八进制)E、23.26(三十二进制)5.已知英文字母a 的ASCll 代码值是十六进制数61H,那么字母d 的ASCll 代码值是A)34H B)54H C)24H D)64H E)74H6、若一台计算机的字长为 32 位,则表明该机器___。
A. 能处理的数值最大为 4 位十进制数B. 能处理的数值最多为 4 个字节C. 在 CPU 中能够作为一个整体加以处理的二进制数据为 4 个字节D. 在 CPU 中运算的结果最大为 232E.表示计算机的时钟脉冲7、编译程序和解释程序是两类高级语言翻译程序,它们的根本区别在于__。
A. 是否进行优化处理B. 执行效率不同C. 对源程序中的错误处理不同D. 是否形成目标程序E.编写方式不同8、在字符串“abcde”中有___个子串 CA. 14B. 15C. 16D. 17E.189、假设一棵二叉树的后序遍历序列为DGJHEBIFCA,中序遍历序列为DBGEHJACIF,则其前序遍历序列为。
A、ABCDEFGHIJB、ABDEGHJCFIC、ABDEGHJFICD、ABDEGJHCFIE、ABEDGHCJFI10、某硬盘中共有9 个盘片,16 个记录面,每个记录面上有2100 个磁道,每个磁道分为64个扇区,每扇区为512 字节,则该硬盘的存储容量为。
一、选择题:(共20 小题,每题1.5 分;共30 分)1.对存储器按字节进行编址,若某存储器芯片共有10 根地址线的引脚,则该存储器芯片的存储容量为( )。
(A) 512B (B) 1KB (C) 2KB (D)4KB (E)8KB2.在待排序的数据表已经为有序时,下列排序算法中花费时间反而多的是( )。
(A)堆排序(B)希尔排序(C)冒泡排序(D)快速排序(E)二分排序3.某数列有1000 个各不相同的单元,由低至高按序排列,现要对该数列进行二分法检索,在最坏的情况下,需要检索( )单元。
(A)1000 (B)10 (C)100 (D)500 (E) 3004.已知数组a 中,每个元素a[i,j]在存储时要占3 个字节,设i 从1 变化到8,j从1 变化到10,分配内存实是从地址sa 开始连续按行存储分配的。
试问:a[5,8]的起始地址为( )。
(A)sa+141 (B)sa+180 (C)sa+222 (D)sa+225 (E)sa+1555.在C语言函数调用时,数组形参得到的是实际参数的( )。
(A) 数值(B) 地址(C)值(D)变量(E)以上都不是6.一个24*24 点阵的汉字字形信息所占的字节数为( )。
(A) 2 (B) 8 (C) 24 (D) 32 (E) 727. 在微机系统中,最基本的输入输出模块BIOS 存放在( ) 中。
(A) RAM (B) ROM (C) 硬盘(D)寄存器(E)控制器8. 十进制算术表达式:3*512+5*64+2*8+1 的运算中,用二进制表示为( )。
(A)1011010001 (B) 10110100011 (C) 11101010001(D) 11110100011 (E)1110009.设栈S 的初始状态为空,现对序列{1,2,3,4,5}在栈S 上,依次进行如下操作(从元素1 开始,出栈后不再进栈):进栈,出栈,进栈,进栈,出栈,出栈。
2024年 CCF非专业级软件能力认证第一轮(CSP-J1)入门级C++语言模拟试题认证时间:2024年9月21日 9:30-11:30考生注意事项:l试题纸共有12页,答题纸共有1页,满分100分。
请在答题纸上作答,写在试题纸上的一律无效。
l不得使用任何电子设备(如计算器、手机、电子辞典等)或查阅任何书籍资料。
一、单项选择题(共15题,每题2分,共计30分;每题有且仅有一个正确选项)1. 32 位 i nt 类型的存储范围是?A. -2147483647到+2147483647B. -2147483647到+2147483648C. -2147483648到+2147483647D. -2147483648到+21474836482. 计算(14!-1010")×D#$-1010"的结果,并选择答案的十进制值。
A. 13B. 14C. 15D. 163. 某公司有 10 名员工,分为 3 个部门:A 部门有 4 名员工,B 部门有 3 名员工、C 部门有3 名员工。
现需要从这 10 名员工中选出 4 名组成一个工作组,且每个部门至少要有 1 人。
问有多少种选择方式?A. 120B. 126C. 132D. 2384. 以下哪个序列对应数组 0 至 8 的 4 位二进制格雷码(Gray code)?A. 0000,0001,0011,0010,0110,0111,0101,1000B. 0000,0001,0011,0010,0110,0111,0100,0101C. 0000,0001,0011,0010,0100,0101,0111,0110D. 0000,0001,0011,0010,0110,0111,0101,01005. 记 1Kb 位 1024 字节(byte),1MB 位 1024KB,那么 1MB 是多少二进制位(bit)?A. 1000000B. 1048576C. 8000000D. 83886086. 6. 以下哪个不是 C++中的基本数据类型?A. intB. floatC. structD. char7. 以下哪个不是 C++中的循环语句?A. forB. whileC. do-whileD. repeat-until8. 在 C/C++中,(char)( 'a' +13) 与下面的哪一个值相等?A. 'm'B. 'n'C. 'z'D. '3'9. 假设有序表中有 1000 个元素,则用二分法查找元素x 最多需要比较( )次?A. 25B. 10C. 7D. 110. 下面哪一个不是操作系统名字:A. NotepadB. LinuxC. WindowsD. MacOS11. 在无向图中,所有顶点的度数之和等于()A. 图的边数B. 图的边数的两倍C. 图的顶点数D. 图的顶点数的两倍12. 已知二叉树的前序遍历为[A,B,D,E,C,F,G],中序遍历为[D,B,E,A,F,C,G],求二叉树的后序遍历的结果是()A. [D,E,B,F,G,C,A]B. [D,E,B,F,G,A,C]C. [D,B,E,F,G,C,A]D. [D,E,B,F,G,A,C]13. 给定一个空栈,支持入栈和出栈操作。
NOIP 初赛模拟试题(2小时C语言普及组)姓名成绩一、选择题(共20题,每题1.5分,共计30分。
)1.微型计算机的性能主要取决于()。
A)内存B)主板C)中央处理器D)硬盘E)显示器2.设T是一棵有n个顶点的树,以下说法不正确的是()。
A.T是联通的,无环的。
B.T是联通的,有n-1条边。
C.T是无环的,有n-1条边。
D.以上都不对。
3.能将高级语言程序转换为目标程序的是( ).A)调试程序B) 连接程序C)编辑程序D)编译程序4.若A=45,B=38,C=78则A^ B & C=( )A)38 B)18 C)11 D)455.计算机病毒传染的必要条件之一是( ) 。
A)在内存中运行病毒程序B)对磁盘进行读写操作C)在内存中运行含有病毒的可执行程序D)复制文件E)删除文件6. TCP/IP协议共有( )层协议A)3 B)4 C)5 D)6 E)77.192.168.0.1是属于( ).A)A类地址B)B类地址C)C类地址D)D类地址E)E类地址8.对给定的整数序列(54,73,21,35,67,78,63,24,89)进行从小到大的排序时,采用快速排序的第一趟扫描的结果是( ).A)(24,21,35,54,67, 78,63,73,89)B)(24,35,21,54,67, 78,63,73,89)C)(24,21,35,54,67, 63,73,78,89)D)(21,24,35,54,63, 67,73,78,89)9.一棵n个结点的完全二叉树,则二叉树的高度h为( ).A)n/2 B)log2n C)(log2n)/2 D) [log2n]+1 E)2n-110.下图对该图进行广度优先拓朴排序得到的顶点序列正确的是( ).A)1,2,3,4,5,6B)1,3,2,4,5,6C)1,3,2,4,6,5D)1,2,3,4,6,5,E)1,3,2,4,5,6A)采用二进制表示数据和指令;B)采用”存储程序”工作方式C)计算机硬件有五大部件(运算器、控制器、存储器、输入和输出设备)D)结构化程序设计方法12.下列不属于输入设备的是( ).A)打印机B)扫描仪C)光笔D)鼠标13.算式(1000)10-(101)16 - (11)8的结果是( ).A)(891)10 B)(886)8C)(10111000011)2D)(2DE)1614.下面关于算法的不正确的说法是( )A)算法必须有输出B)算法必须在计算机上用某种语言实现C)算法不一定有输入D)算法必须在有限步执行后能结束E)算法的每一步骤必须有确切的定义15.下列关于十进制数100的正确说法是( ).A)原码为01101100BB)反码为64H C)反码为9BH D)补码为65H16.关于windows系统中的窗口和对话框的说法正确的是( ).A)对话框能移动和改变大小B)窗口不能移动,能改变大小C)对话框只能移动,不能改变大小D)对话框不能移动但能改变大小E)窗口能移动和但不能改变大小17.若A=true,B=false,C=true,D=false,以下逻辑运算表达式真的有()A.(A∧B)∨(C∧D∨¬A)B.((¬A∧B)∨C)∧¬BC.(B∨C∨D)∧D∧¬AD. ¬A∧(D∨¬ C) ∧B18.下列关于排序说法不正确的是( ).A)插入排序、冒泡排序是稳定的B)选择排序的时间复杂性为O(n2)C)选择排序、希尔排序、快速排序、堆排序是不稳定的D)希尔排序、快速排序、堆排序的时间复杂性为O(nlog2n)E)占用内存空间大的是归并排序。
吉祥数c/cpp)【问题描述】为了迎接圣诞,信息学兴趣小组的同学在辅导老师的带领下,举办了一个盛大的晚会,晚会的第一项内容是做游戏:猜数。
老师给每位同学发一张卡片,每张卡片上都有一个编号(此编号为非负数,且小于255),每个编号互不相同。
老师制定了以下的游戏规则:第一轮,每位同学将自己卡片上编号的各位数字进行平方后再相加得到一组新数,编号在这组新数中出现的同学淘汰出局,第二轮,余下的同学再将编号的各位数字进行立方相加得到一组新数,编号在这组新数中出现的同学再淘汰出局,第三轮,余下的同学再将编号的各位数字进行4次方相加得到一组新数,编号在这组新数中出现的同学再淘汰出局,……,以此类推,经过n 轮后,仍留下来的同学,将获得圣诞特别礼物,卡片上的数即为2007年吉祥数。
(假定班级人数不超过200人)【输入文件】()第1行为1个正整数n(n<8),表示有n轮游戏,第二行是卡片上互不相同的编号。
【输出文件】()为剩下来的各个吉祥数,按从小到大顺序输出,每两个数之间有一个空格。
【输入样例】124 123 2 12 20 14 4 6 36 72【输出样例】2 6 12 24 72 123圣诞树c/cpp)【问题描述】圣诞特别礼物挂在一棵圣诞树上,这棵树有n层,每层有一件礼物,每件礼物都有一个价值,有的礼物还有一些连结线,与下层的礼物相连,领取礼物的规则如下:任选一件礼物,它的下面如果有连结线,则可以继续取它连结的礼物,以此类推,直至取到没有连结线的礼物才结束,你如果是第一个去取,怎样取才能获得最大的价值呢请你编一程序解决这一问题。
【输入文件】()第一行只有一个数据n(n<=100),表示有n层礼物,以下有n行数据,分别表示第1-n层礼物的状态,每行至少由一个数据构成,且第一个数据表示该礼物的价值,后面的数据表示它与哪些层的礼物相连,如果每行只有一个数据则说明这层礼物没有与下层礼物相连,每个数的大小均不超过10000。
一、平方根【问题描述】给出一个正整数n(1<n<=2^31-1),求当x,y都为正整数,方程:=n-yx的解中,x的最小值是多少?【输入文件】输入文件sqrt.in只有一行,一个正整数n。
【输出文件】输出文件sqrt.out只有一行,即满足条件的最小的x的解。
【样例】:【数据规模】30%的数据满足1<n<=10000;100%的数据满足1<n<=2^31-1。
二、计算系数【问题描述】给定一个多项式(ax + by)k,请求出多项式展开后x n y m项的系数。
【输入格式】输入文件名为factor.in。
共一行,包含5 个整数,分别为a,b,k,n,m,每两个整数之间用一个空格隔开。
【输出格式】输出文件名为factor.out。
输出共1行,包含一个整数,表示所求的系数,这个系数可能很大,输出对10007取模后的结果。
【样例】【数据范围】对于30%的数据,有0≤k≤10;对于50%的数据,有a = 1,b = 1;对于100%的数据,有0≤k≤1,000,0≤n, m≤k,且n + m = k,0≤a,b≤1,000,000。
三、宇宙蘑菇【问题描述】Smart在宇宙中发现了一种奇怪的蘑菇,它每天都会固定分裂一次,长度为x的蘑菇会分裂成两个长度分别为x-1和x+1的蘑菇,但是长度为0的蘑菇是不存在的,所以长度为1的蘑菇只能生长成长度为2的蘑菇。
现在小Y第一天有一个长度为2的蘑菇,他想知道第n天他有多少个蘑菇。
【输入】一个整数n。
【输出】一个整数ans,表示到了第n天Smart有的蘑菇个数。
【样例】【数据范围】1≤n≤2000。
一、平方根#include <fstream>#include <cmath>using namespace std;ifstream fin("sqrt.in");ofstream fout("sqrt.out");long long x,y,n,p;int main(){fin>>n;for (p=(int)sqrt(n);p>=1;p--)if (n%(p*p)==0){y=n/(p*p);break;}x=(p+1)*(p+1)*y;fout<<x<<endl;return 0;}二、计算系数#include <iostream>#include <cstdio>using namespace std;const int MaxN=1001;const int MOD=10007;int a,b,k,m,n,ans;int c[MaxN][MaxN];int com(int n,int k)//计算组合数C(k,n)的值{if (n==0) return 1;if (n==k) return 1;if ( c[n][k] ) return c[n][k];c[n][k]=( com(c[n-1][k-1])+com(c[n][k-1]) )%MOD; return c[n][k];}void work()//计算系数C(k,n)*a^n*b^m的值{int i;ans=com(n,k);a=a%MOD;b=b%MOD;for (i=1;i<=n;i++)ans=(ans*a)%MOD;for (i=1;i<=m;i++)ans=(ans*b)%MOD;printf("%d\n",ans);}int main(){freopen("factor.in","r",stdin);freopen("factor.out","w",stdout);scanf("%d%d%d%d%d",&a,&b,&k,&n,&m);work();return 0;}三、宇宙蘑菇#include <iostream>using namespace std;const int maxlen=1001;int n,len;int ans[maxlen];void mult(int x)//高精度乘法,数组每位存储5位数字{int i,k;k=0;//进位for (i=1;i<=len;i++){ans[i]= ans[i]*x+k;k=ans[i]/100000;ans[i]%=100000;}while (k!=0){len++;ans[len]=k%100000;k/=100000 ;}}void divi(int x)//高精度除法{int i;for (i=len;i>=1;i--){if (i!=1)ans[i-1]+=( ans[i]%x )*100000;ans[i]/=x;}while (len>1 && ans[len]==0) len-- ;}void out(){int i;printf("%d",ans[len]);for (i=len-1;i>=1;i--)printf(" %5.5d ",ans[i]);printf("\n");}int main(){int i,a,b;freopen("mushroom.in","r",stdin);freopen("mushroom.out","w",stdout);scanf("%d",&n);len=1;ans[1]=1;a=n-(n/2)+1;b=1;for (i=1;i<=(n/2);i++)//计算组合c(n,n/2)的值{mult(a);divi(b);a++ ;b++;}out();return 0;}。
NOIP完善程序练习题(C语言)1.【问题描述】求出所有满足下列条件的二位数:将此二位数的个位数字与十位数字进行交换,可得到一个新的数,要求新数与原数之和小于100。
【程序要求】每行输出6个满足要求的数。
【算法说明】分解每一个二位数,然后重新组成一个新数,当满足条件时,用计数器来统计个数.【程序清单】main(){ int k=0,i,x,y,j;for(i=____【1】____;i<100;i++){ x=____【2】____; y=____【3】____;j=x*10+y;if(____【4】____) { k++; printf("%4d",i); if(____【5】____) printf("\n");} }}2.判断质数题目描述:给出一个正整数,判断这个数是否是质数。
输入:一个正整数n(1 ≤ n ≤ 10000)。
输出:如果n是质数,输出”YES”;否则,输出”NO”。
输入样例:10输出样例:NO程序:#include <stdio.h>int main() {int ①;scanf("%d", &n);if (n == 2) puts( ②);else if ( ③|| n % 2 == 0) puts("NO");else {i = 3;while (i * i <= n) {if ( ④) {puts("NO"); return 0;}i = i + 2;}puts("YES");}return 0;}3.三角形内切圆的面积(8分)【题目描述】给出三角形三边的边长,求此三角形内切圆(如下图所示,三角形的内切圆是和三角形三边都相切的圆)的面积。
【输入】三个正实数a、b、c(满足a+b>c,b+c>a,c+a>b),表示三角形三边的边长。
最小花费【题目描述】在n个人中,某些人的银行账号之间可以互相转账。
这些人之间转账的手续费各不相同。
给定这些人之间转账时需要从转账金额里扣除百分之几的手续费,请问A最少需要多少钱使得转账后B收到100元。
【输入格式】第一行输入两个用空格隔开的正整数n,m,分别表示总人数和可以互相转账的人的对数。
以下m行每行输入三个用空格隔开的正整数x,y,z,表示标号为x的人和标号为y的人之间互相转账需要扣除z%的手续费(0<z<100)。
最后一行输入两个用空格隔开的正整数A,B。
数据保证A与B之间可以直接或间接地转账。
【输出格式】输出A使得B到账100元最少需要的总费用。
精确到小数点后3位。
【输入样例】3 31 2 12 3 21 3 31 3【输出样例】103.072【数据范围】对于30%的数据,满足1<=n<=100对于所有数据,满足1<=n<=2000。
生日派对【题目描述】有N-1位同学要去参加小徐的生日派对。
小徐的生日派对在编号为x(1<=x<=n)的地方举行,而这N-1位同学分别住在编号为1~N(除X)的地方。
现在有M(1<=m<=100000)条有向道路,每条路长为ti(1<=ti<=100)。
每位同学都必须参加完派对后回家,每位同学都会选择最短路径,求这n-1位同学的最短路径(一个来回)中最长的一条的长度。
特别提醒:可能有权值不同的重边。
数据保证每位同学均能到达X处,并从X处返回。
【输入格式】第1行:N,M,X;第2~m+1行: Ai,Bi,Ti,表示有一条从Ai到Bi的路,长度为Ti.【输出格式】输出仅一行,为最长最短路的长度。
【输入样例】4 8 21 2 41 3 21 4 72 1 12 3 53 1 23 4 44 2 3【输出样例】10【数据范围】对于60%的数据,满足1<=n<=100对于所有数据,满足1<=n<=1000。
NOIPXX(第二十届)初赛普及组C语言试题及答案第届全国青少年信息学奥林匹克联赛初赛普及组C语言试题竞赛时间:xx年10月12日14:30~16:30 选手注意: l 试题纸共有8页,答题纸共有2页,总分值100分。
请在答题纸上作答,写在试题纸上的一律无效。
l 不得使用任何电子设备(如计算器、、电子词典等)或查阅任何书籍资料。
一、单项选择题(共20题,每题1.5分,共计30分;每题有且仅有一个正确选项) 1. 以下哪个是面向对象的高级语言()。
A. 汇编语言B. C++C. FortranD. Basic 2. 1TB代表的字节数量是()。
A. 2的10次方B. 2的20次方C. 2的30次方D. 2的40次方 3. 二进制数00 0和00010101的和是()。
A. 00101000B. 001010100C. 01000101D. 00111001 4. 以下哪一种设备属于输出设备()。
A. 扫描仪B. 键盘C. 鼠标D. 打印机 5. 以下对操作系统功能的描述最为完整的是()。
A. 负责外设与主机之间的信息交换B. 负责诊断机器的故障C. 控制和管理计算机系统的各种硬件和软件资源的使用D. 将源程序编译成目标程序 6. CPU、存储器、I/O设备是通过()连接起来的。
A. 接口B. 总线C. 控制线D. 系统文件 7. 断电后会丧失数据的存储器是()。
A. RAMB. ROMC. 硬盘D. 光盘 8. 以下哪一种是属于收发的协议()。
A. TPB. UDPC. P2PD. FTP 9. 以下选项中不属于图像格式的是()。
A. JPEG格式B. TXT格式C. GIF格式D. PNG格式 10. 链表不具有的特点是()。
A. 不必事先估计存储空间B. 可随机访问任一元素C. 插入删除不需要元素D. 所需空间与线性表长度成正比 11. 以下各无符号十进制整数中,能用八位二进制表示的数中最大的是()。
NOIP初赛模拟试题by OI Store(提高组C++语言二小时完成)一、单项选择题(共10题,每题1.5分,共计15分。
每题有且仅有一个正确答案。
)1.建立了计算机最主要的结构原理的人是()。
A. 图灵B. 比尔·盖茨C. 冯·诺伊曼D. 克拉拉·丹E. 哥德尔2.设a、b、c是三个布尔型(boolean)的变量,则表达式(a∨¬b)∧(b∨¬c)∧(c∨¬a)∧(a∧¬a)∧(b∧¬b)的值()。
A. 始终为trueB. 始终为falseC. 当且仅当c为true时为falseD. 当且仅当a与b均为true时为trueE. 依赖于a、b、c三者的值3.设a、b为两个浮点(float)型变量,下面的表达式中最有可能为真的是()。
A. a=bB. a*a+2*a*b+b*b=(a+b)*(a+b)C. (a+b)*(a-b)+b*b-a*a<0.0001D. a/b=1/(b/a)E. sqrt(a)*sqrt(b)=sqrt(a*b)4.下面的数据中,在编程中用长整型(longint)表示最恰当的是()。
A. 宇宙中的原子数目B. 一头大象的体重(用吨表示)C. 姚明的身高(用厘米表示)D. 一个山村的准确人口数E. 从现在(2006年)到2008奥运会开幕的倒计时秒数5.一个三叉树(即每个节点最多有三个孩子)中,有k个孩子的结点数目表示为S(k),则下列关系一定成立的是()。
A. S(0)=2*S(3)+S(2)-1B. S(0)>3*S(3)+2*S(2)-1C. S(0)<3*S(3)+2*S(2)+1D. S(0)>2*S(3)+S(2)E. S(0)<=3*S(3)+2*S(2)6.佳佳在网上购买了一个空间,建设了一个网站。
那么,他向网站上上传网页时最有可能采用的网络协议是()。
吉祥数c/cpp)【问题描述】为了迎接圣诞,信息学兴趣小组的同学在辅导老师的带领下,举办了一个盛大的晚会,晚会的第一项内容是做游戏:猜数。
老师给每位同学发一张卡片,每张卡片上都有一个编号(此编号为非负数,且小于255),每个编号互不相同。
老师制定了以下的游戏规则:第一轮,每位同学将自己卡片上编号的各位数字进行平方后再相加得到一组新数,编号在这组新数中出现的同学淘汰出局,第二轮,余下的同学再将编号的各位数字进行立方相加得到一组新数,编号在这组新数中出现的同学再淘汰出局,第三轮,余下的同学再将编号的各位数字进行4次方相加得到一组新数,编号在这组新数中出现的同学再淘汰出局,……,以此类推,经过n 轮后,仍留下来的同学,将获得圣诞特别礼物,卡片上的数即为2007年吉祥数。
(假定班级人数不超过200人)【输入文件】()第1行为1个正整数n(n<8),表示有n轮游戏,第二行是卡片上互不相同的编号。
【输出文件】()为剩下来的各个吉祥数,按从小到大顺序输出,每两个数之间有一个空格。
【输入样例】124 123 2 12 20 14 4 6 36 72【输出样例】2 6 12 24 72 123圣诞树c/cpp)【问题描述】圣诞特别礼物挂在一棵圣诞树上,这棵树有n层,每层有一件礼物,每件礼物都有一个价值,有的礼物还有一些连结线,与下层的礼物相连,领取礼物的规则如下:任选一件礼物,它的下面如果有连结线,则可以继续取它连结的礼物,以此类推,直至取到没有连结线的礼物才结束,你如果是第一个去取,怎样取才能获得最大的价值呢请你编一程序解决这一问题。
【输入文件】()第一行只有一个数据n(n<=100),表示有n层礼物,以下有n行数据,分别表示第1-n层礼物的状态,每行至少由一个数据构成,且第一个数据表示该礼物的价值,后面的数据表示它与哪些层的礼物相连,如果每行只有一个数据则说明这层礼物没有与下层礼物相连,每个数的大小均不超过10000。
noip初赛c语言试题及答案1. 选择题1.1 以下哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. intD. _variable1.2 正确答案是 D。
变量名可以以字母或下划线开头,不能以数字开头,也不能是C语言的关键字。
1.3 以下哪个选项是C语言中合法的整型常量?A. 0x1AB. 0123C. 1.2E3D. 0b10101.4 正确答案是 A。
0x1A 是十六进制表示的整数,0123 是八进制表示的整数,1.2E3 是浮点数,0b1010 是二进制表示的整数,但不是合法的C语言常量。
1.5 以下哪个选项是C语言中合法的字符串常量?A. "Hello, World!"B. 'Hello, World!'C. "HelloD. "Hello\"1.6 正确答案是 A。
"Hello, World!" 是合法的字符串常量,'Hello, World!' 是字符常量,"Hello 是不完整的字符串常量,"Hello\" 是非法的字符串常量,因为反斜杠后面没有字符。
2. 填空题2.1 以下C语言代码中,变量a的值是多少?```cint a = 5;printf("%d", a);```2.2 答案是 5。
变量a被初始化为5,然后通过printf函数输出。
2.3 以下C语言代码中,变量b的值是多少?```cint b = 10;b = b + 5;printf("%d", b);```2.4 答案是 15。
变量b被初始化为10,然后增加5,最后输出15。
3. 编程题3.1 编写一个C语言程序,计算并输出100以内所有偶数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum);return 0;}```3.2 程序的输出是:Sum of even numbers from 1 to 100 is: 2550。
初赛模拟测试题(二)一、选择题:每题1.5分。
共30分1、利用可以将耳机、笔记本电脑、冰箱等毫不相关的产品紧密结合在一起。
A.多媒体技术 B. 智能技术C、蓝牙技术D. 多功能模块E、多操作系统2、求X=+1001001的反码是:。
A、[X]反=11001001B、[X]反=0110110C、[X]反= 01001001D、[X]反=1110011E、以上均不对3、电子邮箱地址中的符号“@”表示的含义是:A、连B、包括C、在D、到E、属4、深度为7层的的二叉树至多有多少个结点:A、128B、64C、148D、127E、2555、二进制数(1101111110)2转换成十进制数是。
A、289B、589C、450D、894E、8906、计算机中的队列,是一种特殊的线性表,用于存放数据,它的结构特点是:。
A、先进先出B、后进先出C、先进后出D、中间先出E、以上均不正确7、著名网站“中文雅虎”()的创建人之一是美藉华裔人士:A、李泽楷B、杨振宁C、杨致远D、霍震霆E、比尔盖芡8、二进制数和程序存储控制为基础的计算机结构是由提出。
A、冯.诺依曼B、图灵C、帕斯卡D、西蒙9、微型计算机在工作中从未进行存盘操作,突然电源中断,则计算机全部丢失。
A、ROM和RAM中的数据B、ROM中的数据C、硬盘中的数据D、RAM中的数据E、以上都不对10、在Windows98操作中,如果某个菜单显得颜色暗淡,则表示A、只要双击,就能选中B、必须连击两次才能选中C、必须连续击三次,才能选中D、单击选中后,还会出现一个方框要求操作者进一步输入信息E、在当前情况下,这项选择没有意义的,选中它不会有任何反应。
11、不是程序设计中的三种基本控制结构的是:A、顺序结构B、递归结构C、分支结构D、循环结构12、下面不属于操作系统的软件是:。
A、OFFICE2000B、NetwareC、Dos6.22D、WindowsXPE、UNIX13、以下有关计算机病毒的描述错误的是。
题目一览
1.这也叫破译?(crack)
【题目描述】
NOIP吧是个很和谐的吧,一直为了OI事业而奋斗。
但是,由于吧的日益壮大,各种矛盾还是避免不了。
这两天,传说中的NOIP吧官方群群主接到一封神秘而好笑的信。
神秘在于信的表面有两个特别大的字——神秘(⊙﹏⊙b汗);好笑在于信的开头说,你一定猜不出这封信源自何处,结尾处署名CCF(⊙﹏⊙b汗)。
言归正传,CCF的信让老练的群主大吃一惊,觉得也没有招惹过CCF啊。
信中说这封信的内容加密过了,你需要完成这封信上的任务,完成之后内容就会自然的显现了(这也叫破译?⊙﹏⊙b汗)。
群主觉得这等小事何足挂齿,只是最近ACM那边很多事啊,所以交给你了。
(什么?你要推脱?告诉你,群主是个愤青,impossible!!!)
信中给了n 个单词,每个单词都由小写字母构成。
信的后面给了一个字母表,字母表如下:
a b c d e f g h i j k l m n o p q r s t u v w x y z
4 2
5
6 1 4 5 6
7 2 3 4
8
9 3 1 2 6 8 9 2 6 3 2 5 7
这些字母对应一个数字,暂且称作:权值。
一个单词的权值定义为单词所含的字母的权值之和。
你的任务是按权值降序(从大到小),(若权值相等,按字符串排序。
注:两个字符串先输出长度大的,长度相同输出字典序大的,完全相同则直接输出)输出前m(1<=m<=n)个单词和单词的权值。
【输入格式】
输入文件crack.in包含n+1行;
第一行是整数n,m,表示单词的个数和所需输出的单词的个数;
第2~n+1行,每行一个单词。
【输出格式】
输出文件crack.out包含m行。
第1~m行,每行一个单词和一个权值,单词和权值之间用一个空格隔开。
【输入样例】
10 10
noip
noi
ceoi
ctsc
apoi
usaco nocow
vijos
tyvj
【输出样例】ctsc 27 vijos 26 nocow 23 crack 23 usaco 22 tyvj 22 noip 20 noi 19 ceoi 16 apoi 15
【数据范围】
40%的数据满足:1<=n<=5000
80%的数据满足:1<=n<=20000
100%的数据满足:1<=n<=50000
[提交程序]
2、联络(contact)
【题目描述】
在成功破译了CCF的来信之后,NOIP群决定迎战CCF,但是现在面临一个问题,由于NOIP群的各位成员不在一起,所以现在要开始联系成员。
在我们伟大的NOIP群里已经公示了CCF的来信,一些经常活动的成员得到消息并且已经联系到了部分成员,但是我们是一个组织,不能单独行动,因此必须要听从群主的号令,于是,必须所有成员都要能够直接或间接联系到群主才可以。
为了保密,此次行动不采用网络方式联系,我们有一个只属于群内成员的特殊联系方式,这种方式最大的优点是保密功能极为强大,但是费用也不低,由于我们的经费有限,为了能留出更多的经费前往CCF,我们要在联系过程中尽量节省费用。
你的任务就是编程计算出联系到所有成员的最少的费用以及得到最少费用的方式。
【输入格式】
第一行一个数n,代表一共要联系到的成员有n个,接下来一个n+1行有一个(n+1)*(n+1)的矩阵,第i+1行第j个数代表第i个人与第j个人联系的费用(群主编号为1),然后一个数m,接下来m行,每行两个数i和j,代表第i个人和第j个人已经相互联系到(数据保证没有环)。
【输出格式】
第一行一个数z,代表最小费用,接下来若干行,每行两个数x和y,代表要第x个人与第y个人相联系(按顺序输出)。
【样例输入】
4
0 1 2 3 7
1 0 4 6 10
2 4 0 5 9
3 6 5 0 8
7 10 9 8 0
2
4 5
2 5
【样例输出】
3
1 2
1 3
【数据范围】
对于40%的数据m<n<=500
对于100%的数据m<n<=1000
数据保证输出不超过231-1。
[提交程序]
3、冲锋(charge)
【题目描述】
联络完毕的noip群战士们,终于等到了集结的号角。
他们蜂拥而上,前往与CCF交锋的战场。
神龟已经准备好了一辆通往战场的列车,按照他的计划,这个列车将能容纳最多C个战士,当然他希望这C个战士总战斗力最强。
不幸的是,由于组织者没有进行合理的秩序安排,战士们在通往战场的列车前挤成了一个大堆;由于时间和空间关系,神龟已经无法对战士按照战斗力重新列队,只能从这一堆人中靠前的挑选战士。
我们可以将noip群战士们挤成的一个堆抽象成一个树的模型;树的根就是列车。
一个战士可以进入列车,当且仅当他到列车上的路径中的战士已经全部进入了列车。
当然,神龟已经在列车上等待大家了(我们可以认为他,也就是树根,是0号节点),他可是拥有4千万战斗力的勇士呢。
现在请你帮神龟计算,他最多可以带上多少战斗力的勇士。
【输入格式】
第一行包括两个数n,C,分别代表战士的总人数和列车上能容纳的战士数。
第2~n+1行每行描述了一个战士,分别代表该战士之前的战士(树中的父节点)的编号xi,和这个战士的战斗力wi。
【输出格式】
只有一行,列车最多可以带的勇士的战斗力之和。
【输入样例】
7 5
2 2
0 1
0 4
2 1
7 1
7 6
2 2
【输出样例】
40000013
【数据范围】
对于20%的数据,1<=n,c<=50;
对于70%的数据,1<=n,c<=500;
对于全部数据,1<=n<=10000,1<=c<=100,0<=xi<=n,0<=wi<=500。
提示:对于已经在车上的神龟,他的战斗力是常量40000000并且不在数据中出现。
[提交程序]
4、开灯关灯(switch)
【题目描述】
与CCF大战后,我们取得了应有的胜利,于是大家决定好好玩玩。
这时,不知谁拿出了一个游戏,游戏规则如下:
在4*4的16间房间里每个房间有一盏灯,这些房间共有12个开关(如下表一,开关用¤表示),为了方便起见,开关号与房间号一致。
每个开关控制若干盏灯(控制情况见下面表三),开关动作一次,相应被控制的灯状态取反一次,即亮的变暗,暗的变亮(0表示暗,1表示亮)。
用四位16进制数码表示一个状态(如表二$E3D7)。
现在用$0660表示目标状态,要求找到一条从任意状态到目标状态的最佳路径。
用十六进制表示房间开关状态的具体方法是:
1、把每一行的状态数字(如表二中第一行是1110)看做4位二进制数字。
2、将这个数字转换为十六进制(如表二第一行1110转换的结果为E)。
3、从上到下转换结果连起来,就是结果(如表二是$E3D7)。
表一(开关情况)
(初始状态$E3D7)
表三(对照表,左侧为开关号,右侧为控制的房间号)
(大战结束了,怎么来了这么个东西?刚才谁拿出来的?不想让我们休息了?我们战胜了CCF,难道要输在自己手里?不行,那怎么办?做!!!)
【输入格式】
第一行为一个整数N,表示有下面有N种初始状态,接下来的N行,每一行一个4位十六进制数,表示一种初始状态。
【输出格式】
每一行分别输出对应输入状态达到目标状态所按开关的顺序,开关的编号为十六进制表示,也就是说开关10用A,开关11用B,开关12用C,开关14用E,开关15用F表示,如结果为2CF,表示开关序列为2,12,15,开关的顺序按字典顺序输出。
(存在不能到达的情况)
【样例输入】
1
246B
【样例输出】
ACEF
【数据范围】
对于100% 的数据N<=5000。