1 solutions

  • 0
    @ 2025-11-5 15:50:12

    C :

    #include<stdio.h>
    #include<string.h>
    int main()
    {
    	char a[10][10][15],b[10][1001],c[10][10][1001];
    	int i,j,k,l[10],n,m,p[10];
    	scanf("%d",&n);
    	getchar();
    	for(i=0;i<n;i++)
    	gets(b[i]);
    	for(i=0;i<n;i++)
    	l[i]=strlen(b[i]);
    	for(i=0;i<n;i++)
    	{
    		for(j=0,k=0,m=0;j<l[i];j++)
    		{
    			if(b[i][j]!=' ')
    			{
    				a[i][k][m]=b[i][j];
    				m++;
    			}
    			else
    			{
    				a[i][k][m]='\0';
    				k++;
    				p[i]=k+1;
    				m=0;
    			}
    		}
    	}
    	for(i=0;i<n;i++)
    	{
    		for(j=0;j<p[i];j++)
    		{
    			k=strlen(a[i][j]);
    			for(m=0;m<k;m++)
    			c[i][j][m]=a[i][j][k-m-1];
    			c[i][j][m+1]='\0';
    			strcpy(a[i][j],c[i][j]);
    		}
    	}
    	for(i=0;i<n;i++)
    	{
    		for(j=0;j<p[i];j++)
    		{
    			printf("%s",a[i][j]);
    			if(j!=p[i]-1)
    			printf(" ");
    		}
    		if(i!=n-1)
    		printf("\n");
    	}
    }
    
    • 1

    【创新型】第10章: 字符串 10.20 字符串反转(2)

    Information

    ID
    17230
    Time
    1000ms
    Memory
    128MiB
    Difficulty
    (None)
    Tags
    # Submissions
    0
    Accepted
    0
    Uploaded By