void main()
{
int i = 1;
char arr[21] = {};
char* p = NULL;
p = arr;
for (int i = 0; i < 20; i++)//空出一块空间给‘\0’
{
arr[i] = i + 1;
printf("%d \n", arr[i]);
}
for (p=arr;*p!='\0';p=p+1)
{
printf("%d",*p);
}
getchar();
}
void main()
{
int i = 1;
char arr[21] = {};
char* p = NULL;
p = arr;
for (int i = 0; i < 20; i++)
{
arr[i] = i + 1;
printf("%d \n", arr[i]);
}
for (p=arr;*p!='\0';p=p+1)
{
printf("%d",*(p));
}
getchar();
}
移动地址*p取值
质因子分解
void main() //90 = 2 * 3 * 3 * 5
{
int i = 2, num = 4, a = 0;
while (j / i >= 1)//排除1
{
if (j%i==0)//找到能被整除的数,在排除1以后质子只能被自身整除
{
!a ?printf("%d ",i):printf("* %d",i);
num /= i;//整除赋值
a++;//为了打印前面的乘号,a非0
}
else
{
i++;//递增找到符合条件的数
}
}
getchar();
}
杨辉三角
void main()
{
int arr[8][8] = {};
for (int i = 0; i < 8; i++)
{
for (int j = 0; j <i; j++)//
{
if (j == 0||j==i)//0列赋值 斜边坐标赋值
{
arr[i][j] = 1;
}
if (arr[i][j]==0)//给剩下的数赋值
{
arr[i][j] = arr[i - 1][j - 1]+arr[i-1][j];//新的值等于上一行两个数之和,看形状就可以知道
}
printf("%3d", arr[i][j]);
}
printf("\n");
}
getchar();
}
第一次循环打印了换行,第二次j
void main()
{
int a[5][5], b[5][5], i, j;
for (i = 0; i < 5; i++)
{
for (j = 0; j < 5; j++)
{
a[i][j] = 10 + rand() % 91;
//循环给每个下标赋值
b[j][4 - i] = a[i][j]; //顺90度
//b[4-i][4 - j] = a[i][j]; //180度
//b[4 - j][i] = a[i][j]; //逆90度
//b[4 - i][j] = a[i][j]; //上下镜像翻转
//b[i][4 - j] = a[i][j]; //左右镜像翻转
printf("%5d", a[i][j]);
}
printf("\n");
}
printf("\n\t顺时针旋转90度\n\n");
//printf("\n\t顺时针旋转180度\n\n");
//printf("\n\t逆时针旋转90度\n\n\n");
//printf("\n\t上下镜像翻转\n\n");
//printf("\n\t左右镜像翻转\n\n");
for (i = 0; i < 5; i++)
{
for (j = 0; j < 5; j++)
{
//printf("%5d", b[i][j]);//打印赋值结果
printf("%5d",a[4-i][j]);//打印出的结果是一样的不过只是把值的顺序改了,不是真的赋值
}
printf("\n");
}
getchar();
}
在循环赋值那里卡住半天没搞懂是怎么回事,数组的赋值是没规定必须从首地址开始的,也可以先从其它下标一 一赋值,打印出来的结果也会不一样;
void main()
{
int a[5][5], b[5][5], i, j;
char arr[65];
for (i = 0; i < 5; i++)
{
for (j = 0; j < 5; j++)
{
a[i][j] = 10 + rand() % 91;
printf("%5d", a[i][j]);
}
printf("\n");
}
printf("\n\t顺时针旋转90度\n\n");
char brr[65];
for (i = 0; i < 5; i++)
{
for (j = 0; j < 5; j++)
{
printf("%5d", a[4 - i][j]);//改变输出顺序,达到想要的效果,不过下标的值是没有改变的
}
printf("\n");
}
getchar();
}
3514

被折叠的 条评论
为什么被折叠?



