实现一个简单函数,能计算给定的年份和月份的天数。使得可以利用该函数,输出给定年份中每个月的天数。
欧拉函数
验证哥德巴赫猜想:任何一个不小于6的偶数均可表示为两个奇素数之和。素数就是只能被1和自身整除的正整数。
使用递归函数输出指定范围内的Fibonacci数
使用函数输出指定范围内的完数
#include<stdio.h>
#include<math.h>
int month_days(int year,int month)
{
if(year%4==0&&year%100!=0||year%400==0){
return 0;
}
else
{
return 1;
}
}
int main()
{
int year,month;
scanf("%d",&year);
if(month_days(year,month)==0){
printf("31 29 31 30 31 30 31 31 30 31 30 31");
}
if(month_days(year,month)==1){
printf("31 28 31 30 31 30 31 31 30 31 30 31");
}
return 0;
}
给定两个均不超过9的正整数a和n,要求编写函数求a+aa+aaa++⋯+aa⋯a(n个a)之和。
#include<stdio.h>
#include<math.h>
int fn(int a,int n)
{
int sum=0,item=0;
for(int i=1;i<=n;i++)
{
item=item*10+a;
sum=sum+item;
}
return sum;
}
int an(int a,int n)
{
int item=0;
for(int i=1;i<=n;i++)
{
item=item*10+a;
}
return item;
}
int main()
{
int a,n;
scanf("%d %d",&a,&n);
printf("fn(%d, %d) = %d\n",a,n,an(a,n));
printf("s = %d",fn(a,n));
return 0;
}
#include<stdio.h>
#include<math.h>
int g(int m,int n)
{
int r,temp;
r=m%n;
if(r==1) return 1;
while(r!=0)
{
m=n;
n=r;
r=m%n;
}
if(n==1)
{
return 1;
}else
{
return 0;
}
}
int f(int n)
{
int count=0;
for(int m=1;m<n;m++)
{
if(g(m,n)==1)
{
count++;
}
}
return count;
}
int main()
{
int t,i,n;
scanf("%d",&t);
for(i=1;i<=t;i++)
{
scanf("%d",&n);
if(n==1) printf("1\n");
else printf("%d\n",f(n));
}
return 0;
}
#include<stdio.h>
#include<math.h>
int prime(int x)
{
int i;
if(x<=1) return 0;
else if(x==2) return 1;
else
{
for(i=2;i<=sqrt(x)+1;i++)
{
if(x%i==0) return 0;
}
return 1;
}
}
int main()
{
int m,n,i,j,k,count=0;
scanf("%d%d",&m,&n);
if(m<=6) m=6;
for(i=m;i<=n;i++)
{
if(i%2==0)
{
for(j=2;j<=i;j++)
{
if(prime(j)==1)
{
k=i-j;
if(prime(k)==1)
{
break;
}
}
}
printf("%d=%d+%d",i,j,k);
count++;
if(count%5==0)
{
count=0;
printf("\n");
}else{
printf(", ");
}
}
}
return 0;
}
#include<stdio.h>
#include<math.h>
int fib(int i)
{
if(i==1||i==2)
{
return 1;
}
else
{
return fib(i-1)+fib(i-2);
}
}
void print_fn(int m,int n)
{
int count=0,j,i;
for(i=m;i<=n;i++)
{
for(j=1;fib(j)<=i;j++)
{
if(fib(j)==i)
{
printf("%d ",i);
count++;
}
}
}
if(count==0) printf("No Fibonacci number");
}
int main()
{
int m,n;
scanf("%d%d",&m,&n);
print_fn(m,n);
return 0;
}
#include<stdio.h>
#include<math.h>
int factorsum(int num)//返回 number的因子和
{
int m,n,sum=0,limit,count=0;
for(int j=1;j<num;j++){//选一个因数
if(num%j==0){
sum=sum+j;
}
}
return sum;
}
void print_pn(int m,int n)
{
int sum=0,limit,count=0,i;
for(int i=m;i<=n;i++){
sum=factorsum(i);
if(sum==i){
printf("%d = 1",i);
for(int k=2;k<i;k++){
if(i%k==0){
printf(" + %d",k);
}
}
printf("\n");
sum=0;
count++;
}
else sum=0;
}
if(count==0) printf("No perfect number");
}
int main()
{
int m,n,sum=0,limit,count=0;
scanf("%d %d",&m,&n);
print_pn(m,n);
return 0;
}