>第 6 章 循环语句>break和continue语句>习题

刘艳明 lonny_liu@hotmail.com
2009-04-08 00:46:23

#include<stdio.h>
int is_prime(int n)
{
	int i;
	for (i=2;i<n&&n%i!=0;i++)
		;
	if(i==n)
		return 1;
	else
		return 0;
}
int main(void)
{
	int i;
	for(i=0;i<=100;i++){
		if(is_prime(i))
			printf("%d\n",i);
	}
	return 0;
}


码匠 code_smith@sohu.com
2009-09-02 15:12:03

while中continue后只有一个动作
测试 条件表达式

for中continue后有两个动作
执行 expression 3;
测试 条件表达式


PQW 0216789abc@gmail.com
2009-12-13 03:48:42

#include <stdio.h>

int is_prime (int n)
{
    int i=2;
    for (;i<n;i++){
        if (n%i==0)
            return 0;
    }
    return 1;
}
int main (void)
{
    int i=1;
    for (;i<100;){
        i++;
        if (is_prime(i))
            printf ("%d ",i);
    }
    return 1;
}


Andy Ho sixand@gmail.com http://sixand.typepad.com/
2010-06-20 01:45:02

一开始,我打算就想复杂了,本来打算用一个更简单的判断来写,不行,一直卡在了for(i=2;i<n;i++){if(n%i==0)return 0;else return 1;}
上,所以搞得思路相当混乱。
只是后来再详细阅读一下老师给出的代码才发现是自己令得自己卡壳了。
[code]
#include <stdio.h>
int Is_Prime(int n);

int main(void)
{
	int i;
	for(i = 0 ; i <= 10000 ; i++)
	{
		if( Is_Prime(i) )
		{
		printf("%d \t ", i );
		}
	}
	return 1;
}

int Is_Prime(int n)
{
	int i = 0;
	for( i = 2 ; i <= n ; i ++ )
	{
		if(n % i == 0)
		{
			if(i == n)
			{
				return 1;
			}
			else return 0;
		}
	}
	return 0;
}

[/code]


刘金波 notreal@163.com
2010-10-22 16:39:00

int su(int a)
{
	int s;
	int b = ( a + 1 ) / 2;
	for(s=2;s<=b;s++) if( a % s == 0 ) return 0;
	return a;
}


newbie miniff@126.com
2010-12-20 22:13:00

#include <stdio.h>

int is_prime(int n)
{
        int i=2;
        for(i;i<(n/2+1);i++)
        {
                if(!(n%i))
                        return 0;
        }
        return 1;
}

int main()
{
        int i,j=0;
        for(i=1;i<=100;i++)
        {
                if(is_prime(i))
                {       j++;
                        printf("%d\t",i);
                }
                if(!(j%5)&&j)
                {
                        j=0;
                        printf("\n");
                }
        }
        if(j>0&&j<5)
                printf("\n");
        return 0;
}


xudonglee xudongleee@126.com
2011-01-19 20:12:51

宋老师说“其实没有必要从2一直检查到n-1,只要从2检查到⌊sqrt(n)⌋,如果全都不能整除就足以证明n是素数了,请读者想一想为什么”

是不是因为 n = ⌊sqrt(n)⌋ * ⌊sqrt(n)⌋,so 只要到⌊sqrt(n)⌋,则另外一个⌊sqrt(n)⌋也必然可以整除,从而判断出来?


江民 vipstepstep@163.com
2011-05-18 10:02:36

# include <stdio.h>
# include <math.h>

int is_prime(int n) {
	int i = 0;

	for(i = 2; sqrt(i) < sqrt(n); ++i) {
		if(!(n % i)) {
			if(n == i) {
				return 1;
			}
			else {
				return 0;
			}
		}
	}
}

int main(void) {
	int i = 0;

	for(i = 1; i <= 100; ++i) {
		if(is_prime(i)) {
			printf("%d\n", i);
		}
		
	}

	return 0;
}


wangzhengyi 15866883396@126.com
2011-10-08 21:42:40

这是我写的代码,仅供参考
#include<stdio.h>
int is_prime(int n);
void main(){
        int i;
        for(i=2;i<=100;i++){
        if(is_prime(i))
        {       printf("%d ",i);
}
}
}
int is_prime(int n){
        int i;
        for(i=2;i<n;i++)
        {
                if(n%i==0)
                {
                return 0;
                }
        }
        return 1;
}


ivon yifeng.ivon.wang@hotmail.com
2011-11-18 06:59:49

/*
06.4.1
求1-100之间的素数
*/

#include <stdio.h>

int main(void)
{
	int i ;
	int j ;

	for(i = 2; i < 100; i++)
	{
		for(j = 2; i % j != 0; j++) ;

		if(i == j)
		{
			printf("i=%d\n", i) ;
		}
	}	
	return 0 ;
}


ivon yifeng.ivon.wang@hotmail.com
2011-11-20 23:09:46

/*
06.5.1
打印的小九九
1	2	3	4	5	6	7	8	9
2	4	6	8	10	12	14	16	18
3	6	9	12	15	18	21	24	27
4	8	12	16	20	24	28	32	36
5	10	15	20	25	30	35	40	45
6	12	18	24	30	36	42	48	54
7	14	21	28	35	42	49	56	63
8	16	24	32	40	48	56	64	72
9	18	27	36	45	54	63	72	81

1	
2	4	
3	6	9	
4	8	12	16	
5	10	15	20	25	
6	12	18	24	30	36	
7	14	21	28	35	42	49	
8	16	24	32	40	48	56	64	
9	18	27	36	45	54	63	72	81
*/

#include <stdio.h>

int main(void)
{
	int i ;
	int j ;

	for(i = 1; i <= 9; i++)
	{
		for(j = 1; j <= 9; j++)
		{
		printf("%d\t", i*j) ;
		}
	
	printf("\n") ;
	}

	int x ;
	int y ;

	for(x = 1; x <= 9; x++)
	{
		for(y = 1; y <= x; y++)
		{
		printf("%d\t", x*y) ;
		}
	
	printf("\n") ;
	}
	return 0 ;

}


wangzhengyi 15866883396@126.com
2012-01-19 14:05:39

#include <stdio.h>
#include <stdlib.h>

int is_prime( int n)
{
	for(int i=2;i<n;i++){
		if(n%i==0){
			if(n==i)
				return 1;
			else
				return 0;
		}
	}
}

int main()
{
	int i;
	for(i=1;i<100;i++){
		if(is_prime(i)){
			printf("%d ",i);
		}
	}
	system("pause");
	return 0;
}


如果您有建设性意见,哪怕只是纠正一个错别字,也请不吝赐教,您留下的姓名和email将会出现在本书前言的致谢中。再次感谢您的宝贵意见!