函数的调用Fact()

#include<stdio.h>
unsigned long Fact(unsigned int n);
int main()
{
    int m;
    do{
       printf("Input m(m>0):");
       scanf("%d",&m);
    }while(m<0);/*增加对输入数据的限制,确保输入的数据为符号整数*/
    printf("%d!=%1u\n",m,Fact(m));/*无符号长整型格式输出阶乘值*/
    return 0;
}

unsigned long Fact(unsigned int n)
{
    unsigned int i;
    unsigned long result=1;
    for(i=2;i<=n;i++)
        result*=i;
    return result;
}

正确的输出
知识点:函数Fact()的返回类型与主函数中接收函数返回值的变量ret的类型不完全一致;
注意:函数Fact()的调用(当接收的函数变量数据表示超出范围时)。


版权声明:本文为qq_40398228原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。