This query will return the number of tables in the specified database.
USE YourDatabaseName
SELECT COUNT(*) from INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'
Following is another way this can be done for all user tables with SQL Server 2008+. The reference is here.
SELECT COUNT(*) FROM sys.tables