大一C++语言编程题,求大神帮忙,就用大一的知识

第一题:有下列规则:
0*9+1=1 1*9+2=11 12*9+3=111 123*9+4=1111 1234*9+5=11111 12345*9+6=111111123456*9+7=1111111 1234567*9+8=11111111 12345678*9+9=111111111 编写程序:请读入1个正整数 n(1=<n<=9)寻找上式的运算规律,并输出前n行式子。 第二题:形如2n-1的素数称为梅森尼数(Mersenne Prime)。例如22-1=3、23-1=7都是梅森尼数。1722年,双目失明的瑞士数学大师欧拉证明了231-1=2147483647是一个素数,堪称当时世界上“以知最大素数”的一个记录。试求出指数n<20的所有梅森尼数。(答案共7个)
第三题:
一个整数由n个1组成,能被2009整除,问n至少为多大?
提示:用简单的while循环即可完成,答案是210,即由210个1组成的整数能被2009整除,不要求你把这个数打印出来,打印出1的个数就行啦!

第一题:
前面就你自己写啊

main()
{
int n,i,sum=0;
cin>>n;
for(int j=0;j<n;j++)
{
for(i=0;i<j;i++)
{
sum=(i*10+i)*9+(i+1);
cout<<i*10+i<<"*9+"<<i+1<<"="<<sum<<endl;
}
}
get(cin);
}

这个我没有运行,应该是对的,思路就是这样

第二题

你可以先找出20以内的素数,并保存在一个数组中,也可以用枚举列出来,再去判断,给第个一个真实的值,就那个数吧,有点不清啊,再用上面的式子(2^2-1=3,(2^N-1=i)再去求这个i是不是素数,其实你还可以将求素数的方法做成一个函数,这样有利于代码的使用。思就是这样。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-12-06
long long Test=1111;int n=4;
while(Test%2009)
{n++;
Test=Test*10+1;
}
printf("%d",n);