【无标题】

文章包含一系列C语言编写的程序,分别用于实现以下功能:输出在给定范围内能被3或5整除的数;输出斐波那契数列的前20项;判断输入的数是否为素数;判断是否为完美数;以及在指定范围内找出所有素数和完美数。
摘要由CSDN通过智能技术生成

作业1∶输出从起始值到终止值之间,所有能被3或5整除的所有数,起始值和终止值由用户输入

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
	int start;//定义起始值
	int end;//定义终止值
	int n;//除数
	printf("请输入起始值:");
	scanf("%d",&start);
	printf("请输入终止值:");
	scanf("%d",&end);
	if(start>end){
		printf("无法运算");
	}else{
	for(n=start;n<=end;n++){
		if(n%3==0||n%5==0){
			printf("%d\t",n);
		}
	}
	}
	return 0;
}

运行结果:
在这里插入图片描述
作业2:输出斐波那契前20项的值
斐波那契数列:1 1 2 3 5 8 13。 。 。

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
	int arr[20]={1,1};//半初始化定义一个数组
	int i;
	for(i=2;i<=21;i++){
		arr[i]=arr[i-1]+arr[i-2];
		printf("%d\n",arr[i-2]);
	}
	return 0;
}

运行结果:
在这里插入图片描述
作业3:输入一个数,判断该数是否为素数(只能被1和其本身整除的数)

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
	int n;
	int i;//定义一个除数变量
	int count=0;//定义被除数整除的次数
	printf("请输入一个数字:");
	scanf("%d",&n);
	for(int i=1;i<=n;i++){
		if(n%i==0){
			count++;
		}
	}
	if(count>2){
		printf("该数不是素数\n");
	}else{
		printf("该数是素数\n");
	}
	return 0;
}

运行结果:
在这里插入图片描述
作业4∶输入一个数,判断该数是否为完美数(所有真因子之和等于其本身,例如:6=1+2+3)

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
	int n;//定义一个被除数
	int sum=0;//初始化和
	printf("请输入一个数:");
	scanf("%d",&n);
	for(int i=1;i<n;i++){
		if(n%i==0){
			sum+=i;
		}
	}
	if(sum==n){
		printf("该数是完美数\n");
	}else{
		printf("该数不是完美数\n");
	}
	return 0;
}

运行结果:
在这里插入图片描述
作业5:输出起始值到终止值之间所有的素数

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
	int n;
	int i;//定义一个除数变量
	int count=0;//定义被除数整除的次数
	int start;//定义初始值
	int end;//定义终止值
	printf("请输入初始值:");
	scanf("%d",&start);
	printf("请输入终止值:");
	scanf("%d",&end);
	if(start>end){
		printf("无法计算\n");
	}
	else{
		for(n=start;n<=end;n++){
			int count=0;//重置count
			for(i=1;i<=n;i++){
				if(n%i==0){
					count++;
				}
			}
			if(count==2){
				printf("%d\n",n);
			}
		}
	}
	return 0;
}

运行结果:
在这里插入图片描述
作业6:输出起始值到终止值之间所有的完美数

#include<stdio.h>
#include<string.h>
#include<stdlib.h>

int main(int argc, const char *argv[])
{
	int n;//定义一个被除数
	int sum=0;//初始化和
	int start;//定义初始值
	int end;//定义终止值
	printf("请输入初始值:");
	scanf("%d",&start);
	printf("请输入终止值:");
	scanf("%d",&end);
	if(start>end){
		printf("无法计算\n");
	}
	else{
		for(n=start;n<=end;n++){
			int sum=0;//重置sum
			for(int i=1;i<n;i++){
				if(n%i==0){
					sum+=i;
				}
			}
			if(sum==n){
				printf("%d是完美数\n",n);
			}
		}
	}
	return 0;
}

运行结果:
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值