发布网友 发布时间:2022-04-23 01:01
共8个回答
热心网友 时间:2022-04-18 16:11
需要准备的材料分别有:电脑、C语言编译器。
1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。
2、在test.cpp文件中,输入C语言代码:
int a[3];
memset(a, 0, sizeof(a));
printf("%d", a[0]);
printf("%d", a[1]);
printf("%d", a[2]);
3、编译器运行test.cpp文件,此时成功将数组每一项都初始化为0。
热心网友 时间:2022-04-18 17:29
举例说明:
int a[20] = {0};
这样,数组a中的每一个元素都被初始化为0了。
热心网友 时间:2022-04-18 19:04
或许你可以调用用memset()函数试试,例如:memset(arr,0,sizeof(arr));
不过memset这是对每个字节赋值,所以只能是赋0或者-1,别的话只能用循环了追问
这个不行,memset用来设置char型的还是可以,但int型是不行的。你看看吧
热心网友 时间:2022-04-18 20:55
#include "Stdio.h"
#include "Conio.h"
int main(void)
{
int i,a[100]={1};
for(i=0;i<=99;i++)
a[i]=1;
for(i=0;i<=99;i++)
{
if(i%5==0)printf("\n") ;
printf("%d\t",a[i]);
}
getch();
return 0;
}
个人感觉就只有用循环才能做。。。不知道别人有好方法吗?
热心网友 时间:2022-04-18 23:03
c++ can do it:
#include <algorithm>
..
int arr[100];
std::fill(arr, arr+100, 1);
..
热心网友 时间:2022-04-19 01:28
对啊 用循环啊 没别的方法 循环也不费劲追问除了循环我也想不出什么好的方法了
追答循环就是好方法
热心网友 时间:2022-04-19 04:09
申请一个struct template{ int i = 1;}; typedef struct template tem_t; struct tem_t arr[100];就搞定了。追问这个不行,首先语法就有错误,不能通过编译,struct template{ int i = 1;};C语言里结构体不是这样写的,结构体里的变量不能赋值。
追答只是提供类似的一个思想,呵呵。
你采纳的那个才是正解,一句memset就搞定了
热心网友 时间:2022-04-19 07:07
这个0是一个特殊情况,这个0是把数组的第一个元素初始化为零,剩余的元素系统会自动用0补齐,如果你把0改为1的话,你调试的时候会发现,只有第一个元素为1,剩下的都是0