#include<stdio.h>
#include<iostream>
#include<math.h>
using namespace std;
/*
5个
if...goto
for(a;b;c)d
while(a)b;
do{}while(a);
递归
*/
//1+2+3...+100
#if 0
void main()
{
int a = 1,sum;
sum = 0;
loop:if(a <= 100)
{
sum = sum + a;
++a;
goto loop;
}
printf("%d\n",sum);
}
#endif
/*
for(10)
{
for(5)
{
for(4)
{
for(3)
{
for(5)
{
if()
goto a;
}
}
}
}
}
a://end
*/
/*
for(a;b;c)
d;
1.a,b,c.d含义
2.3.4
*/
/*
a;
while(b)
{
d,c;
}
*/
/*
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
*/
//6 8
#if 0
void main()
{
int a,b;
scanf("%d%d",&a,&b);
int min = a < b ? a : b;
int max = a > b ? a : b;
int i;
for(i = max;i < a * b;i++)
{
if(i % a == 0 && i % b == 0)
{
printf("%d ",i);
break;
}
}
/*
for(i = 1;i<=min;i++)
{
if(a % i == 0 && b %i == 0)
printf("%d ",i);
}
*/
#if 0
for(i = min;i >= 1;--i)
{
if(a % i == 0 && b % i == 0)
{
printf("%d ",i);
break;
}
}
printf("%d\n",a*b/i);
#endif
}
#endif
//break(跳出循环),continue(结束本次循环),return,exit(1)
#if 0
void main()
{
int i=1;
int s = 0;
while(i <= 10)
{
s = s + i;
if(s == 10)
//break;
continue;
++i;
}
printf("%d,%d\n",s,i);
}
#endif
//1.用pi/4 ~ = 1-1/3+1/5-1/7+...公式求pi的近似值,直到某一项的绝对值小于1e-6为止。
#if 0
void main()
{
float a = 1,b = 1;
float sum = 0;
float t = a / b;
while(fabs(t)>=1e-6)
{
sum = sum + t;
a = - a;
b = b + 2;
t = a / b;
}
printf("%f\n",sum * 4);
}
#endif
//100 2~10
#if 0
void main()
{
int a;
int b,c,d;
for(a = 100;a<1000;++a)
{
b = a / 100;
c = a %100 /10;
d = a % 10;
if(a == b*b*b + c*c*c+d*d*d)
printf("%d ",a);
}
}
#endif
#if 0
void main()
{
int a,b,c;
for(a = 1;a < 10;a++)
{
for(b = 0;b<10;b++)
{
for(c = 0;c < 10;c++)
if(a * 100+ b*10+c == a*a*a+b*b*b+c*c*c)
printf("%d ",a*100+b*10+c);
}
}
}
#endif
/*
*
***
*****
*******
行i 空格j *k
0 3 1 0
1 2 3 2
2 1 5 4
3 0 7 6
回文字符串:从左到右==从右到左 abcba
A
ABA
ABCBA
ABCDCBA
1 2
4 3
*/
#if 0
void main()
{
int i,j,k;
char c = 'A';
for(i = 0;i<=3;i++)
{
c = 'A';
for(j = 0;j<3-i;j++)
printf(" ");
for(k = 0;k <= i;k++)
printf("%c",c++);//C
--c;
for(k = 0;k<i;k++)
printf("%c",--c);
printf("\n");
}
}
#endif
/*
数组:有序数据的集合,在内存里面占据一段连续的内存单元,元素类型都是相同的
*/
#define N 10 //预处理--宏定义
const int n = 10; //const在C中表示只读变量
/*
int a[10] a(int*) a[i](int)
int b[3][4] b(int (*)[4]),b[i](int*) b[i][j](int)
*/
#if 0
void main()
{
//int num[N];
int num[10];
int b[3][4];
printf("%d,%d\n",&num[0],&num[1]);
printf("%d,%d\n",b,b+1);
printf("%d,%d\n",b[0],b[0]+1);
}
#endif
/*
计算数组table的元素个数
sizeof(table)/sizeof(table[0])
*/
#if 0
void main()
{
int a[] = {1,3,2,4,5,6,7,8,9,0,9,8};
int n = sizeof(a) / sizeof(a[0]);
int i,t;
for(i = 0;i<n/2;i++)
{
t = a[i];
a[i] = a[n-i-1];
a[n-i-1] = t;
}
for(i = 0;i<n;i++)
printf("%d ",a[i]);
printf("\n");
}
#endif
/*
10
1~10
*/
void main()
{
int i,j;
int a[] = {7,6,1,2,3,4,5,9,8,10};
//a[i]->a[a[i]-1]
}
//打印带子母的等腰三角形
#include<stdio.h>
#include<math.h>
void main()
{
int i,j,k;
char c = 'A';
for(i = 0;i<=3;i++)
{
c = 'A';
for(j = 0;j<3-i;j++)
printf(" ");
for(k = 0;k <= i;k++)
printf("%c",c++);//C
--c;
for(k = 0;k<i;k++)
printf("%c",--c);
printf("\n");
}
}