13 条题解

  • 5
    @ 2023-9-28 10:56:26

    主打的就是理解

    #include<stdio.h>
    int main(){
    	int a,b,max,min;
    	scanf("%d %d",&a,&b);
    	if(a>b){
    		max=a;
    		min=b;
    	}else{
    		max=b;
    		min=a;
    	}
    	
    	for(int i=min;i>0;i--){
    		if(a%i==0&&b%i==0){
    			printf("%d",i);
    			break;
    		}
    	}
    	
    	return 0;
    }
    
    • 1
      @ 2024-12-4 21:24:24

      #include<stdio.h> int main() { int A,B; scanf("%d %d",&A,&B); int min; int d; if(A>B) { min=B; } else { min=A; } for(int i=1;i<=min;i++) { if(A%i0&&B%i0) { if(i>d) { d=i; } } } printf("最大公约数为:%d",d); return 0; }

      • 0
        @ 2025-9-6 11:11:18

        一点注释,希望对看不懂的哥们有帮助 #include<stdio.h>

        int main()

        {

        int a,b,max,min;

        scanf("%d %d",&a,&b);//开始判断大小

        if(a>b)

        {

        max=a;

        min=b;

        }

        else

        {

        max=b;

        min=a;

        }

        //极值判断完毕,开始求最大公约数

        for(int i=min;i>0;i--)//最大公约数再大也不能比min大

        {

        if (a%i0&&b%i0)//i同时满足可以整除a,b {

        printf("%d",i);

        break;//i从大到小一个个试,第一次符合条件的便是最大公约数,直接break,不要再继续输出了 }

        }

        return 0;

        }

        • 0
          @ 2025-7-2 17:59:30

          #include<stdio.h> int main() { int a,b,c; scanf("%d %d",&a,&b); c=a%b; if(c==0) printf("%d",b); else if(c!=0) { while(c!=0) { c=a%b; a=b; b=c; } printf("%d",a); }

          return 0;
          

          }

          • 0
            @ 2025-3-17 8:59:55
            #include <stdio.h>
            
            int main() {
                int A, B, temp;
                scanf("%d %d", &A, &B);
                while (B != 0) {
                    temp = B;
                    B = A % B;
                    A = temp;
                }
                printf("%d\n", A);
                return 0;
            }
            辗转相除法:用较大数除以较小数得到商和余数,再用除数和余数反复做除法运算,当余数为0时,取当前算式除数为最大公约数
            
            • 0
              @ 2024-4-24 22:23:27
              #include <stdio.h>
              int gcd(int a,int b)
              {
                  int c=1,max,min;
                  max=(a>b)?a:b;
                  min=(a>b)?b:a;
                  while (c!=0)
                  {
                      c=max%min;
                      max=min;
                      min=c;
                  }
                  return max;
              }
              int main()
              {
                  int a,b;
                  scanf("%d%d",&a,&b);
                  printf("%d",gcd(a,b));
              }//
              
              • 0
                @ 2024-1-11 10:49:17
                #include<stdio.h>
                int main(){
                	int A,B,t;
                	scanf("%d %d",&A,&B);
                	t=A<B?A:B;
                	for(int i=t;i;i--){
                		if(A%i==0&&B%i==0)
                	{
                		printf("%d",i);
                		break; }
                	} 
                	
                	return 0;
                }
                
                
                
                
                • 0
                  @ 2023-8-22 14:31:10

                  #include<stdio.h> int main() { int a,b,t; scanf("%d %d",&a,&b); while(b!=0) { t=a%b; a=b; b=t;

                  } 
                   
                       printf("%d",a);
                  
                  
                  
                   
                  return 0;
                  

                  }

                  • 0
                    @ 2023-8-22 8:02:24
                    #include<stdio.h>
                    int main(){
                        int A,B,C;
                        scanf("%d %d",&A,&B);
                        for(C=A;A%C!=0||B%C!=0;C--){
                            ;
                        }printf("%d",C);
                        return 0;
                    }
                    
                    • 0
                      @ 2023-8-20 18:40:01

                      #include<stdio.h> int main() { int a,b,temp,i; scanf("%d %d",&a,&b); if(a<b){ temp=a; a=b; b=temp; } for(i=b;i>0;i--) if(a%i0&&b%i0) { printf("%d",i); break; } return 0;

                      }

                      • 0
                        @ 2023-8-13 21:26:50

                        #include<stdio.h> int main() { int max,min, a,b,j; scanf("%d%d",&a,&b); max=a;min=b; if(a<b) { max=b;min=a; } for(int i=min;i>0;i--) { if(max%i0){ if(min%i0){ j=i;printf("%d",j);break; } } } return 0; }

                        • 0
                          @ 2022-10-7 17:01:11

                          #include<stdio.h> int main(){ int max,min, a,b,j; scanf("%d%d",&a,&b); max=a;min=b; if(a<b){ max=b;min=a; }

                          for(int i=min;i>0;i--)
                          {
                          	if(max%i==0){
                          		if(min%i==0){
                          			j=i;printf("%d",j);break;
                          		}
                          	}
                          }
                          return 0;
                          

                          }

                          • -2
                            @ 2022-10-4 14:43:00

                            辗转

                            • 1

                            信息

                            ID
                            41
                            时间
                            1000ms
                            内存
                            128MiB
                            难度
                            5
                            标签
                            递交数
                            3243
                            已通过
                            1294
                            上传者