请C语言高手帮我写个计算机程序
来源:学生作业帮 编辑:搜狗做题网作业帮 分类:综合作业 时间:2024/06/04 20:34:00
请C语言高手帮我写个计算机程序
但逻辑性很强,希望您能看懂,如有疑问请联系我,
有n列数:
第一列数为:2,4,6,8...2K (2K
但逻辑性很强,希望您能看懂,如有疑问请联系我,
有n列数:
第一列数为:2,4,6,8...2K (2K
很有意思的问题.
改进了一下java代码,对於10000000也是能处理到了.楼主可以自己将以下Java代码转化为C代码.相信并不是很难,因为只有基本的数据类型和循环.然後自己换max和row的值验证.
int max = 10000000;
int row = 10000;
boolean[] seen=new boolean[max+1];
for (int i=2;i<=max;i+=2){
seen[i]=true;
}
int w = 0;
for (int i=2;i<=(row);i++){
int self_count = 0;
for (int j=(2*i-1);j<=max;j+=(2*i-1)){
self_count++;
if(seen[j]) {
w++;
}
else {
seen[j]=true;
}
}
w += self_count;
System.out.println("w"+(i-1)+": "+w);
}
改进了一下java代码,对於10000000也是能处理到了.楼主可以自己将以下Java代码转化为C代码.相信并不是很难,因为只有基本的数据类型和循环.然後自己换max和row的值验证.
int max = 10000000;
int row = 10000;
boolean[] seen=new boolean[max+1];
for (int i=2;i<=max;i+=2){
seen[i]=true;
}
int w = 0;
for (int i=2;i<=(row);i++){
int self_count = 0;
for (int j=(2*i-1);j<=max;j+=(2*i-1)){
self_count++;
if(seen[j]) {
w++;
}
else {
seen[j]=true;
}
}
w += self_count;
System.out.println("w"+(i-1)+": "+w);
}