//输入三个数,输出 同样三个数 从大到小排列
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<string.h>
int main()
{
int a = 0;
int b = 0;
int c = 0;
  scanf("%d%d%d", &a, &b, &c);
if (a < b)
{
  int tmp = a;
  a = b;
  b = tmp;
  }
  if (a < c)
  {
  int tmp = a;
  a = c;
  c = tmp;
  }
  if (b < c)
  {
  int tmp = b;
  b = c;
  c = tmp;
  }
  printf("%d %d %d\n", a, b, c);
  return 0;
}
//作业:打印1-100以内 3的倍数
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
  int i = 0;
  for (i = 1; i <= 100; i++)
  {
    if (i % 3 == 0)
    {
      printf("%d ",i);
    }
  }
  return 0;
}
//作业:给定2个数,求这两个数最大公约数
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
  int m = 0;
  int n = 0;
  int r = 0;
  scanf("%d %d", &m, &n);
  while (r=m%n)
  {
    m = n;
    n = r;
    
  }
  printf("%d\n", n);
  return 0;
}
//任务:输出1000-2000 的闰年 方法1
#include<stdio.h>
#include<string.h>
int main()
{
  int count = 0;
  int year = 0;
  for (year = 1000; year <= 2000; year++)
  {
    if (year % 4 == 0 && year % 100 != 0)
    {
      printf("%d ", year);
      count++;
    }
    else if (year % 400 == 0)
    {
      printf("%d ", year);
      count++;
    }
  }
  printf("%d个闰年 ", count);
  return 0;
}
//任务:输出1000-2000 的闰年 方法2
#include<stdio.h>
#include<string.h>
int main()
{
  int count = 0;
  int year = 0;
  for (year = 1000; year <= 2000; year++)
  {
    if ((year % 4 == 0 && year % 100 != 0)||(year % 400 == 0))
    {
      printf("%d ", year);
      count++;
    }
  
  }
  printf("%d个闰年 ", count);
  return 0;
}
//任务:输出100-200之间的素数 方法1
#include<stdio.h>
int main()
{
  int i = 0;
  int j  = 0;
  for (i = 100; i <= 200; i++)
  {
    for (j = 2; j < i; j++)//试除法:假定因数 从 2 到 i-1
    {
      if (i%j == 0)
        break;
    }
    if (i == j)
      printf("%d\n ", i);
  }
  
  return 0;
}
//任务:输出100-200之间的素数 方法2,运算量减少一半
#include<stdio.h>
#include<math.h>
int main()
{
  int i = 0;
  int j  = 0;
  int count = 0;
  for (i = 100; i <= 200; i++)
  //还可以再优化 for (i = 101; i <= 200; i+=2),
    //偶数不可能是质数,继续减少一半运算量{
    for (j = 2; j <= sqrt(i); j++)
      //试除法 除到一半时还没有的话,剩下一半就不会有了
      //所以用开平方 减少一半 运算量 sqrt
    {
      if (i%j == 0)
        break;
    }
    if (j > sqrt(i))     // 当j<= sqrt(i),没有取余为0,是素数,最后j++
    {
      printf("%d\n ", i);
      count++;
    }
  }
  printf("素数总数为 %d", count);
  return 0;
}
//任务:1/1-1/2+1/3......-1/100=?
#include<stdio.h>
#include<math.h>
int main()
{
  int i = 0;
  double sum = 0.0;
  int flag = 1;
  for (i = 1; i <= 100; i++)
  {
    sum += flag*1.0 / i;
    // 分子分母必有 浮点数 ,值才为浮点数。
    //sum储存浮点数,sum为浮点数类型double
    flag = -flag;
  }
  printf("%lf", sum);
  return 0;
}