字符串中找出连续最长的数字串,n个数里出现次数大于等于n/2的数

问答题

问答题1:以下代码输出的是?

#include <stdio.h>
int main(){
   
	char a[10] = {
    '1','2','3','4','5',\
		'6','7','8','9',0};
	int i = 8;
	char* p = a + i;
	printf("%s\n", p - 3);

	return 0;
}

提示:这道题靠的是字符串结尾的结束符,如果把左后一个字符 0换成'0',那么结果是未定义的,因为这并不是一个完整的字符串,一个完整的字符串后面一定要有一个反斜杠0表示字符串的结束.数字0也可以代表'\0'

问答题2:当一个类对象的生命周期结束后,关于调用析构函数的描述正确的是:

(A) 如果派生类没有定义析构函数,则只调用基类的析构函数
(B) 如果基类没有定义析构函数,则只调用派生类的析构函数
(C) 先调用派生类的析构函数,后调用基类的析构函数
(D) 先调用基类的析构函数,后调用派生类的析构函数

提示:析构函数就算没有定义,也会调用编译器默认的析构函数,析构函数和构造函数正好相反,首先构造基类对象,然后构造派生类对象,所以析构函数,先调用派生类的析构,再调用基类的析构函数.

问答题3在函数中如何返回两个参数
c语言中可以利用结构体,数组,两个指针,或者两个全局变量,但是在 c++ 中是可以利用花括号{}直接返回两个参数的

问答题4:下面代码输出啥?

int main(){
   
	vector<int>array;
	array.push_back(100);
	array.push_back(300);
	array.push_back(300);
	array.push_back(300);
	array.push_back(300);
	array.push_back(500);
	vector<int>::iterator itor;
	for (itor = array.begin(); itor != array.end(); itor++{
   
		if (*itor == 300){
   
			itor = array.erase(itor);
		}
	
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序猿的温柔香

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值