基础C++程序题的简单归纳Ⅱ

发布时间 2023-03-29 23:03:18作者: Mzhfy

基础C++程序题的简单归纳Ⅱ

1.冒泡排序

题目描述

上周三课的一个重要主题就是排序法在生活中的应用,朱老师要求每个学员把自己的近期所需要做的事一一列举写出来,并分别给它们的重要程度打分,分值越小说明重要程度越高。然后再把这些分值排列成序,按照重要程度挨个去完成。

输入格式

第一行为一个整数 n。
第二行包含 n 个整数,为待排序的数,每个整数的绝对值小于 10000。

输出格式

输出一行,按从小到大的顺序输出排序后的数列。

 

2.字母图形

题目描述

ABCDEFG

BABCDEF

CBABCDE

DCBABCD

EDCBABC

这是一个 5 行 7 列的图形,请找出这个图形的规律,并输出一个 n 行 m 列的图形。

输入格式

输入一行,包含两个整数 n 和 m,分别表示你要输出的图形的行数的列数。

 

输出格式

输出 n 行,每个 m 个字符,为你的图形。

 

 

思路:

找到行与列的关系规律,运用ASCⅡ码相关知识和二维数组输出

 

 

3.字符串比较

题目描述

给定两个仅由大写字母或小写字母组成的字符串 (长度介于 1 到 10 之间),判断他们是否相等。但聪明的MX不满足只判断字符串相等与否,他想出了更为详细的划分规则,它们之间的关系是以下 4 中情况之一:

1:两个字符串长度不等。比如 Beijing 和 Hebei
2:两个字符串不仅长度相等,而且相应位置上的字符完全一致 (区分大小写),比如 Beijing 和 Beijing
3:两个字符串长度相等,相应位置上的字符仅在不区分大小写的前提下才能达到完全一致(也就是说,它并不满足情况 2)。比如 beijing 和 BEIjing
4:两个字符串长度相等,但是即使是不区分大小写也不能使这两个字符串一致。比如 Beijing 和 Nanjing
编程判断输入的两个字符串之间的关系属于这四类中的哪一类,给出所属的类的编号。

 输入格式

包括两行,每行都是一个字符串

输出格式

仅有一个数字,表明这两个字符串的关系编号

 

思路:

将四种情况分为两大类——字符串长度相等和长度不等,由于长度不等只有一种情况,所以将其放最后,长度相等中再分为三类依次讨论,运用字符串数组逐个比较。

 

4.嵌套循环

求出所有各位数的立方和等于本身的三位数,例如 153=13+53+33 

输入格式

 

 

输出格式

按从小到大的顺序输出满足条件的三位十进制数,每个数占一行

 

 

5.查找数字

题目描述

同学们拿着序号牌站成一列等待老师点名考试,拥有相同号码的同学为一组共同进行考试。由于仓促,队伍并没有按序站好。现在想知道,老师接下来报到的序号在这个队列中第一次出现是第几个人。

 输入格式

第一行包含一个整数 n。

第二行包含 n 个非负整数,为给定的数列,数列中的每个数都不大于 10000。

第三行包含一个整数 a,为待查找的数。

输出格式

如果 a 在数列中出现了,输出它第一次出现的位置 (位置从 1 开始编号),否则输出-1.

需要考虑数列个数为1的情况以及位置从1开始编号,输出应该为“i+1”