c语言中怎么给一个行和列都是100的二维数组都赋0值
答案:4 悬赏:50 手机版
解决时间 2021-02-23 19:59
- 提问者网友:感性作祟
- 2021-02-23 03:39
c语言中怎么给一个行和列都是100的二维数组都赋0值
最佳答案
- 五星知识达人网友:躲不过心动
- 2021-02-23 05:00
有两种方法可以做到。
一、循环赋值。
对每一项分别赋值为0。对于二维数组一般用双重循环,实际上用单重循环也可以,效率上并无区别。
参考代码:
TYPE a[100][100];
int i,j;
for(i = 0; i < 100; i ++)
for(j = 0; j < 100; j ++)//双重循环遍历。
a[i][j] = 0; //每个赋值为0。二、整体置零。
在C库函数中,有memset这一个函数,形式为
void *memset (void *s, int c, size_t n);
功能为,在地址s指向的内存单元开始,将c个字节的空间,每个都赋值为c。
这个函数是按字节赋值的,所以对于赋值0值,可以直接将整个内存空间清零。
参考代码:
TYPE a[100][100];
memset(a, 0, sizeof(a));//整体清0.
第一种方法更具通用性,后一种方法不是永远适合,但在可以用memset的情况下,后一种方法更高效。
一、循环赋值。
对每一项分别赋值为0。对于二维数组一般用双重循环,实际上用单重循环也可以,效率上并无区别。
参考代码:
TYPE a[100][100];
int i,j;
for(i = 0; i < 100; i ++)
for(j = 0; j < 100; j ++)//双重循环遍历。
a[i][j] = 0; //每个赋值为0。二、整体置零。
在C库函数中,有memset这一个函数,形式为
void *memset (void *s, int c, size_t n);
功能为,在地址s指向的内存单元开始,将c个字节的空间,每个都赋值为c。
这个函数是按字节赋值的,所以对于赋值0值,可以直接将整个内存空间清零。
参考代码:
TYPE a[100][100];
memset(a, 0, sizeof(a));//整体清0.
第一种方法更具通用性,后一种方法不是永远适合,但在可以用memset的情况下,后一种方法更高效。
全部回答
- 1楼网友:过活
- 2021-02-23 07:11
int a[100][100]={0};
靠!这种问题也问
我练一下指法算啦
靠!这种问题也问
我练一下指法算啦
- 2楼网友:煞尾
- 2021-02-23 06:40
int a[100][100];
memset(a, 0, 100 * 100 * sizeof(int));
memset(a, 0, 100 * 100 * sizeof(int));
- 3楼网友:低血压的长颈鹿
- 2021-02-23 05:48
比如
int a[100][100]={0};
那么a的所有元素都被赋了0值。
也可以
int i,j;
for(i=0;i<100;i++)
for(j=0;j<100;j++)
a[i][j]=0;
就行了
int a[100][100]={0};
那么a的所有元素都被赋了0值。
也可以
int i,j;
for(i=0;i<100;i++)
for(j=0;j<100;j++)
a[i][j]=0;
就行了
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯