标题:[求助]这个程序在tc上运行的时候 结果是对的 但是每次后面都有null pointe ...
取消只看楼主
缺月挂疏桐
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2007-3-23
 问题点数:0 回复次数:2 
[求助]这个程序在tc上运行的时候 结果是对的 但是每次后面都有null pointer assig

为什么每次都有null pointer assignment出现在正确答案后面呢
我查的说这是没有给指针分配空间 可是也没有指针呀
真的很费解呀 呜呜


#include "stdio.h"
#include "string.h"
main()
{int i=0,j,n,s=0,y,c[17]={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};
char a[100][20],b[11]="10X98765432",t='\n',d[100][20];
scanf("%d%c",&n,t);

do{
scanf("%s",a[i]);
if(strlen(a[i])==18)
{for(j=0;j<17;j++)
{s+=(a[i][j]-48)*c[j];
}
y=s%11;
if(b[y]==a[i][17])
printf("Valid\n");
else
printf("Invalid\n");
}
if(strlen(a[i])==15)
{if(a[i][12]==57&&a[i][13]==57)
{if(a[i][14]=='6'||a[i][14]=='7'||a[i][14]=='8'||a[i][14]=='9')
{for(j=0;j<6;j++)
{d[i][j]=a[i][j];
}
d[i][6]=49;d[i][7]=56;
for(j=6;j<15;j++)
{d[i][j+2]=a[i][j];
}
d[i][18]='\0';
for(j=0;j<17;j++)
{s+=(d[i][j]-48)*c[j];
}
y=s%11;
d[i][17]=b[y];
printf("%s",d[i]);
}

else
{for(j=0;j<6;j++)
{d[i][j]=a[i][j];
}
d[i][6]=49;d[i][7]=57;
for(j=6;j<15;j++)
{d[i][j+2]=a[i][j];
}
d[i][18]='\0';
for(j=0;j<17;j++)
{s+=(d[i][j]-48)*c[j];
}
y=s%11;
d[i][17]=b[y];
printf("%s",d[i]);
}
}
else
{for(j=0;j<6;j++)
{d[i][j]=a[i][j];
}
d[i][6]=49;d[i][7]=57;
for(j=6;j<15;j++)
{d[i][j+2]=a[i][j];
}
d[i][18]='\0';
for(j=0;j<17;j++)
{s+=(d[i][j]-48)*c[j];
}
y=s%11;
d[i][17]=b[y];
printf("%s",d[i]);
}
}
i++;
}while(i<n);
}


搜索更多相关主题的帖子: pointer assig null 结果 
2007-03-23 19:48
缺月挂疏桐
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2007-3-23
得分:0 
哇哇  谁来帮我啊

2007-03-24 00:15
缺月挂疏桐
Rank: 1
等 级:新手上路
帖 子:19
专家分:0
注 册:2007-3-23
得分:0 
恩 现在解决拉 应该是数组越界了哈
谢谢啦

2007-03-24 21:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-126238-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.762582 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved