考考你的C/C++应用能力

 

考考你的C/C++应用能力 
题目:

#include <iostream.h>

/
int main(int argc, char* argv[])
{
        cout<<"风声雨声读书声声声入耳\n";
        return 0;
}
/
 

以上是一段完整的C/C++语言代码,可以实现在控制台输出文本:
风声雨声读书声声声入耳

要求:利用你学过的C/C++知识,不改变main函数,编程在控制台输出文本:
风声雨声读书声声声入耳
家事国事天下事事事关心
 
--------------------------------------------------------------------------------

方法一:编写类A,析构函数中输出“家事国事天下事事事关心\n”,然后定义该类的全局变量a。
#include <iostream.h>

class A
{
public:
~A()
{
cout<<"家事国事天下事事事关心\n";
}
};
A a;

/
int main(int argc, char* argv[])
{
cout<<"风声雨声读书声声声入耳\n";
return 0;
}
/
 


方法二:编写出口函数A,紧接着定义全局变量N,其值等于atexit(A)。
#include <iostream.h>

void A()
{
cout<<"家事国事天下事事事关心\n";
}
int N = atexit(A);

/
int main(int argc, char* argv[])
{
cout<<"风声雨声读书声声声入耳\n";
return 0;
}
/
  


方法三:利用宏命令,重新指定cout的意义。
#include <iostream.h>

#define cout cout<<"风声雨声读书声声声入耳\n家事国事天下事事事关心\n";if(0)cout

/
int main(int argc, char* argv[])
{
cout<<"风声雨声读书声声声入耳\n";
return 0;
}
/
 


方法四:利用宏命令,重新指定return的意义。
#include <iostream.h>

#define return cout<<"家事国事天下事事事关心\n";return

/
int main(int argc, char* argv[])
{
cout<<"风声雨声读书声声声入耳\n";
return 0;
}
/
  


方法五:利用宏命令,重新指定main的意义。(特别注意“\”的用法!)
#include <iostream.h>

#define main main(int argc, char* argv[])\
{\
cout<<"风声雨声读书声声声入耳\n家事国事天下事事事关心\n";\
return 0;\
}\
int not_used

/
int main(int argc, char* argv[])
{
cout<<"风声雨声读书声声声入耳\n";
return 0;
}
/
  


方法六:利用条件编译的宏命令,跳过旧版本的main函数,条件编译新的main函数。
#include <iostream.h>

#define A
#ifdef A
int main(int argc, char* argv[])
{
cout<<"风声雨声读书声声声入耳\n家事国事天下事事事关心\n";
return 0;
}
#else

/
int main(int argc, char* argv[])
{
cout<<"风声雨声读书声声声入耳\n";
return 0;
}
/

#endif
 


方法七:直接用/*...*/注释掉原来的main函数,更换main函数。(嘿嘿,够淫*荡吧!)
#include <iostream.h>

/*
/
int main(int argc, char* argv[])
{
cout<<"风声雨声读书声声声入耳\n";
return 0;
}
/
*/

int main(int argc, char* argv[])
{
cout<<"风声雨声读书声声声入耳\n家事国事天下事事事关心\n";
return 0;
}
  


方法八:重载运算符<<的实现方法,强制输出符合要求的文本!
#include <iostream.h>
#include <stdio.h>

void operator << (ostream& T, char* S)
{
printf("风声雨声读书声声声入耳\n家事国事天下事事事关心\n");
}

/
int main(int argc, char* argv[])
{
cout<<"风声雨声读书声声声入耳\n";
return 0;
}
/ 
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值