17-12-1作业

2017-12-04  本文已影响0人  花城丶

作业一:

题目:
现有1角 2角 5角
凑出两元
有哪些可能
例如:
0,0,4
0,5,2
0,10,0
#include<stdio.h>
int main()
{
    int i,j,k,sum=0;//定义ijk,用来表示一角,两角,五角要用到的张数
                    //sum记录一共多少方法 
    for(i=0;i<=20/1;i++){//i的取值范围为0~20 
        for(j=0;j<=20/2;j++){//j的取值范围为0~10 
            for(k=0;k<=20/5;k++){//k的取值范围为0~4 
                if(i+2*j+5*k==20){//判断循环结果相加是否为20 
                sum++; //每循环一次,方法就加一 
                printf("%d %d %d\n",i,j,k);//最后输出可以用到的纸张数 
                } 
            }
        }
    }
    printf("共有%d组合方法",sum);
    return 0;
}

作业二:

题目:用户输入两个数,程序输出它们的最大公约数
#include<stdio.h>//最大公约数:一个数既能整除A,又能整除B 
int main(){     //碾转相除法 
    int x,y,X,i,I;
    printf("请输入两个整数:");
    scanf("%d %d",&x,&y);
    X=x;    //保持x的初始值 
    if(x<y){//判断x与y的大小 
        x=y;//如果x<y,将y的值赋给x 
        y=X;//将X(即x的初始值)赋给y 
    }
    for(i=2;i<=y;i++){      //1是所有整数的公约数;i必须<=两者之中的最小数; 
        if(x%i==0&&y%i==0){ //i既能整除x,又能整除y,即:x和y对i分别取余=0 
            I=i;            //防止出现3,5之类的数 
        }
    }
    printf("最大公约数为:%d",I);
    return 0;
}
上一篇 下一篇

猜你喜欢

热点阅读