zoukankan      html  css  js  c++  java
  • [刷题] PTA 7-44 黑洞数

    我的程序,一个用例通不过

     1 #include<stdio.h>
     2 void sort(int *a,int n);
     3 
     4 int main() {
     5     int num,a,b,c,count=1;
     6     scanf("%d",&num);
     7     while(num!=495&&num!=0) {
     8         a = num/100;
     9         b = num%100/10;
    10         c = num%100%10;
    11         int p[] = {a,b,c};
    12         sort(p,3);
    13         int g1,g2;
    14         g1 = 100*p[0]+10*p[1]+p[2];
    15         g2 = 100*p[2]+10*p[1]+p[0];
    16         num = g1-g2;
    17         printf("%d: %d - %d = %d
    ",count,g1,g2,num);
    18         count++;
    19     }
    20 }
    21 
    22 void sort(int *a,int n) {
    23     int i, j, t;
    24     for (i = 1; i < n; i++) {
    25         t = a[i];
    26         j = i - 1;
    27         while (j >= 0 && t > a[j]) {
    28             a[j+1] = a[j];
    29             j--;
    30         }
    31         a[j+1] = t;
    32     }
    33 }

    网友的程序,更加简洁:

     1 #include <stdio.h>
     2 int main(){
     3 int n,max,min,f=0,a,b,c,t;
     4 scanf("%d",&n);
     5 while(n!=495||f==0){
     6 a=n/100;b=n/10%10;c=n%10;
     7 if (a<b){
     8 t = a;
     9 a = b;
    10 b = t;
    11 }
    12 if (a<c){
    13 t = a;
    14 a = c;
    15 c = t;
    16 }
    17 if (b<c){
    18 t = b;
    19 b = c;
    20 c = t;
    21 }
    22 max = a*100+b*10+c;
    23 min = c*100+b*10+a;
    24 n = max - min;
    25 f++;
    26 printf("%d: %d - %d = %d
    ",f,max,min,n);
    27 }
    28 
    29 return 0;
    30 }
  • 相关阅读:
    个人冲刺8
    个人冲刺7
    个人冲刺6
    个人冲刺5
    个人冲刺4
    个人冲刺阶段3
    个人冲刺阶段2
    课下作业1-扩展阅读
    随手快递app开发的第四天
    随手快递app开发的第三天
  • 原文地址:https://www.cnblogs.com/cxc1357/p/10754032.html
Copyright © 2011-2022 走看看