c语言上机练习-输出梯形求助

draw里的代码为参考代码,main()里的代码为何输入44444输出*?
int draw(){
    int h;
    while (scanf_s("%d", &h) != EOF){
        int row = h;
        int col = h + (h - 1) * 2;
        for(int i = 0; i < row; ++i){
            for(int j = 0; j <col; ++j){
                if(j < col - (h + 2 * i)){
                    printf(" ");
                } else{
                    printf("*");
                }
            }
            printf("\n");
        }
    }
    return 0;
}

int main(){
    int h;
    h = scanf_s("%d", &h);
    if(h >= 1 && h <= 1000){
        int row = h;
        int col = h + (h - 1) * 2;
        for(int i = 0; i < row; ++i){
            for(int j = 0; j <col; ++j){
                if(j < col - (h + 2 * i)){
                    printf(" ");
                } else{
                    printf("*");
                }
            }
            printf("\n");
        }
    }
    else{
        printf("请重新输入h(1<=h<=1000");
    }
    return 0;
}

 

	int h; scanf_s("%d", &h);
	if (h >= 1 && h <= 1000){
		int row = h;
		int col = h + (h - 1) * 2;
		for (int i = 0; i < row; ++i){
			for (int j = 0; j <col; ++j){
				if (j < col - (h + 2 * i)){
					printf(" ");
				}
				else{
					printf("*");
				}
			}
			printf("\n");
		}
	}
	else{
		printf("请重新输入h(1<=h<=1000");
	}