求解释下面注释的两行代码、1,为什么是name后面加[0].2,i<t+1什么意思?

voidc(){intnum,a;charname[20];charapub[20];inti;intt=0;intm;FILE*fp;printf("1-按商品名称查询... void c()
{
int num,a;
char name[20];
char apub[20];
int i;
int t=0;
int m;
FILE *fp;
printf("1-按商品名称查询,2-按品牌名查询,3-按照商品编号查询\n");
printf("请输入要进行操作前的编号:\n");
scanf("%d",&num);
if((fp=fopen("s.txt","r"))==NULL)
{
printf("不能打开此文件\n");
}
for(t=0;!feof(fp);t++)
{
fscanf(fp,"%d%s%s%d%f%d",&SNum[t],&SName[t][0],&pub[t][0],&Anamber[t],&price[t],&Bnamber[t]);
}
if(num==1)
{
printf("请输入你要查询的商品名:\n");
//scanf("%s",&name[0]);
printf("商品编号 商品名称 商品品牌 库存数量 售价 已售数量\n");
//for(i=0;i<t+1;i++)
{
if((strcmp(SName[i],name))==0)
printf("%5d%8s%8s%9d%8.1f%5d\n",SNum[i],SName[i],pub[i],Anamber[i],price[i],Bnamber [i]);
}
}
展开
 我来答
maxdante
2013-06-19 · TA获得超过184个赞
知道答主
回答量:63
采纳率:0%
帮助的人:75.6万
展开全部
name[0]只是为了和上面的name[20]对应而已,因为要从[0]开始录入,所以是name[0],相当于指针用法。

至于为什么是t+1
因为上面的循环录入了0到t,所以有t+1个商品,要用 i = 0 来遍历 的话就必须是t+1
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式