第11届蓝桥杯C++青少组中/高级组选拔赛真题
第 8 题 问答题(水题)
自从小蓝学会编程之后,他酷爱用编程的方式写字母。你能帮助他写出字母"Y”吗?
输入
整数n(1<n<50)。
输出
输出高度为2n-1行的大写字母"Y”
提示
第一行第一颗*左侧无多余空格,每行最后一颗*后无多余空格。
输入、输出要求如图所示
第13届蓝桥杯C++青少组中/高级组选拔赛2022年1月22日真题
编程题
第 1 题 问答题
比大小
题目描述:
给出两个不同的整数,输出两个整数中较大的那个。
输入描述:
输入两个不同的整数(-1000<整数<1000),两个整数之间以一个空格隔开。
输出描述:
将两个整数中较大的那个输出。
第15届蓝桥杯C++青少组中级组选拔赛(STEMA)2024年3月10日真题(整套选择)
题目总数:11 总分数:400
一、单选题
第 1 题 单选题
(110010)2+(c3)16的结果是( )。
(240)
(11110101)
(366)
(f6)
第15届蓝桥杯C++青少组中/高级组选拔赛(STEMA)2024年1月28日真题(整套选择)
答案:三目运算.cpp
第 3 题 单选题
定义int i = 0, a = 10; 执行表达式a = (i <= 0 ? 1 : 2) 后,a 的值是( )。
A,1
B,2
C,10
D,随机值
解析:
(i <= 0 ? 1 : 2)
转换成 if 语句:
if(i<=0)
a=1;
else
a=2;
第四题 十进制数 22.5625 转换成十六进制数是( )。
A. 16.7
B. 16.8
C. 16.9
D. 17.1
答案:C
解析:分为两部分
整数部分:
十进制22转换成十六进制使用如下短除法,结果为16。
小数部分:用乘法,乘到整数即可。
结合起来,就是16.9。
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/monster0075/article/details/136889798

解析:考察字符数组定义与赋值。
定义一个字符数组并且用一个字符串常量初始化它时,数组的大小应该足够包含字符串常量的所有字符,包括结尾的空字符(‘\0’)。
在此题中,有一点需要注意:双引号带着的是字符串,字符串hello带有5个字符,但由于C语言风格的字符串要以空字符(‘\0’)结尾,实际上是需要6个字符空间才能存储整个字符串(包括结尾的 ‘\0’)。
因此A选项错误,正确应该是char a[6]="hello";
C选项是单一的字符,不能用双引号。
D选项的初始化用了单引号,错误。
字符数组的定义示例如下:
(1)char a[10]={‘h’,‘e’,‘l’,‘l’,‘o’}; 表示定义一个字符数组,含有10个元素,前面五个元素分别赋值为字母h,字母e,字母l,字母l和字母o,后面的元素赋值为空值,即null。
(2)char a[10]=“hello”; 和(1)相同,要注意,这里的元素个数一定要在字符串长度的基础上加1。
(3)char a[]=“hello”; 这种写法是没有固定元素个数,单独写是错误的,但如果有初始化,程序就会自动根据字符数组的实际长度进行调整。