我还想问您一个问题,是关于杭电ACM 1004的。下面是我在网上看到的一个答案
#include<stdio.h>#include<string.h>chara[1000][16];staticintb[1000];voidmain(){intn,m...
#include<stdio.h>
#include<string.h>
char a[1000][16];
static int b[1000];
void main()
{
int n,max,i,j,m;
while(scanf("%d",&n)!=EOF)
{
getchar();
if(n= =0)break;
for(i=1;i<=n;i++)
{
b[i]=0;
gets(a[i]);
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
if(strcmp(a[i],a[j])==0)
b[i]++;
}
m=1;
max=b[1];
for(i=2;i<=n;i++)
if(max<b[i])
{ m=i;max=b[i];}
printf("%s\n",a[m]);
}
}
我想请教的是,char a[1000][16],为什么字符数组要定义成二维的,还有,为什么一个是1000一个却是16. 还有这个,static int b[1000],为什么要定义成静态的?谢谢了! 展开
#include<string.h>
char a[1000][16];
static int b[1000];
void main()
{
int n,max,i,j,m;
while(scanf("%d",&n)!=EOF)
{
getchar();
if(n= =0)break;
for(i=1;i<=n;i++)
{
b[i]=0;
gets(a[i]);
}
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
if(strcmp(a[i],a[j])==0)
b[i]++;
}
m=1;
max=b[1];
for(i=2;i<=n;i++)
if(max<b[i])
{ m=i;max=b[i];}
printf("%s\n",a[m]);
}
}
我想请教的是,char a[1000][16],为什么字符数组要定义成二维的,还有,为什么一个是1000一个却是16. 还有这个,static int b[1000],为什么要定义成静态的?谢谢了! 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询