C/C++经典例题(一)素数

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、求素数问题?

1. 问题:**输出100->200之间的素数的个数,以及所有的素数。


解答:

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

int isPrime(int n){
    
    		//判断素数
    for(int i=2;i<=sqrt(n);i++){
    
    
        if(n%i==0)
            return 0;
    }
    return 1;
}

int main()
{
    
    
    int count=0,a[100],k=0;
   for(int i=100;i<201;i++){
    
    		//求100到200之间素数
       if(isPrime(i)){
    
    
        count++;
        a[k++]=i;
       }
   }
   printf("%d",count);		//输出素数总个数
   printf("\n");
   
   //每五个输出一行
   int cc=0;
   for(int n=0;n<k;n++){
    
    	
     	cc++;
       printf("%d\t",a[n]);		// "%d\t"每输出一个数,回车
       if(cc%5==0){
    
    
       	 printf("\n");
	   }
   }
}

输出样式:
在这里插入图片描述

分解:

素数:一个整数除了1和自身之外,不能被其他整数整除,即可判断为素数。

int isPrime(int n){
    
    		//判断素数
    for(int i=2;i<=sqrt(n);i++){
    
    
        if(n%i==0)
            return 0;
    }
    return 1;
}

关于printf:

#include<stdio.h>
int main()
{
    
    
	printf("%d",1);//输出一个整数
	
	printf("\n");   //输出换行
	
	printf("%d%d\n",3,5);  //输出两个整数
	
	printf("%f",2.4);       //输出精度小数
	
	printf("\n");   //输出换行
	
	printf("%d ",1);    //输出各整数间有空格
	printf("%d ",2);
	printf("%d ",3);
	
	printf("\n");
	                        //"/t": Tab(\t,ascii码:9)是制表符,
                        	// 作用是预留8个字符的显示宽度,用于对齐。
	printf("%d\t",3);       
	printf("%d\t",3);
	printf("%d\t",3);
}

猜你喜欢

转载自blog.csdn.net/JingYan_Chan/article/details/122378092