一、二维数组
在程序中的表达式以及概念
#include<stdio.h>
int main()
{
int a[2][3] = { };//可以省略行就比如是a[][3]是可以的但是a[2][]就是不行的
int i, j;
int x, y;
for (i = 0; i < 2; i++)
{
for (j = 0; j < 3; j++)
{
printf("%p\n", &a[i][j]);
}
}
return 0;
}
打印占据的内存;
二、字符的初始化
#include<stdio.h>
int main()
{
char a[] = { 'a','b','c' };//定义a的数值
char b[] = { 'x','y','z' };
int i = 0;
int n = 0;
int x = 0;
int y = 0;
i = sizeof(a) / sizeof(char);//算出a[]的数值
printf("i=%d\n", i);
for (x = 0; x < i; x++)
{
putchar(a[x]);//打印a的数值
}
putchar('\n');
n = sizeof(a) / sizeof(char);
for (y = 0; y < n; y++)
{
putchar(a[y]);
}
return 0;
}
初始化数值定义
#include<stdio.h>
int main()
{
char a[4] = { 'a','b','c' };
char b[] = { 'x','y','z' };
int i = 0;
int n = 0;
int x = 0;
int y = 0;
printf("%s\n", a);//打印出来的是abc
printf("%s", b);//打印出来的的是XYZ后面是乱码因为这个是字符串数组不是字符串结束符是"\0"后面就是乱码了
return 0;
}
二维数组的初始化
#include<stdio.h>
int main()
{
char a[][7] = { "apple","abcdef","ornrne","xyzd" };
int b = 0;
int x = 0;
int y = 0;
int z = 0;
int c = 0;
b = sizeof(a) / sizeof(a[0]);\\计算二维数组的行
c = sizeof(a[0]) / sizeof(char);\计算二维数组的列
for (x = 0; x < b; x++)
{
for (y = 0; y < c; y++)
{
putchar(a[x][y]);
}
printf("\n");
}
return 0;
}
反向输出符号
#include<stdio.h>
#include<string.h>
int main()
{
char a[] = "hello";
int b = 0;
int c = 0;
int x = 0;
int y = 0;
int z = 0;
printf("%s\n", a);
b = strlen(a);
printf("%d\n", b);
for (x = b - 1; x >= 0; x--)
{
putchar(a[x]);
}
return 0;
}
第二种反向输出函数
#include<stdio.h>
#include<string.h>
int main()
{
char a[] = "hello";
int b = 0;
int c = 0;
int x = 0;
int y = 0;
int z = 0;
int i;
z = strlen(a);
printf("%d\n", z);
x = z - 1;
while (y < x)
{
i = a[x];
a[x] = a[y];
a[y] = i;
y++;
x--;
}
puts(a);
return 0;
}