题目描述:
请输入字符串,最多输入4 个字符串,要求后输入的字符串排在前面,例如
输入:EricZ
输出:1=EricZ
输入:David
输出:1=David 2=EricZ
输入:Peter
输出:1=Peter 2=David 3=EricZ
输入:Alan
输出:1=Alan 2=Peter 3=David 4=EricZ
输入:Jane
输出:1=Jane 2=Alan 3=Peter 4=David
输入
第一行为字符串个数m,接下来m行每行一个字符床,m不超过100,每个字符床长度不超过20。
输出
输出m行,每行按照样例格式输出,注意用一个空格隔开。
样例输入
5
EricZ
David
Peter
Alan
Jane
样例输出
1=EricZ
1=David 2=EricZ
1=Peter 2=David 3=EricZ
1=Alan 2=Peter 3=David 4=EricZ
1=Jane 2=Alan 3=Peter 4=David
代码
#include<cstdio>
int main(){
int m;
scanf("%d",&m);
char s[4][25];
//用一个4*25的数组就可完成任务
int j; //用来循环输出1,2,3,4
int i,size=0; //用size来记录已经读到的串的个数,从0开始。这样也对应了数组的下标
while(m--){
scanf("%s",s[size%4]);
i=size; //用size不动,用i来执行循环
if(size<4)
for(j=1;j<=size+1;j++){
printf("%d=%s",j,s[i--]);
if(j==size+1)printf("\n");
else printf(" ");
}
else
for(j=1;j<5;j++){
printf("%d=%s",j,s[i%4]);
i--;
if(j==4)printf("\n");
else printf(" ");
}
size++;
}
return 0;
}