java char i=2+#039;2#039;;_P039 二维数组的字符按列存放到字符串中 ★★
所屬年份:2010.9;2011.9;2012.3
請(qǐng)編寫函數(shù)fun,該函數(shù)的功能是:將M行N列的二維數(shù)組中的字符數(shù)據(jù),按列的順序依次放到一個(gè)字符串中。
例如,若二維數(shù)組中的數(shù)據(jù)為
W W W W
S S S S
H H H H
則字符串中的內(nèi)容應(yīng)是:WSHWSHWSHWSH。
#include
#define M 3
#define N 4
void fun(char (*s)[N],char *b)
{
}
int main()
{
FILE *wf;
char a[100],w[M][N]= {{ 'W', 'W', 'W', 'W'},{'S', 'S', 'S', 'S'},{'H', 'H', 'H', 'H'}};
int i,j;
printf("The matrix:\n");
for(i=0; i
{
for(j=0; j
printf("%3c",w[i][j]);
printf("\n");
}
fun(w,a);
printf("The A string:\n");
puts(a);
printf("\n\n");
/******************************/
wf=fopen("out.dat","w");
fprintf(wf,"%s",a);
fclose(wf);
/*****************************/
return 0;
}
【解題思路】
看到程序后,很容易便能想到用循環(huán)嵌套的方法,本題中按列的順序依次放到一個(gè)字符串中,所以列標(biāo)變化慢,行標(biāo)變化快。
注意第1個(gè)循環(huán)條件為 i < N(即列),第2個(gè)循環(huán)條件為 j < M(即行),因?yàn)樵谘h(huán)的嵌套中越在內(nèi)層,循環(huán)變化就越快。
【參考答案】
[cpp]
void fun(char (*s)[N],char *b)
{
int i, j, k=0;
for(i=0; i
for(j=0; j
b[k++] = s[j][i];
b[k]='\0';
}
[/cpp]
總結(jié)
以上是生活随笔為你收集整理的java char i=2+#039;2#039;;_P039 二维数组的字符按列存放到字符串中 ★★的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 蚊子什么时候出现?
- 下一篇: 大整数算术求值 c语言 栈,用C语言实现