2021-02-23

30.输入两个正整数m和n(1<=m,n<=500),统计并输出m和n之间的素数的个数以及这些素数的和。
#include <stdio.h>
void main()
{
int m,n,sum=0,counter=0;
int i,j;
scanf("%d%d",&m,&n);
for(i=m;i<=n;i++)
{
for(j=2;j<i;j++)
if(i%j0)
break;
if(j
i)
{
sum=sum+i;
counter++;
}
}
printf(“counter=%d,sum=%d\n”,counter,sum);
}
31.从键盘中输入全班同学们的C语言课程的成绩,输入-1时停止,统计出各分数段的人数,并输出。(<60、60-69、70-79、80-89、90-100)
#include “stdio.h”
void main()
{
int score[200];
int counter1=0,counter2=0,counter3=0,counter4=0,counter5=0;
int i=0;
for(i=0;i<200;i++)
{
scanf("%d",&score[i]);
if((score[i] == -1))
break;
else if(score[i]>=90)
counter1++;
else if(score[i]>=80)
counter2++;
else if(score[i]>=70)
counter3++;
else if(score[i]>=60)
counter4++;
else
counter5++;
}
printf(" <60 is %d\n 60-69 is %d\n 70-79 is %d\n 80-89 is %d\n 90-100 is %d\n ",counter5,counter4,counter3,counter2,counter1);
}

输入两个正整数a和n,编程求a+aa+aaa+aa…a(n个a)之和。要求定义并调用函数fn(a,n),它的功能是返回aa…a(n个a)。例如fn(3,2)的返回值是33。
#include"stdio.h"
int fn(int a,int n)
{
int s;
while(n>=0)
{
s=an+s;
a=a
10;
n–;
}
return s;
}

void main()
{
int a1,n1;
int sum;
printf(“please input the a1 and n1:\n”);
scanf("%d%d",&a1,&n1);
sum=fn(a1,n1);
printf(“sum=%d\n”,sum);
}
33.输出指定范围内的Fibonacci数:输入两个正整数m和n(1<=m,n<=10000),输出m~n之间所有的Fibonacci数。
#include"stdio.h"
int fib(int n);
void printFN(int m,int n);
int main()
{
int m,n,t;
scanf("%d%d", &m,&n);
printFN(m,n);
return 0;
}

int fib(int n)
{
if(n1||n2)
return 1;
if(n>2)
return fib(n-1)+fib(n-2);
}

void printFN(int m,int n)
{
int i=0,j,k=1,count=0;
for(j=0;j<=21;j++)
{
i++;
if(fib(i)>=m && fib(i)<=n)
{
count++;
printf("%5d",fib(i));
}
}
if(count==0)
{
printf(“No Fibonacci number”);
}
}
34.验证哥德巴赫猜想:任何一个不小于6的偶数均可表示为两个奇素数之和。例如:6=3+3,8=3+5,…,18=5+13。将6~100之间的偶数都表示成两个奇素数之和,打印时一行打印3组。

#include"stdio.h"
#include"math.h"
int fun(int n)
{
int i;
if(n2)
return 1;
if(n%2
0)
return 0;
for(i=3;i<=sqrt(n);i+=2)
if(n%i==0)
return 0;
return 1;
}

main()
{
int ok,n,i,j,flag,counter=0;
for(n=6;n<=100;n++)
{
flag=0;
for(i=2;i<=n/2;i++)
{
if(fun(i))
if(fun(n-i))
{
printf("%5d=%d+%d\t\t",n,i,n-i);
counter++;
ok=1;
if(counter%3==0)
printf("\n");
}
if(i!=2)
i++;
if(flag)
break;
}
}
}
35.求100~200间的全部素数。

#include"stdio.h"
#include"math.h"
int fun(int n)
{
int i;
if(n2)
return 1;
if(n%2
0)
return 0;
for(i=3;i<=sqrt(n);i+=2)
if(n%i0)
return 0;
return 1;
}
main()
{
int num,counter=0;
for(num=100;num<=200;num++)
if(fun(num))
{
counter++;
printf("%d\t",num);
if(counter%5
0)
printf("\n");
}
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值