模拟strlen
int my str(char* p)
{
if (p != '\0')
return 1 + my str(p + 1);
else
return 0;
}
汉诺塔:
void f(int n, char a, char b, char c)
{
if (n == 0)
return;
else
{
f(n - 1, a, c, b);
printf("%c ->%c\n", a , c);
f(n - 1, b, a, c);
};
}
int main()
{
int n = 0;
char a = 0;
char b = 0;
char c = 0;
scanf("%d %c %c %c",&n,&a,&b,&c);
f(n, a, b, c);
return 0;
}
乘法表
int main()
{
int i = 0;
int j = 0;
for (i = 1; i <= 9; i++)
{
for (j = 1; j <= i; j++)
{
printf("%d*%d=%-2d ", j, i, j * i);
}
printf("\n");
}
return 0;
}
数组:一组相同类型的集合
int arr[8] []里是元素个数,常量表达式
变长数组通常不能,C99下支持
arr[]={1,2,3,4}等价于arr[4]={1,2,3,4}
char ch[]="bit" 实际是bit\0
char ch[]={'a','i','x'}实际是aix,没有\0
[]下标引用操作符
int arr[10]={0}
arr[4]=5 在字符串中想要的位置添加数字,如第五个
%p按地址格式打印 16进制
一维数组在内存中连续存放的
随着数组下标的增长,地址是由低到高变化的