出现“很抱歉,word遇到错误,使其无法正常工作”怎么解决?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了出现“很抱歉,word遇到错误,使其无法正常工作”怎么解决?相关的知识,希望对你有一定的参考价值。

参考技术A

“很抱歉,word遇到错误,使其无法正常工作”是:

“Microsoft Office Word 遇到问题需要关闭的提示。原因和解决步骤如下:

一、可能是normal.dot模板损坏了。

解决办法:

1、删除你使用的用户名下的TEMP所有文件,OFFICE在你安装时的备份文件,清空所有系统的日记信息...也就是删除Normat.dot模板文件。 即删除C:\\Documents and Settings\\用户名\\Application Data\\Microsoft\\Templates\\Normal.dot文件;

2、点开始,在运行中输入“winword /a”可以启动word,此时不会有无法打开对话框出现,将word文档另存一下,会提示是否替换normal.dot,这时word用新的模板替换损坏的那个,选择是。这样word就可以正常启动了。

二、可能是注册表包含了OFFICE的错误信息,而注册表无法智能更新。

解决办法:

1、进入控制面板的添加删除程序,WINDOWS组件,随便选择一个把打沟取消掉,确定,更新以后,在进入添加删除程序的WINDOWS组件,把打勾还原,再确定。其作用是当你在添加或者删除WINDOWS组件的时候,系统会自动更新注册表的内容,把错误信息删除,更新。(当然,WINDOWS优化大师的医生程序也可以删除非法注册表信息,但不及系统自己搞定。)

2、确认上面所有操作之后,你再重新安装OFFICE。

三、如果还不能搞定,我这里还有一绝招,而且超简单。

解决办法:

点开始,在运行中输入“winword /a”可以启动word,我们打开“工具/选项/常规”,找到“打开时更新自动方式的链接”这一选项,看见前面选择框里的对勾了吗?直接把它去掉就行了。保存退出。重新启动试一下,一切正常,OK!!

normal.dot是一个自动保存模板,比如写着word文档时电脑非正常关机,再启动计算机后word会启动关机前保存的文档,使你的损失降为最低。(顺便说一句,word默认10分钟自动保存一次,我们可以到“工具/选项/保存”,将自动保存时间间隔修改为1分钟,这样可以把非正常关机引起的文档损失降为最小。)

寻找单独出现的数——通用技巧

请使用最快的方法,寻找单独出现的数。
例1:在一组数据中,只有一个数出现一次,其余数都出现两次,请找出这个单独出现的数。
例2:在一组数据中,只有一个数出现一次,其余数都出现三次,请找出这个单独出现的数。
例3:在一组数据中,只有一个数出现一次,其余数都出现四次,请找出这个单独出现的数。
例4:在一组数据中,只有一个数出现一次,其余数都出现五次,请找出这个单独出现的数。
...........

分析:
 像这种问题都可以通过排序来解决,但是毫无疑问,排序不是最快的方法。针对例1,大部分人都能想到,将所有数字全部异或,最后剩下来的数就是单独出现的数。但是问题一但升级,这种方法就行不通了,那么有没有一种通用的方法来解决这类问题呢???答案肯定是有的!!!

算法:
  既然这组数据中除了一个数出现一次外,其余数都出现了n次,借助一个bit[32] ,我们可以把这组数据中所有数据的第一个bit位统计出来加到一起放到bit[0]里面,以此类推,直到把所有bit位统计完为止。既然除一个数外其余数都出现n次,那么bit[i]%n所得到的结果就是单独的数中相应bit位上的结果。

以例2为例,有以下代码:
#include<stdio.h>
#include<stdlib.h>
#include<assert.h>


int check_along_num(int *arr,int len)
{
	assert(arr);
	int bit[32] = { 0 };                   
	int i = 0;
	int j = 0;
	int ret = 0;
	for (i = 0; i < len;i++)
	{
		for (j = 0; j < 32;j++)
		{
			bit[j] += ((arr[i] >> j)&1);        //统计数组中所有元素每一位上1的个数之和
		}
	}
	for (i = 0; i < 32;i++)
	{
		ret+=((1<<i)&((bit[i] % 3)<<i));         //出现三次的数,在bit[]中对应位上是3的倍数
	}
	return ret;
}
int main()
{
	int arr[10];
	for (int i = 0; i < 10;i++)
	{
		scanf("%d",&arr[i]);
	}
	int sz = sizeof(arr)/sizeof(arr[0]);
	int ret=check_along_num(arr,sz);
	printf("%d\n",ret);
	system("pause");
	return 0;
}


以上是关于出现“很抱歉,word遇到错误,使其无法正常工作”怎么解决?的主要内容,如果未能解决你的问题,请参考以下文章

Myeclipse出现错误

Java获取字符串中字母出现的个数

统计一篇英文文章内每个单词出现频率,并返回出现频率最高的前10个单词及其出现次数

Pycharm连接MySQL后出现不出现数据库或表,出现其他文件的问题

Linux 下装Oracle出现异常

poj上为何会出现Problem Disabled,如何解决呢?