编写程序,输入m、n的值,计算并输出:
#include <stdio.h>
int multiple(int n){
unsigned long long m=1;
for(int i=n;i>=1;i--){
m*=i;
}
return m;
}
int main(void){
int m,n;
int result;
printf("请输入m、n的值:");
scanf("%d%d",&m,&n);
if(m<n){
m=m+n;
n=m-n;
m=m-n;
}
result=multiple(m)/(multiple(m-n)*multiple(n));
printf("result=%d",result);
}
易错:m的类型用unsigned long long ,如果用int可能会溢出