C基础0611作业

练习一

输入一个数,判断是否是完美数

完美数:正序和逆序的结果一致

#include 

int main(int argc, const char *argv[])
{
	int num;
	int sum = 0;
	printf("Please enter an integer  ");
	scanf("%d", &num);
	int x = num;
	while(num != 0)
	{
		sum = sum*10 + num%10;
		num /= 10;
	}
	if(sum == x)
		printf("That's a pefect number\n");
	else
		printf("It's not a pefect number\n");
	return 0;
}

练习二

   *

  **

 ***

****

#include 

int main(int argc, const char *argv[])
{
	int i, j;
	for(i=1; i<=4; i++)
	{
		for(j=1; j<=4-i; j++)
		{
			printf(" ");
		}
		for(j=1; j<=i; j++)
		{
			printf("*");
		}
		putchar(10);
	}
	return 0;
}

练习三

****

 ***

  **

   *

#include 

int main(int argc, const char *argv[])
{
	int i, j;
	for(i=0; i<=3; i++)
	{
		for(j=1; j<=i; j++)
		{
			printf(" ");
		}
		for(j=1; j<=4-i; j++)
		{
			printf("*");
		}
		putchar(10);
	}
	return 0;
}

练习四

输入一个数,计算最大公约数,以及最小公倍数

#include 

int main(int argc, const char *argv[])
{
	int num1, num2;
	int min, max;
	int i, j;
	printf("Please input two integer  ");
	scanf("%d %d", &num1, &num2);
	if(num1 < num2)
	{
		min = num1;
		max = num2;
	}
	else
	{
		min = num2;
		max = num1;
	}
	for(i=min; i>0; i--)
	{
		if(num1%i == 0 && num2%i == 0)
			break;
	}
	for(j=max; ; j++)
	{
		if(j%num1 == 0 && j%num2 == 0)
			break;
	}
	printf("The greatest common factor is %d\n", i);
	printf("The lowest common multiple is %d\n", j);

	return 0;
}

练习五

输入一个数,判断是否是素数

素数:只能被1和本身整除

#include 
#include 

int main(int argc, const char *argv[])
{
	int i, num;
    int count = 0;
	printf("Please input a integer  ");
	scanf("%d", &num);
	for(i=2; i<=sqrt(num); i++)
	{
		if(num%i == 0)
		{
			printf("This number is not prime.\n");
            count ++;
			break;
		}
	}
    if(count == 0)
	printf("This number is a prime number.\n");
	return 0;
}

你可能感兴趣的:(c语言,算法,开发语言)