分页: 1 / 2
怎么翻屏啊???????????
发表于 : 2010-03-22 16:17
由 wshn13
Re: 怎么翻屏啊???????????
发表于 : 2010-03-22 16:28
由 eexpress
less more?
Re: 怎么翻屏啊???????????
发表于 : 2010-03-22 16:44
由 wshn13
具体啊 谁知道啊
Re: 怎么翻屏啊???????????
发表于 : 2010-03-22 16:45
由 JiangHui
重定向或者管道啊
Re: 怎么翻屏啊???????????
发表于 : 2010-03-22 17:54
由 wshn13
楼上详细一点啊
Re: 怎么翻屏啊???????????
发表于 : 2010-03-22 19:41
由 leeaman
这个输出一定行数暂停应该不是什么大问题吧?
Re: 怎么翻屏啊???????????
发表于 : 2010-03-22 19:45
由 delectate
more
Re: 怎么翻屏啊???????????
发表于 : 2010-03-22 20:50
由 dshbusiness
例如你的程序名字叫做abc
那么这么执行:
$abc > abc.result
或者
$abc | less
或者
$abc | more
Re: 怎么翻屏啊???????????
发表于 : 2010-03-22 20:50
由 dshbusiness
对了,能不能把你计算质数的源代码贴上来看看?
Re: 怎么翻屏啊???????????
发表于 : 2010-03-22 21:41
由 wshn13
我的源代码 大家凑合看 我是新手 哈哈
代码: 全选
#include<stdio.h>
#include<math.h>
void main()
{
int a,c,i,k,b=1;
float f=0,g;
printf("This is the program for prime number\n");
printf("-----------------------------------------------------------------\n");
printf("Please input the number \n");
scanf("%d",&a);
printf("-2-");
for(i=3;i<=a;i++)
{
f=sqrt(i);
c=0;
for(k=2;k<=f;k++)
{
c=!(i%k)+c;
}
if(c==0)
{
printf("-%d-",i);
b++;
}
}
g=(float)b/a;
printf("\nThe total is %d !\nThe rate of prime number is %8.4f %\n",b,100*g);
printf("-----------------------------------------------------------------\n");
}
Re: 怎么翻屏啊???????????
发表于 : 2010-03-22 21:48
由 wshn13
就是说计算的结果有1000行的话 我只能看到最后的20行左右 怎么看到中间的行啊 在控制台下
Re: 怎么翻屏啊???????????
发表于 : 2010-03-23 10:06
由 wshn13
有人回答吗 啊啊啊啊啊
Re: 怎么翻屏啊???????????
发表于 : 2010-03-23 10:08
由 JiangHui
给了关键字被无视了
8楼回答了也被无视了
Re: 怎么翻屏啊???????????
发表于 : 2010-03-23 10:11
由 maonx
用shift+pgup,pgdn
Re: 怎么翻屏啊???????????
发表于 : 2010-03-23 13:24
由 dshbusiness
wshn13 写了:有人回答吗 啊啊啊啊啊
我在8楼回答你了啊……
另外你的算法太弱了……再想想好的吧
1 例如……有必要从2开始一直除到根号N吗?除了2以外所有的质数都是奇数。
2 初等数论已经证明过,所有的合数都可以表示为若干质数的积,那么是不是建立一张列表来保存已经算出来的质数,然后用已经得到的质数去验证新的数字是不是质数更快呢?
3 如果想要结果很多,那么可以考虑使用unsigned long long int来代替int,这样计算范围会大很多
4 可以再考虑考虑空间和时间的平衡问题,如果自行设计数据类型,那么程序可以扩展到计算任意大小的质数。
以上是算法方面的
5 不要使用void main,使用int main
6 for循环中不要使用整形和浮点型比较……因为不知道哪天结果会变
7 用浮点型的来保存开方值是没有必要的,用整形就可以了