c语言训练题

如何判断一个素数?100~200之间的素数怎么判断

#include<stdio.h>
int main()
{
	int i;
	int a;
	int b;
	printf(" Please input: ");
	scanf("%d",&i);
	for(a=2;a<i;a++)
	{
		b = i % a;
		if(b == 0)
		{
			printf("%d is not prime \n",i)
			break:
		}
	}
	if(b != 0)
	printf(" %d is prime \n",i);
	return 0;
}

c语言训练题

最小公倍数与最大公约数

#include <stdio.h>
int main()
{
    int x,y,t,i,j,k;
    printf("please input: ");
    scanf("%d,%d",&x,&y);
    if(x<y)
    {
        t=x;
        x=y;
        y=t;
    }
    if(x>y)
    {
        i=x%y;
        if(0==i)
        {
            printf("最小公倍数是:%d最大公约数:%d\n",x,y);
        }        
        j=x%i;
        if(0==j)
        {
            printf("最小公倍数是:%d最大公约数:%d\n",(x*y)/j,j);
        }
        k=x%j;
        {
            printf("最小公倍数是:%d最大公约数:%d\n",(x*y)/k,k);
        }

    } 

    if(x==y)
    {        
        printf("最小公倍数是:%d最大公约数:%d\n",x,y);
    }

    return 0;

}

三位数整数 逆序输出

#include <stdio.h>
int main()
{
    int num1,a,b,c,num2;
    printf("please input: ");
    scanf("%d",&num1);
    a=num1/100;
    b=(num1-a*100)/10;
    c=(num1-a*100-b*10);
    num2=c*100+b*10+a;
    printf("%03d\n",num2);
    return 0;
}

1~100之间的和

#include <stdio.h>
int main()
{
    int sum=0,i;
    for(i=1;i<=100;i++)
    {
    sum+=i;
    }
    printf("sum=%d\n",sum);

    return 0;
}

200~300之间的不能被三整除的数 每五个输出一行

#include <stdio.h>
int main()
{
    int i,j=0;
    for(i=200;i<=300;i++)
    {
        if(0!=(i%3))
        {
         if(5==j )
         {
         printf("\n");
         j=0;
         }
         printf("%d ",i);
         j=j+1;
        }
        
    }
}

c语言训练题

编程实现,统计1~n有多少个9

#include <stdio.h>
int main()
{
    int i=0;
    int j=0;
    int n=0;
    int temp=0;
    int count=0;

    printf("请输入n:");
    scanf("%d",&n);

    for(i=1;i<=n;i++)
    {
        temp=i;
        while(temp)
        {
            j = temp % 10;
            if(j == 9)
            {
                count++;
            }

            temp = temp / 10;
        }
    }
    
    printf("在1-%d中,有%d个9 \n",n,count);

    return 0;

输入一个整数a,再输入两个整数p1,p2(p1,p2<32),输出该整数的二进制表示方法中从右端开始的p1到p2位.

#include <stdio.h>

void main()
{
    int a,x;
    int p1,p2;
    printf("Input: ");
    scanf("%d%d%d",&a,&p1,&p2);
    a=a>>p1;
    x=p2-p1;
    while(x>0)
    {
        if(a&1)
            printf("1");
        else
            printf("0");
        x--;
        a=a>>1;
    }
    printf("\n");
}