#include<stdio.h>
int main( )
{
int a,b,c,d,e,f,g,h,i,j;
for(a=0;a<=1;a++)
for(b=0;b<=1;b++)
for(c=0;c<=1;c++)
for(d=0;d<=1;d++)
for(e=0;e<=1;e++)
for(f=0;f<=1;f++)
for(g=0;g<=1;g++)
for(h=0;h<=1;h++)
for(i=0;i<=1;i++)
for(j=0;j<=1;j++)
{
if(a==1&&b!=1) break;
if(c==0&&d!=0) break;
if(a==1&&c==1) break;
if((b==0&&d==0)||(b==1&&d==1)) break;
if(d+e+f+g+h<2) break;
if(c+g==1) break;
if(c+e+g+i>2) break;
if(e==1&&(f==0||g==0)) break;
if(f==1&&(g==1||h==1)) break;
if(i==1&&j==1&&h==0) break;
if(a) printf("A");
if(b&&a==1) printf(" B");
else if(b) printf("B");
if(c&&a+b!=0) printf(" C");
else if(c) printf("C");
if(d&&a+b+c!=0) printf(" D");
else if(d) printf("D");
if(e&&a+b+c+d!=0) printf(" E");
else if(e) printf("E");
if(f&&a+b+c+d) printf(" F");
else if(f) printf("F");
if(g&&a+b+c+d+e+f!=0) printf(" G");
else if(g) printf("G");
if(h&&a+b+c+d+e+f+g!=0) printf(" H");
else if(h) printf("H");
if(i&&a+b+c+d+e+f+g+h!=0) printf(" I");
else if(i) printf("I");
if(j&&a+b+c+d+e+f+g+h+i!=0) printf(" J");
else if(j) printf("J");
printf("\n");
}return 0;
}
8
#include<stdio.h>
#include<string.h>
int main( )
{
char as[200];
while(1)
{
gets(as);/*輸入字符串*/
if(strlen(as)==0) break;
int i,j,k;
for(i=0;as[i]!='\0';i++)
if(as[i]!=' ')
break;
else printf(" ");/*判斷最前面是否為空格*/
for(;as[i]!='\0';i++)
{
if(as[i]>='a'&&as[i]<='z')/*當遇到字母時*/
{ if(i-1<0||as[i-1]==' ')
printf("%c",as[i]-32);
else printf("%c",as[i]);
}
else
{
if(as[i]>='0'&&as[i]<='9')/*數字*/
{if((i-1<0||(as[i-1]<'0'||as[i-1]>'9'))&&as[i-1]!=' ')
printf("_%c",as[i]);
else
if((as[i+1]=='\0'||(as[i+1]<'0'||as[i+1]>'9'))&&as[i+1]!=' ')
printf("%c_",as[i]);
else printf("%c",as[i]);
}
else
if(as[i]==' ')/*空格*/
if(as[i-1]!=' ')
printf(" ");
}
}printf("\n");
}return 0;
}
9
#include<stdio.h>
int as[23][23],k;
void heng(int i1,int j1)
{
for(;;)
{
if(as[i1][j1]!=0) break;
as[i1][j1]=k;
j1++;k++;
}
return;
}
void xie(int i2,int j2)
{
for(;;)
{
if(as[i2][j2]!=0) break;
as[i2][j2]=k;
i2++;j2--;k++;
}
return;
}
void shu(int i3,int j3)
{
for(;;)
{
if(as[i3][j3]!=0) break;
as[i3][j3]=k;
i3--;
k++;
}
return;
}
int main( )
{
int n;
while(scanf("%d",&n)!=EOF)
{
int i,j; k=1;
for(i=0;i<n+3;i++)
for(j=0;j<n+3-i;j++)
as[i][j]=-1;
for(i=1;i<n+2;i++)
for(j=1;j<n+2-i;j++)
as[i][j]=0;
for(i=1,j=0;;i++)
{
if(j>=n) break; else {heng(i,i);j++;}
if(j>=n) break; else {xie(i+1,n+1-2*i);j++;}
if(j>=n) break; else {shu(n+1-2*i,i);j++;}
}
for(i=1;i<=n;i++)
{
for(j=1;j<n+2-i;j++)
if(j==1) printf("%d",as[i][j]);
else printf(" %d",as[i][j]);
printf("\n");
}
}
return 0;
}