#include<stdio.h>
main()//实现2-100内素数,每五个数一行输出
{ int i,n,m;
for(i=2;i<=100;i++)
{
for(n=2;n<i;n++)
{
if(i%n==0)break;
}//循环判断是否有因子,如果有的话会跳出,如果没有的话,最后也会跳出;
if(i==n)//最后没有因子的话,最后i和n会相等;
{
m++;//计数
if(m%5==0)
{
printf("\n");
}//判断有没有五个元素
printf("%3d",i); //输出素数i
}
}
}
#include<stdio.h>
main()//实现2-100内素数,每五个数一行输出
{ int i,n,m;
for(i=2;i<=100;i++)
{
for(n=2;n<i;n++)
{
if(i%n!=0)continue; //这样会使得程序无限循环,因为
}//循环判断是否有因子,如果有的话会跳出,如果没有的话,最后也会跳出;
if(i==n)//最后没有因子的话,最后i和n会相等;
{
m++;//计数
if(m%5==0)
{
printf("\n");
}//判断有没有五个元素
printf("%3d",i); //输出素数i
}
}
}
#include<stdio.h>
main()//实现一个图案
{
int i,j;
char ch='A';
for(i=1;i<=4;i++)
{
for(j=0;j<i;j++)
{
printf("%c",ch);
}
printf("\n");
}
}
continue与break的区别:continue结束的只是本次循环,不执行continue后面的语句;而break结束的是整个循环;
组合情况问题
#include<stdio.h>
main()
{
int i,j,k,m;
printf("请输入5以下的数字");
scanf("%d",&m);
for(i=0;i<=40;i++)
for(j=0;j<=20;j++)
for(k=0;k<=8;k++)
{
if(0.1*i+0.2*j+0.5*k==m)
printf("%d,%d,%d\n",i,j,k);
}