关于数学黑洞6174(c程序)拜托各位大神假设有一个各位数字各不相同的四位数,把所有数字从大到小排序后得到A,从小到大排序后得到B,然后用A-B替换原来这个数,并且继续操作.例如:从1234出
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/16 19:27:19
![关于数学黑洞6174(c程序)拜托各位大神假设有一个各位数字各不相同的四位数,把所有数字从大到小排序后得到A,从小到大排序后得到B,然后用A-B替换原来这个数,并且继续操作.例如:从1234出](/uploads/image/z/8641317-21-7.jpg?t=%E5%85%B3%E4%BA%8E%E6%95%B0%E5%AD%A6%E9%BB%91%E6%B4%9E6174%EF%BC%88c%E7%A8%8B%E5%BA%8F%EF%BC%89%E6%8B%9C%E6%89%98%E5%90%84%E4%BD%8D%E5%A4%A7%E7%A5%9E%E5%81%87%E8%AE%BE%E6%9C%89%E4%B8%80%E4%B8%AA%E5%90%84%E4%BD%8D%E6%95%B0%E5%AD%97%E5%90%84%E4%B8%8D%E7%9B%B8%E5%90%8C%E7%9A%84%E5%9B%9B%E4%BD%8D%E6%95%B0%2C%E6%8A%8A%E6%89%80%E6%9C%89%E6%95%B0%E5%AD%97%E4%BB%8E%E5%A4%A7%E5%88%B0%E5%B0%8F%E6%8E%92%E5%BA%8F%E5%90%8E%E5%BE%97%E5%88%B0A%2C%E4%BB%8E%E5%B0%8F%E5%88%B0%E5%A4%A7%E6%8E%92%E5%BA%8F%E5%90%8E%E5%BE%97%E5%88%B0B%2C%E7%84%B6%E5%90%8E%E7%94%A8A-B%E6%9B%BF%E6%8D%A2%E5%8E%9F%E6%9D%A5%E8%BF%99%E4%B8%AA%E6%95%B0%2C%E5%B9%B6%E4%B8%94%E7%BB%A7%E7%BB%AD%E6%93%8D%E4%BD%9C.%E4%BE%8B%E5%A6%82%EF%BC%9A%E4%BB%8E1234%E5%87%BA)
关于数学黑洞6174(c程序)拜托各位大神假设有一个各位数字各不相同的四位数,把所有数字从大到小排序后得到A,从小到大排序后得到B,然后用A-B替换原来这个数,并且继续操作.例如:从1234出
关于数学黑洞6174(c程序)拜托各位大神
假设有一个各位数字各不相同的四位数,把所有数字从大到小排序后得到A,从小到大排序后得到B,然后用A-B替换原来这个数,并且继续操作.例如:从1234出发,一次可以得到4321-1234=3087、8730-378=8352、8532-2358=6174.有趣的是,7641-1467=6174,回到了他自己 要输出变成6174的步数 请看我写的程序,为什么无法运行 #include #include main() { int m,n,s,j,k; int a[3]; k=0; printf("Please type the number:\n"); scanf("%d",&n); if((n%1111==0)&&(n>9999)&&(na[2]) { m=a[0]; a[0]=a[2]; a[1]=m; } if(a[0]>a[3]) { m=a[0]; a[0]=a[3]; a[3]=m; } if(a[1]>a[2]) { m=a[1]; a[1]=a[2]; a[2]=m; } if(a[1]>a[3]) { m=a[1]; a[1]=a[3]; a[3]=m; } if(a[2]>a[3]) { m=a[2]; a[2]=a[3]; a[3]=m; } s=a[3]*1000+a[2]*100+a[1]*10+a[0]-a[0]*1000-a[1]*100-a[2]*10-a[3]; } printf("%d %d",n,k); end:system("pause"); return 0; }
关于数学黑洞6174(c程序)拜托各位大神假设有一个各位数字各不相同的四位数,把所有数字从大到小排序后得到A,从小到大排序后得到B,然后用A-B替换原来这个数,并且继续操作.例如:从1234出
问题出在这一步:for(j=0;j9999)&&(n