C语言基础

多重输出求平均数

#include <stdio.h>

int main()
{
	int n;
	double i,a,b=0;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		scanf("%lf",&a);
		b=b+a;
	}
	printf("average=%.2lf\n",b/n);
	return 0;
}


分段函数表示

#include <stdio.h>


int main()
{
    double x,y;
	scanf("%lf",&x);
	if(x<=0)
		y=3*x+5;
	else if(x<=1)
		y=5*x*x+x+8;
	else
		y=(x*x+5)/((x+3)*(x-5));
	printf("%.3lf\n",y);
    return 0;
}


判断三个数是否连续

#include <stdio.h>


int main()
{
    double a,b,c;
	scanf("%lf %lf %lf",&a,&b,&c);
	if(a+1==b && b+1==c)
		printf("YES\n");
	else
		printf("NO\n");
    return 0;
}

求两个数之间所有素数的和

#include <stdio.h>
#include <math.h>

int main()
{
   double m,n,s=0;
   int f,a,i;
   scanf("%lf %lf",&m,&n);
   for(i=m;i<=n;i++)
  {
        f=1;
        for(a=2;a<=sqrt(i);a++)
       {
            if(i%a==0)
            {f=0;break;}
        }
       if(f)
          s=s+i;
  }
  printf("%.0lf\n",s);
  return 0;
}

求1到n偶数的和

#include <stdio.h>


int main()
{
   int i;
   double n,s=0;
   scanf("%lf",&n);
   for(i=1;i<=n;i++)
   {
	   if(i%2==0)
		   s=s+i;
   }
   printf("%.0lf\n",s);
    return 0;
}

求100-1000之间所有满足n=a!+b!+c!其中n=abc

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

int fun(int n)
{
  int num = 1,sum=1;
  while(sum<=n)
  {
    num *= sum;
    sum++;
  }
  return num;
}

int main()
{
  int i,j,k;
  int n;

  for(n=100;n<1000;n++)
  {

    if(n==fun(n%10) + fun(n/100) + fun(n%100/10))
		printf("%d\n", n);
  }

  system("pause");
  return 0;
}
另一种表示方式
#include<stdio.h>
#include<math.h>
int main()
{    
	int i,a,b,c,A,B,C,o,p,q;
        double sum=0;
        for(i=100;i<=999;i++)
	{ 
             A=1,B=1,C=1;
	     a=i/100;
	     b=(i/10)%10;
	     c=i%10;
	     for(o=1;o<=a;o++)
		{A*=o;}
             for(p=1;p<=b;p++)
		{B*=p;}
	     for(q=1;q<=c;q++)
		{C*=q;}
	     if(i==A+B+C)
		{	sum+=i;break;}


	 }
	 printf("%d\n",sum);
	 return 0;
}

求sum=1!+2!+3!。。。+n!

#include<stdio.h>
#include<math.h>
int main()
{   double k=0,s=0;
	int n,i,j;
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{   
           s=0;
	   for(j=1;j<=i;j++)
	   {k+=j;}
	   s+=k;
	}
	printf("%.0lf\n",s);
	return 0;
}

位数分离

#include<stdio.h>
#include<math.h>
int main()
{    int a,b,c,d,i;
     for(i=1000;i<=9999;i++)
	 {  
		if(sqrt(i)*(int)sqrt(i)==i)
		{
                    a=i/1000;
	            b=(i/100)%10;
	            c=(i/10)%10;
	            d=i%10;
                    if(a+c==10&&b*d==12)
		      printf("%d\n",i);
		 }
	 }
	return 0;
}

求能被5整除的数的和

#include <stdio.h>
#include <math.h>
int main()
{
	int s=0,i;
	for(i=500;i<=599;i++)
	{
		if(i%5==0)
			s+=i;
	}
	printf("%d\n",s);
	return 0;
}

if-else数学应用
#include <stdio.h>
int main()
{
	double i,b;
	scanf("%lf",&i);
	if (i<=100000)
		b=0.1*i;
	else if(i<=200000)
		b=10000+(i-100000)*0.075;
	else if(i<=400000)
		b=10000+7500+(i-200000)*0.05;
	else if(i<=600000)
		b=10000+7500+10000+(i-400000)*0.03;
	else if(i<=1000000)
		b=100000+7500+100000+6000+(i-600000)*0.015;
	else 
		b=100000+7500+100000+6000+6000+(i-1000000)*0.01;
	printf("%.0lf\n",b);
	return 0;
}

求sum=1+1/2!+1/3!+1/4!+.....+1/m!

#include<stdio.h>
int main()
{int i,j,n,m,t; 
   double e;
   scanf("%d",&n);
   for(i=1;i<=n;i++)
   {e=1;t=1;
   scanf("%d",&m);
	   for(j=1;j<=m;j++)
	   {   t=t*j;
	       e+=1.0/t;
	   }
	   printf("%.6lf\n",e);
   }
  return 0;
}

字母转换

#include <stdio.h>
int main()
{
 char c1='C',c2='h',c3='i',c4='n',c5='a';
 c1=c1+4;
 c2=c2+4;
 c3=c3+4;
 c4=c4+4;
 c5=c5+4;
 printf("%c%c%c%c%c\n",c1,c2,c3,c4,c5);
 return 0;
}


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值