希望用c#语言表达出来

编一程序用以输出所有各位数码阶乘之和等于其自身的三位数。
如:145   (145=1!+4!+5!)。

    for (int n = 100;n<1000;n++){
        int a=n/100;
        int b=n/10%10;
        int c=n%10;
        for(int j=a-1;j>1;j--)
        {
            a*=j;
        }
        for(int j=b-1;j>1;j--)
        {
            b*=j;
        }
        for(int j=c-1;j>1;j--)
        {
            c*=j;
        }
        if (a+b+c == n){
            Console.Write(n+",");
        }



#include <head.h>
int main(int argc, const char *argv[])
{
    int i = 100;
    int bai = 0;
    int shi = 0;
    int ge = 0;
    int j = 0;
    int sum = 0;
    for (i = 100;i<999;i++){
        bai = i / 100;
        for(j = bai-1;j>0;j--){
            bai = bai*j;

        }
        shi = (i/10)%10;
        for(j = shi-1;j>0;j--){
            shi = shi*j;
        ge = i%10;
        }
        for(j = ge-1;j>0;j--){
            ge = ge*j;
        }
        sum = bai+shi+ge;
        if (sum == i){
            printf("%d、",i);
        }
    }
    return 0;
}