一道有趣的签到题

Posted kkkek

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一道有趣的签到题相关的知识,希望对你有一定的参考价值。

 

题目链接

题目描述

写一个程序,使其能输出自己的源代码。

代码中必须至少包含十个可见字符。

输入格式

输入文件为空。

输出格式

你的源代码。

 


 

从来没想过还可以这么玩φ(゜▽゜*)?

 

看着别人的题解写了一份代码:

#include<bits/stdc++.h>
#define kk(x) #x
using namespace std;
char s[]=kk(int main()puts("#include<bits/stdc++.h>");puts("#define kk(x) #x");puts("using namespace std;");printf("char s[]=kk(");printf("%s",s);puts(");");puts(s););
int main()puts("#include<bits/stdc++.h>");puts("#define kk(x) #x");puts("using namespace std;");printf("char s[]=kk(");printf("%s",s);puts(");");puts(s);

 

然后了解了一个以前不知道的知识点:C++#号的使用

1,#     字符串化 

2,##   连接字符串

3,#@  字符化(据说gcc编译器不行,微软特有)

#include<cstdio>
#define k(x) #x
#define kk(x) num##x
int main()

    printf(k(=-=)"\n");
    int numy=7;
    int t=kk(y);
    char b;
    printf("%d",t);

/*
输出:
=-=
7
*/

 

在这道题用#代替引号可以避免引用引号的一些麻烦

 

以上是关于一道有趣的签到题的主要内容,如果未能解决你的问题,请参考以下文章

[位运算]签到题

XC1263 签到题(哇 ,写得我怀疑人生啊!!!@!@)

牛客,第二十届北京师范大学程序设计竞赛,签到题7题

牛客,第二十届北京师范大学程序设计竞赛,签到题7题

真假签到题(签到+打表)

2020-2021年度第二届全国大学生算法设计与编程挑战赛(春季赛)部分题题解