【答案解析】解析:main()函数中,各个语句执行过程如下: ①A a(2)定义对象a,使用默认构造函数A(int n=0),使用参数2初始化m_n,即a.m_n=2,输出字符'd'; ②Ab定义对象b,使用默认构造函数A(int n=0),使用默认参数0初始化m_n,即b.m_n=0,输出字符'd'; ③const A c(a)定义对象c,使用A类的另一个构造函数A(const A&a),将c.m_n赋值为a.m_n,即c.m_n=2,输出字符'c'; ④const A &d=c定义对象d引用c对象,所以d、c是同一对象,没有构造函数的调用; ⑤const A e=b定义对象e,使用编译器的默认赋值运算符将b对象赋值给一个临时对象,然后使用构造函数A(const A &a)将临时对象赋给e,输出字符'c'; ⑥b=d使用编译器的默认赋值运算符将d对象赋给b,没有构造函数的调用。 综上,程序运行结果为:ddcc。故本题答案为B选项。