#include<stdioh>
int a[]={0,1,2,5,8,7,6,3}; /指针数组依次存入矩阵中构成环的元素下标/
int b[9]; /表示3X3矩阵,b[4]为空格/
int c[9]; /确定1所在的位置后,对环进行调整的指针数组/
int count=0; /数字移动步数计数器/
void main()
{
int i,j,k,t;
void print();
printf("Please enter original order of digits 1~8:");
for(i=0;i<8;i++)
scanf("%d",&b[a[i]]);/顺序输入矩阵外边的8个数字,矩阵元素的顺序由指针数组的元素a控制/
printf("The sorting process is as felow:\\n");
print();
for(t=-1,j=0;j<8&&t==-1;j++) /确定数字1所在的位置/
if(b[a[j]]==1) t=j; /t:记录数字1所在的位置/
for(j=0;j<8;j++) /调整环的指针数组,将数字1所在的位置定为环的首/
c[j]=a[(j+t)%8];
for(i=2;i<9;i++) /从2开始依次调整数字的位置/
/i:正在处理的数字,i对应在环中应当的正确位置就是i-1/
for(j=i-1;j<8;j++) /从i应处的正确位置开始顺序查找/
if(b[c[j]]==i&&j!=i-1) /若i不在正确的位置/
{
b[4]=i; /将i移到中心的空格中/
b[c[j]]=0;print(); /空出i原来所在的位置,输出/
for(k=j;k!=i-1;k--) /将空格以前到i的正确位置之间的数字依次向后移动一格/
{
b[c[k]]=b[c[k-1]]; /数字向后移动/
b[c[k-1]]=0;
print();
}
b[c[k]]=i; /将中间的数字i移入正确的位置/
b[4]=0; /空出中间的空格/
print();
break;
}
else if(b[c[j]]==i) break; /数字i在正确的位置/
}
void print(void) /按格式要求输出矩阵/
{
int c;
for(c=0;c<9;c++)
if(c%3==2) printf("%2d ",b[c]);
else printf("%2d",b[c]);
printf("----%2d----\\n",count++);
}
这样子就没有问题啊
1、打开手机找到系统里的设置图标,点击图标
2、在设置页面,找到应用管理
3、打开“应用管理”后切换到“已下载”,展开所有已安装的程序列表。
4、点击要移动的程序,进入应用程序信息页面,点击“移至SD卡”的按钮即可,这样就将软件由手机内存转移到SD卡上了。
5、系统完成移动到SD卡,说明已经移动成功
以上就是关于C语言编程 数字移动 的程序问题全部的内容,包括:C语言编程 数字移动 的程序问题、华为畅享8plus怎么把软件移动到SD卡、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)