请问c语言大神,怎么修改这个程序

如题所述

#include <stdio.h>
int main()
{
int x[99],a,i;
for (i=0;i<99;i++)
{
x[i]=0;
if (i==49||i==50)
x[i]=1;
}
 for (i=0;i<99;i++)
 {
  if (x[i]==0)
  x[i]=1;
  else 
  x[i]=0;
  printf ("%d   %d\n",i,x[i]);
 }
 return 0;
}

你看是不是这个意思

追问

再说我要循环改变xi100次

追答

代码没问题

把。99改成100就行了啦

这个又不难

追问

可是打出来不是我要的结果

追答

你想要哪种结果

是先输出一次然后再改吗

追问

这种

不过还是谢谢你

追答

前4个,中间随便选3个后面3个改成相反?

原题发出来看吧

追问

追答

初始的数有要求吗

追问

结果要这样

追答

那串数字是多少位

你上面写的49?

追问

必须是前49个是0,然后2个1,然后是0

100个

真是太谢谢你了

追答

然后循环100次?

追问

是的

追答

等等

追问

追答

我改代码

追问

谢谢你

追答

#include
int main()
{
int x[100],a=1,i;
for (i=0;i<100;i++)
{
x[i]=0;
if (i==49||i==50)
x[i]=1;
}
for (i=0;i<100;i++)
printf ("%d",x[i]);
putchar ('\n');
for (a=0;a<100;a++)
{
for (i=0;i<100;i++)
{
if (x[i]==0)
x[i]=1;
else x[i]=0;
printf ("%d",x[i]);
}
putchar ('\n');
}
return 0;
}

我给你的代码没前面的数字,后面发给你的图是让你看到循环了100次的

追问

谢谢

真是无以为报😂

追答

没事

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-04-07
数组X赋值应该是X[某值]=某值;不是小括号追问

改过来也不对?_?

第2个回答  2017-04-07
笑死我了,来我教你一个宝贝,叫做循环
for(i=0;i<99;i++) x[i]=0;
再教你第二个宝贝,比上面那个还高效,叫做memset
memset(x,0,sizeof(int)*99);
使用此大法前需要先#include<string.h>追问

不是都是0,第50和第51个是1←_←

追答

那你不会先填充0然后x[50]=x[51]=1啊,x有10000个元素你是不是打算写10000行啊?

相似回答