【正确答案】void fun(char (*s)[N],char *b)
{
int i,j,k=0;
for(i=0; i<N;i++) /*按列的顺序依次放到一个字符串中*/
for(j=0; j<M; j++)
b[k++]=s[j][i];
b[k]='\0';
}
【答案解析】
看到程序后,很容易便能想到用循环嵌套的方法,本题中按列的顺序依次放到一个字符串中,所以列标变化慢,行标变化快。
注意:第1个循环条件为i<N(即列);第2个循环条件为j<M(即行),因为在循环的嵌套中越在内层,循环变化就越快。