当前位置:首页 > 英文周记 > 正文内容

presentationerror的简单介绍

更新时间:2026-07-17 17:57:35 周记网4年前 (2023-01-19)英文周记179

Presentation Error 是什么错误,请指教

错误分析:通常是由有问题的驱动程序引起的(比如罗技鼠标的Logitech MouseWare 9.10和9.24版驱动程序会引发这个故障). 同时,有缺陷的内存、 损坏的虚拟内存文件、 某些软件(比如多媒体软件、杀毒软件、备份软件、DVD播放软件)等也会导致这个错误.

◇解决方案:检查最新安装或升级的驱动程序(如果蓝屏中出现"acpi.sys"等类似文件名, 可以非常肯定时驱动程序问题)和软件; 测试内存是否存在问题; 进入"故障恢复控制台", 转到虚拟内存页面文件Pagefile.sys所在分区, 执行"del pagefile.sys"命令, 将页面文件删除; 然后在页面文件所在分区执行"chkdsk /r"命令;进入Windows后重新设置虚拟内存.如果在上网时遇到这个蓝屏, 而你恰恰又在进行大量的数据下载和上传(比如:网络游戏、BT下载), 那么应该是网卡驱动的问题, 需要升级其驱动程序.

presentationerror的简单介绍

为什么Presentation Error

最后一组数据之后不要输出空行,因为题目中说的是 there is a blank line between outputs (注意是 between)

可以设一个计数器 prob,表示是第几组数据。初始值为0.

cout sum endl endl;

改成:

if (prob++) cout endl;

cout sum endl;

百练的题目,我的答案总是输出presentation error,请各位大神帮忙看看错在哪

题目输出没有空格,你有空格所以错了

presentation error就是多少了空格和换行符,算法和结果是正确的

#include stdio.h

#include string.h

int main()

{

int num[3] = {1,2,3};

int sum[3] = {0,0,0};

int temp;

int n,i,j;

int max;

char a[10],b[10],c[10];

scanf("%d",n);

getchar();

while(n--)

{

scanf("%s %s %s",a,b,c);

if(strcmp(a,"right") == 0)

sum[0] = sum[0] + 10;

if(strcmp(a,"wrong") == 0)

sum[0] = sum[0] - 10;

if(strcmp(b,"right") == 0)

sum[1] = sum[1] + 10;

if(strcmp(b,"wrong") == 0)

sum[1] = sum[1] - 10;

if(strcmp(c,"right") == 0)

sum[2] = sum[2] + 10;

if(strcmp(c,"wrong") == 0)

sum[2] = sum[2] - 10;

}

max = sum[0];

if(sum[0] == sum[1] sum[1] == sum[2])

{

printf("(1,%d)(2,%d)(3,%d)\n",sum[0],sum[1],sum[2]);

return 0;

}

if(sum[0] != sum[1] sum[1] != sum[2] sum[2] != sum[0])

{

for(i = 0; i 2; i++)

for(j = 0; j 2 - i; j++)

if(sum[i] sum[j])

{

temp = sum[i];

sum[i] = sum[j];

sum[j] = temp;

temp = num[i];

num[i] = num[j];

num[j] = temp;

}

for(i = 0; i 3; i++)

printf("(%d,%d)\n",num[i],sum[i]);

return 0;

}

if(sum[0] == sum[1] sum[1] != sum[2])

{

if(sum[1] sum[2])

printf("(3,%d)\n(1,%d)(2,%d)\n",sum[2],sum[0],sum[1]);

else

printf("(1,%d)(2,%d)\n(3,%d)\n",sum[0],sum[1],sum[2]);

return 0;

}

if(sum[0] == sum[2] sum[2] != sum[1])

{

if(sum[2] sum[1])

printf("(2,%d)\n(1,%d)(3,%d)\n",sum[1],sum[0],sum[2]);

else

printf("(1,%d)(3,%d)\n(2,%d)\n",sum[0],sum[2],sum[1]);

return 0;

}

if(sum[1] == sum[2] sum[2] != sum[0])

{

if(sum[2] sum [0])

printf("(1,%d)\n(2,%d)(3,%d)\n",sum[0],sum[1],sum[2]);

else

printf("(2,%d)(3,%d)\n(1,%d)\n",sum[1],sum[2],sum[0]); //空格去掉

}

return 0;

}

杭电1001,总说presentation error,想问一下出现如 runtime error, presentation error等这些错误该怎么解

runtime error 是运行错误,程序不能正确运行,比如有指针非法访问等

presentation error 是格式错误,输出的的结果是对的,只是由于多了或少了几个空格回车等,详细检查一下输出格式就行。

c++中为什么会Presentation Error呢?

有时候在电脑上写的程序运行成功,但在OJ平台上却会提示Presentation Error。

1.思路是对的,且运行时间符合要求

2.答案和标准结果非常接近,也就是说最可能是因为,在输出结果中,多了或少了不必要的空格或者回车或者其他,OJ平台对格式的检查非常严格,所以一定要认真检查程序的输出结果是否与标准一致。

Presentation Error

我写了个,逐字符判断的:

尴尬,提交了几次才Accept;

#includeiostream

using namespace std;

void Change(char c)

{

char c1;

switch(c)

{

case 'A':

case 'W':

case 'F':

cout'I';

break;

case 'C':

cout'L';

break;

case 'M':

cout'o';

break;

case 'S':

cout'v';

break;

case 'D':

case 'P':

case 'G':

case 'B':

cout'e';

break;

case 'L':

cout'Y';

break;

case 'X':

cout'u';

break;

case 'E'://主要是这里对于END的判断

if((c=getchar())=='N')

{

c1=c;

if((c=getchar())=='D')

exit(0);

else

{

cout'E';

Change(c1);

Change(c);

}

}

else

{

cout'E';

Change(c);

}

break;

default:

coutc;

break;

}

}

/////////////MAIN////////////

int main()

{

char c;

while(1)

{

c=getchar();

Change(c);

}

return 0;

}

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。