1.
#include <iostream>
using namespace std;
#define MOD 10007
#define MAX 1000001
int F[MAX];
int main()
{
int i, n;
cin >> n;
F[1] = 1;
F[2] = 1;
for (i = 3; i <= n; i++)
F[i] = (F[i - 1] + F[i - 2]) % MOD;
cout << F[n];
return 0;
}
蓝桥杯训练的一道题,如果不用#define 而是将MOD MAX 的数值直接写进main里会运行失败,用#define 则可以达成目的,why?
2.
对于长度为5位的一个01串,每一位都可能是0或1,一共有32种可能。请按从小到大的顺序输出这32种01串。(五种方式)
#include <iostream>
using namespace std;
int main()
{
int a,b,c,d,e;
for(a=0;a<2;++a)
for(b=0;b<2;++b)
for(c=0;c<2;++c)
for(d=0;d<2;++d)
for(e=0;e<2;++e)
cout<<a<<b<<c<<d<<e<<endl;
return 0;
}
同样是蓝桥杯训练的一道题,锦囊提示用五层循环,即以上方法,其他方式见链接 blog.csdn.net/u012110719/…