程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程解疑 >> c語言-求解答錯誤原因

c語言-求解答錯誤原因

編輯:編程解疑
求解答錯誤原因

答案輸不出 我也不知道原因 圖片圖片

最佳回答:


我的程序:
#include
#include
void sort(int a[500], int b[500],int n)//換一次
{

int i, j = 0, flag = 1;
for (i = 0; i < n; i++)
{

if (i % 2 == 0)

{ b[j++] = a[n / 2 + i/2]; }

else

{ b[j++] = a[i/2]; }

}
}
void change(int a[500], int b[500],int n)
{
int i; for (i = 0; i < n; i++)
{ a[i] = b[i]; b[i] = 0; }
}
int main()
{

int i, n,a[500],b[500],flag=1,c=0;

scanf("%d", &n);
for (i = 0; i < 2 * n; i++)
{ a[i] = i + 1; b[i] = 0; }

flag = 1;
while(flag==1)
{ sort(a, b, 2 * n);

flag = 0; c++;

for (i = 0; i < 2 * n; i++) //若兩個數組都不相同 那麼flag=1 繼續循環

{ if (a[i] != b[i])

{ flag = 1;

change(a, b, 2 * n);

}

}
}

printf("經%d次洗牌回到初始位置\n", c);
return 0;}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved