异度部落格

学习是一种生活态度。

0%

使用setprecision(n)可控制输出流显示浮点数的数字个数。C++默认的流输出数值有效位是 6。 如果setprecision(n)setiosflags(ios::fixed)合用,可以控制小数点右边的数字个数。setiosflags(ios::fixed)是用定点方式表示实数。 如果与setiosnags(ios::scientific)合用, 可以控制指数表示法的小数位数。setiosflags(ios::scientific)是用指数方式表示实数。 例如,下面的代码分别用浮点、定点和指数方式表示一个实数:

#include <iostream.h>
#include <iomanip.h> //要用到格式控制符

void main()
{
double amount = 22.0/7;
cout <<amount <<endl;
cout <<setprecision(0) <<amount <<endl
<<setprecision(1) <<amount <<endl
<<setprecision(2) <<amount <<endl
<<setprecision(3) <<amount <<endl
<<setprecision(4) <<amount <<endl;

cout <<setiosflags(ios::fixed);
cout <<setprecision(8) <<amount <<endl;
cout <<setiosflags(ios::scientific) <<amount <<endl;


cout <<setprecision(6); //重新设置成原默认设置
}

运行结果为:

3.14286
3
3
3.1
3.14
3.143
3.14285714
3.14285714e+00

在用浮点表示的输出中,setprecision(n)表示有效位数。 第 1 行输出数值之前没有设置有效位数,所以用流的有效位数默认设置值 6: 第 2 个输出设置了有效位数 0,C++最小的有效位数为 1,所以作为有效位数设置为 1 来看待: 第 3 ~ 6 行输出按设置的有效位数输出。在用定点表示的输出中,setprecision(n)表示小数位数。 第 7 行输出是与setiosflags(ios::fixed)合用。所以setprecision(8)设置的是小数点后面的位数,而非全部数字个数。 在用指数形式输出时,setprecision(n)表示小数位数。 第 8 行输出用setiosflags(ios::scientific)来表示指数表示的输出形式。其有效位数沿用上次的设置值 8

资料来源:
http://zhidao.baidu.com/question/31863763.html http://topic.csdn.net/u/20101014/10/0df6e43c-01a1-4354-b282-94d86e3f908d.html

有一个整数数组,保存 1 到 100 个整数。然后取出任意一个数字,让你用最快的办法找到取出的是哪个数字?

答案: 5050 减去 99 个数字的和即可得出结果.

PS:答案并不固定,只是本人举得老师的想法挺巧妙的,所以记录的说

在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: SQL 网络接口, error: 26 - 定位指定的服务器/实例时出错)

解决方法:开始-> 所有程序-> Ms   Sql   Server-> 配置工具-> sql   server 外围应用配置器-> 服务和连接的外围应用配置器-> 打开 MSSQLSERVER 节点下的 Database   Engine   节点,先择 "远程连接 ",接下建议选择 "同时使用 TCP/IP 和 named   pipes ",确定后,重启数据库服务就可以了.

如何还是不行就是 connectionString 出问题了

将 Excel 导入 SQL Server 1)外围应用配置器的设置。 从"功能外围应用配置器"中选择"启动 OPENROWSET 和 OPENDATASOURCE 支持"选项。 2) 接受数据导入的表已经存在。

insert into t1 select * from OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,
'Excel 5.0;HDR=YES;DATABASE=c://test.xls',sheet1$);

导入数据并生成表。

select * into t1 from OPENROWSET('MICROSOFT.JET.OLEDB.4.0',
'Excel 5.0;HDR=YES;DATABASE=c://test.xls',sheet1$);

导入 Excel 中指定的列到数据库表中指定的列。

INSERT INTO t1(a1,a2,a3) SELECT a1,a2,a3 FROM OPENROWSET 'MICROSOFT.JET.OLEDB.4.0' ,'Excel5.0; HDR=YES; DATABASE=c://test.xls',sheet1$);

PS:导入时记得关闭 Excel,默认情况下 Excel 的首行作为表头

【题目描述】1000瓶药水,其中至多有1瓶剧毒,现在给你10只小狗在24小时内通过小狗试药的方式找出哪瓶药有毒或者全部无毒(小狗服完药20小时后才能判断是否中毒)

【题目来源】08腾讯

【题目分析】 方法一: 将药水进行二进制编号,比如第一瓶是0000000001,第十瓶是0000001010...... 将小狗1~10的编号,一号小狗对应二进制数的第一位,二号小狗对应第二位,以此类推. 比如:第一瓶药的第十位是1,则让第十只小狗喝下;第十瓶药的第八位和第十位是1,则让编号8,10的小狗喝下,依此类推 例如:第1,2,3条狗狗死了,那么组合成的二进制数为1110000000,转换成十进制就是896瓶药有毒

方法二: 将药分成10份,每份100瓶,在第零个小时将每一份药给一个小狗喝(也就是每条狗试100瓶) 过一个小时后,将第一份药平均分十份(也就是每份十瓶),每份让小狗喝下,第二份、第三份...亦如此类推 在过一个小时后,将第一份药的第一份药分十份(也就是每份一瓶),每份让小狗喝下,第二份、第三份...亦如此类推............ 过二十个小时后,比如第二条狗死了,那有毒的药就在第二个100瓶里面 过二十一个小时后,比如第四条狗死了,那有毒的药就在第二个100瓶里的第四个10瓶里 过二十二个小时后,比如第八条狗死了,那有毒的药就在第二个100瓶里的第四个10瓶里的第8瓶

转自:http://topic.csdn.net/u/20100919/10/b6561d69-bf8b-4e1a-a2a9-743f4edd52ff.html

【题目描述】1到N自然数排序。要求时间复杂度为O(n),空间复杂度为O(1)

【题目来源】华为

【题目分析】

【代码】

/**
1到N自然数排序(华为面试题)
要求:时间复杂度为O(n),空间复杂度为O(1)
*/
#include <iostream>
using namespace std;
int array[10] = {0, 2, 4, 6, 9, 8, 1, 3, 7, 5};
int n = 10;
void sort()
{
int t;
for(int i = 0; i < n; i++)
{
while(array[i] != i)
{
t = array[array[i]];
array[array[i]] = array[i];
array[i] = t;
}
}
}
void output()
{
for(int i = 0; i < 10; i++)
cout << array[i];
cout << endl;
}
int main()
{
sort();
output();
return 0;
}

什么是 MEF?

Managed Extensibility Framework(MEF)可以很容易的构造可扩展性的应用程序。MEF 提供了发现和组合能力,因此你可以选择来加载插件。

MEF 解决了什么问题?

  • MEF 赠送了一种简单的在运行时扩展问题。直到现在,任何程序你想支持插件模式,需要构建自己的架构。这些插件经常是特定应用的并且不能被多种实现重用的。
  • MEF 提供一个标准方式来让程序暴露自己,消耗外部扩展。扩展,天生的,能被不同的程序重用。然而,一个扩展需要实现特定应用。扩展可以依赖另一个扩展,MEF 确保它们以正确的顺序同时被装配。
  • MEF 允许在查询和筛选中使用额外的元数据来标记扩展。

MEF 如何工作?

  • 粗略的说,MEF 的核心由一个 catalog(目录)和一个 CompositionContainer 组成。一个 catalog 负责查找扩展,container 负责协调创建和符合的依赖。
  • MEF 第一个类是 ComposablePart。一个 Composable part 提供了一个或多个 Exports,也可以依赖于一个或多个由 Imports 提供的扩展。一个 composable part 也管理可以是 object 或给定类型的实例。MEF,然而,是一个可扩展的,额外的 ComposablePart 实现,它依附于 Import/Export 契约。
  • Exports 和 Imports 每个都有一个契约(Contract)。契约(Contract)是 exports 和 Imports 之间的桥梁。一个 export 契约由用来过滤的元数据组成。例如,它可以指定一个 export 提供的指定能力。
  • MEF 的容器和 Catalogs 交互来访问 composable parts。容器自己解决一部分依赖并暴露 Exports 给外界。如果你愿意,你可以自由去增加 composable part 的实例。
  • 一个 ComposablePart 返回一个 catalog,它在你的程序中很像一个扩展。它有宿主程序提供的 Imports,然后 Export 其他。
  • 默认 MEF composable part 实现使用 attribute 元数据来声明 exports 和 imports。这允许 MEF 来决定哪个 parts, imports 和 exports 是完全可用的。

C & 传统 C++

#include //设定插入点
#include //字符处理
#include //定义错误码
#include //浮点数处理
#include //文件输入/输出
#include //参数化输入/输出
#include //数据流输入/输出
#include //定义各种数据类型最值常量
#include //定义本地化函数
#include
//定义数学函数
#include //定义输入/输出函数
#include //定义杂项函数及内存分配函数
#include //字符串处理
#include //基于数组的输入/输出
#include //定义关于时间的函数
#include //宽字符处理及输入/输出
#include //宽字符分类

标准 C++ (同上的不再注释)

#include //STL 通用算法
#include //STL 位集容器
#include
#include
#include
#include
#include //复数类
#include
#include
#include
#include
#include //STL 双端队列容器
#include //异常处理类
#include
#include //STL 定义运算函数(代替运算符)
#include #include //STL 线性列表容器
#include
//STL 映射容器
#include
#include //基本输入/输出支持
#include //输入/输出系统使用的前置声明
#include
#include //基本输入流
#include //基本输出流
#include //STL 队列容器
#include //STL 集合容器
#include //基于字符串的流
#include //STL 堆栈容器
#include //标准异常类
#include //底层输入/输出支持
#include //字符串类
#include //STL 通用模板类
#include //STL 动态数组容器
#include
#include
using namespace std;

C99 增加

#include //复数处理
#include //浮点环境
#include //整数格式转换
#include //布尔环境
#include //整型环境
#include //通用类型数学宏

Qt 开发库是一个使用广泛的跨平台 GUI 开发库,可用于 Windows、Linux、Mac OSX 和许多手持平台。QT 具有良好结构化(但灵活)的面向对象的结构、清晰的文档以及直观的 API。自 Trolltech 公司被 Nokia 收购后,Qt 成为 Nokia 旗下的一个部门。

Python 的默认 GUI 是 Tkinter,PyQt 是跨平台应用程式框架 Qt 的 Python 绑定版本,同时也是 PyKDE(KDE API 的 Python 绑定)的基础。PyQt 支持 Linux 操作系统和其他 Unix ,以及 Mac OS X 操作系统和微软 Windows 。

#!/usr/bin/env python
#PyQt Hello World
import sys
from PyQt4 import QtCore,QtGui
app = QtGui.QApplication(sys.argv)
label = QtGui.QLabel("Hello World", None)
label.show()
sys.exit(app.exec_())