杭电ACM-2025

题目:

杭电ACM-2025_第1张图片
2025题

代码:

#include
#include
int main()
{
    char a[1000],b[1000];
    int i,len,max,k;
    while(gets(a)!=NULL)
    {
        len=strlen(a);
        max=a[0];
        for(i=0;imax)
            {
                max=a[i];
            }
        }
        for(i=0,k=0;a[i]!='\0';i++)
        {
            b[i+k]=a[i];
            if(a[i]==max)
            {
                b[i+k+1]='(';
                b[i+k+2]='m';
                b[i+k+3]='a';
                b[i+k+4]='x';
                b[i+k+5]=')';
                k+=5;
            }
        }
        b[i+k]='\0';
        for(i=0;b[i]!='\0';i++)
            printf("%c",b[i]);
        printf("\n");
        memset(a,0,sizeof(a));
        memset(b,0,sizeof(b));
    }
    return 0;
}

注意:
格式输出问题:

while(gets(str)!=NULL)                    NULL返回值对应的是char
while(scanf("%d",&x)!=EOF)         EOF返回值对应却是int

此题2个数组为了就是让数组的地址往后累加 给(max)留出位子
还要注意对于字符串数组不要忘记'\0'

你可能感兴趣的:(杭电ACM-2025)