您的位置:首页 > 其它

POJ2403

2016-07-24 23:40 239 查看
问题描述:对每个给定的字符串赋予指定的值,在给出的一段文字中,对每出现一次给定的字符串,则将对应的值累加,直至遍历完该段文字,得到最后的累加总和值

解题思路:通过结构体将所给的字符串和指定值进行绑定在一起,再利用字符数组的比较,来实现值的累加。

code(c)

#include<stdio.h>
#include<string.h>

struct word
{
char a[20];//单词
int date;//值
}w[10000];

int main()
{
//freopen("in.txt","r",stdin);
//freopen("out.txt","w",stdout);
int i,j,sum,m,n;
char term='.',str[1000];
memset(str,'\0',1000);
scanf("%d%d",&m,&n);
for(i=0;i<m;i++){
scanf("%s%d",&w[i].a,&w[i].date);
}
while(n--){
sum=0;
for(i=0;;i++){
scanf("%s",str);
for(j=0;j<m;j++)
if(!strcmp(str,w[j].a))
sum+=w[j].date;
if(!strcmp(str,"."))
break;
}
printf("%d\n",sum);
}
//fclose(stdin);
//fclose(stdout);
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: