1.C語言中數組不能進行賦值操作,如果要賦值數組a[max]裏面的k個數字到b[max]裏面去,可以這樣做:
memcpy(b,a,sizeof(int)*k) 或 memcpy(b,a,sizeof(float)*k)
如果把a全部複製到b裏面去,則 memcpy(b,a,sizeof(a)). 頭文件 #include<string.h>
2.memset(a,0,sizeof(int))將數組a清零。
3.開燈問題
#include<stdio.h>
#include<math.h>
#define MAXN 1000+10
int a[MAXN];
void main()
{
int n,k;
scanf("%d%d",&n,&k);
for(int i=0;i<n;i++)
a[i]=0;
for(int i=1;i<=k;i++)
for(int j=0;j<n;j++)
if(((j+1)%(i))==0)
a[j]++;
printf("%d",1);
for(int i=1;i<n;i++)
if(a[i]%2==1)
{
printf(" ");
printf("%d",i+1);
}
printf("\n");
}