#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
//运行结果
//int main()
//{
// int x = 3;
// int y = 3;
// switch (x % 2) //余1 进case 1
// {
// case 1:
// switch (y) //y=3 进default
// {
// case 0:
// printf("first");
// case 1:
// printf("second");
// default:
// printf("hello");
// }
// case 2:
// printf("third"); //case 1没有break 继续case 2
// } //最后打印hellothird
// return 0;
//}
//将代码从大到小输出 输入231 输出321
/*
int main()
{
int a = 0;
int b = 0;
int c = 0;
scanf("%d %d %d", &a, &b, &c);
int tmp = 0;
if (a < b)
{
tmp = a;
a = b;
b = tmp;
}
if (a < c)
{
tmp = a;
a = c;
c = tmp; //可以简化为函数
}
if (b < c)
{
tmp = b;
b = c;
c = tmp;
}
printf("%d %d %d\n", a, b, c); //这里先设置好输出 决定a是最大值 依次排列
return 0;
}*/
//简化为函数表达:
/*void swap(int* px, int* py)
{
int tmp = *px;
*px = *py;
*py = tmp;
}
int main()
{
int a = 0;
int b = 0;
int c = 0;
scanf("%d %d %d", &a, &b, &c);
int tmp = 0;
if (a < b)
{
swap(&a, &b);
}
if (a < c)
{
swap(&a, &c);
}
if (b < c)
{
swap(&b, &c);
}
printf("%d %d %d\n", a, b, c); //这里先设置好输出 决定a是最大值 依次排列
return 0;
}*/
//打印1-100中3的倍数
/*
int main()
{
int i = 0;
for (i = 3; i <= 100; i+=3)
{
if (i % 3 == 0)
printf("%d ", i);
}
return 0;
}
*/
//求两数最大公约数
//辗转相除法:24 18 24%18余6 18%6余0 最大公约数为6
/*int main()
{
int a = 0;
int b = 0;
scanf("%d %d", &a, &b);//24 18
while (a % b)
{
int c = a % b;
a = b;
b = c;
}
printf("%d", b);
return 0;
}*/
//判断输出
/*int main()
{
int a = 0, b = 0;
for (a = 1, b = 1; a <= 100; a++)
{
if (b >= 20) break; //a=1 b=4 continue跳过后面的然后到a++
if (b % 3 == 1) //a=2 b=7 3 10 4 13 5 16 7 19 8 22然后break
{ ///b+3之后continue后 a才+1
b = b + 3;
continue;
}
b = b - 5;
}
printf("%d\n", a); //所以打印结果为8
return 0;
}*/
//数一下1~100所有整数出现多少 个 数字9
//9 19 23 39 49 59 69 79 89 99
//90 91 92 93 94 95 96 97 98 99
/*int main()
{
int i = 0;
int count = 0;
for (i = 1; i <= 100; i++)
{
//判断个位是不是9
if (i % 10 == 9)
count++;
//判断十位是不是9
if (i / 10 == 9)
count++;
}
printf("%d\n", count);
return 0;
}*/
//计算1/1 - 1/2 + 1/3 -1/4 +....+1/99 -1/100的值 分子都是1 分母1~99
/*
int main()
{
int i = 0;
double sum = 0;
int flag = 1;
for (i = 1; i <= 100; i++) //考虑加减
{
sum = sum + flag * (1.0 / i); //1/2结果要想是小数必须为:1.0/2
flag = -flag;
}
printf("%lf\n", sum);
return 0;
}*/
/*
int main()
{
int arr[10] = {0};
//输入数字
int i = 0;
for (i = 0; i < 10; i++) //输入数字为什么用循环:因为其对应的是下标
{
scanf("%d", &arr[i]);//这里取地址不是数组的地址 数组名本身是地址
//这里是取每个元素地址
}
//找出最大值
int max = arr[0]; ///如果int max = 0;如果数里面有负数 下面比较就会出现错误
for (i = 1; i < 10; i++)
{
if (arr[i] > max)
max = arr[i];
}
printf("%d\n", max);
return 0;
}*/
//输出九九乘法表
/*
int main()
{
int i = 0;
for (i = 1; i <= 9; i++) //这里表示要打印九行
{
int j = 0; //j表示要打印的列
for (j = 1; j <= i; j++)
{
printf("%d*%d=%-2d ", i, j, i * j);//%2d表示打印两位整数
} // 不够大用空格填充 但是这样是右对齐 %-2d为左对齐
printf("\n");
}
return 0;
}*/