编写一个提供旅游景点信息的应用程序，可以通过输入城市名称和景点类型来获取相应的景点信息。
此应用程序的基本要素包括：数据库存储景点信息、用户输入的城市名称和景点类型用于查询、输出匹配的景点信息。具体步骤如下：

1. 创建数据库并添加景点信息，包括景点名称、城市、类型、描述、地址、联系方式等等。
2. 设计用户界面，可使用命令行界面或网页界面，用户输入城市名称和景点类型。
3. 编写查询程序，使用输入的城市名称和景点类型在数据库中查找匹配的景点信息。
4. 输出匹配的景点信息到用户界面上，显示景点名称、描述、地址、联系方式等信息。

参考代码：

```python
import sqlite3
    
def search_attractions(city, attraction_type):
    with sqlite3.connect('attractions.db') as conn:
        c = conn.cursor()
        c.execute("SELECT * FROM attractions WHERE city=? AND type=?", (city, attraction_type))
        rows = c.fetchall()
        return rows
    
city = input("请输入城市名称：")
attraction_type = input("请输入景点类型：")
attractions = search_attractions(city, attraction_type)
print("查询结果：")
for a in attractions:
    print("名称：", a[1])
    print("描述：", a[2])
    print("地址：", a[3])
    print("联系方式：", a[4])
    print()
```