博客园 首页 私信博主 显示目录 隐藏目录 管理

第四周PTA作业编程题 2020秋C语言作业4-计算机

7-1 C程序设计 习题 7.3 函数实现两个数的最大值 (2分)

#include<stdio.h>
int max(int a,int b)
{
    printf("%d",a>b?a:b);
}
int main()
{
    int a,b;
    scanf("%d%d",&a,&b);
    max(a,b);
    return 0;
}

7-2 求组合数 (15分)

解法一:

#include <stdio.h>

double fact(int n) {
    int i;
    double result = 1.0;

    if (n == 0) {
        return 1.0;
    }
    for (i = 2; i <= n; i++) {
        result *= i;
    }

    return result;
}

int main(void) {
    int m, n;
    double result;

    scanf("%d %d", &m, &n);
    result = fact(n) / (fact(m)*fact(n - m));
    printf("result = %.0f\n", result);

    return 0;
}

解法二:

#include<stdio.h>
double fact (int number);
int main (void)
{
    int n,m;
    double result;
    scanf("%d %d",&m,&n);
    result = fact(n)/(fact(m)*fact(n-m));
    printf("result = %.0f",result);
    return 0;
}

double fact (int number)
{
	double i, result=1;
	for (i = 1; i <= number; i++){
		result = result * i;
	}
	return result;
}

7-3 求幂之和 (15分)

#include<stdio.h>
#include<math.h>
int main(){
    int n=0;
    
    scanf("%d",&n);
    double y;
    int sum=0;
    for(y=1;y<=n;y++){
        sum=sum+pow(2,y);
    }
    printf("result = %d"sum);
    
    return 0 ;
}
posted @ 2020-11-12 19:58  Jason_William  阅读(287)  评论(0)    收藏  举报