2020-02-16

今天的作业有些多,但都不难:
1 输出9*9口诀。
2 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月
 后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
3 判断101-200之间有多少个素数,并输出所有素数。
4 输入两个正整数m和n,求其最大公约数.
5 求1+2!+3!+…+10!的和
代码如下:
作业1:

#include<stdio.h>
int main()//作业1:输出9*9口诀
{
	int i=0,j=0;
	printf("9*9乘法表:\n");
	for(i = 1; i <= 9; i++)//控制行数
		for(j = 1 ; j <= i ; j++)//控制列数
		{
			printf("%d*%d=%-2d ", j , i , i*j);
			if(i == j)
			{
				printf("\n");//控制换行
			}
		}
		return 0;
}

作业2:

#include<stdio.h>
int fib(int n)//作业2:斐波那契数列
{
	int a = 1, b = 1, c = 1;
	for(int i = 3 ; i <= n ; i++)
	{
		c = a + b;
		b = a ;
		a = c ;
	}
	return c ;
}
int main()
{
	int n = 0;
	printf("请输入要查询的月份:");
	scanf("%d",&n);
	printf("%d月的兔子数为:%d\n ",n,fib(n));
}

作业3:

#include<stdio.h>
int main()//作业3:判断101~200之间有多少个素数,并输出所有素数
{
	int i = 0 , j = 0 , tag = 0 ,r = 0;//i:被除数; j:除数; tag:素数的个数; r:余数;
	printf("101~200之间的素数有:\n");
	for(i = 101 ; i <= 200 ; i ++)//控制被除数从101~200
	{
		for(j = 2 ; j <= i/2 ; j ++)//控制除数从2~i/2
		{
			r = i % j ;
			if(r == 0)//若余数为0,则说明该数能被j整除,则该数不是素数
			{
				break;
			}
			else if(j == i/2)
			{
				printf("%d ",i);
				tag ++;
			}
		}
	}
	printf("\n共有 %d 个素数\n ",tag);
}

作业4:

#include<stdio.h>
int gcd(int a,int b)//作业4:输入两个正整数m和n,求它们的最大公约数
{
	int r=a%b;
	while(r)
	{
		a=b;
		b=r;
		r=a%b;
	}
	return b;
}
int main()
{
	int a,b;//a,b为求最大公约数的两数
	printf("请输入两个数:");
	scanf("%d %d",&a,&b);
	b=gcd(a,b);
	printf("最大公约数:%d \n",b);
	return 0;
}

作业5:

#include<stdio.h>
int fac(int a)//作业5:求和:1+2!+3!+......+10!
{
	int i = 0;
	for(i = a-1 ; i > 0 ; i --)
	{
		a *= i;
	}
	return a;
}
int main()
{
	int j = 0,sum =0 ;
	for(j = 1; j <=10; j ++)
	{
		j = fac(j);
		sum += j;
	}
	printf("1+2!+3!+......+10!= %d\n",sum);
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值