例题:请编写函数fun,该函数的功能是:将M行N列的二维数组中的字符数据,按列的顺序依次放到一个字符串中。
例如:若二维数组中的数据为:
* * * *
@ @ @ @
# # # #
则字符串中的内容应是:
*@#*@#*@#*@#
请勿改动主函数main与其它函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
代码如下:
#include<stdio.h>
#define M 3
#define N 4
void fun(char(*a)[N],char*c)
{
int i,j,k=0;
for(j=0;j<N;j++)
for(i=0;i<M;i++)
{
c[k]=*(*(a+i)+j);
k++;
}
c[k]='\0';
}
main()
{
char s[100],str[M][N]={{'*','*','*','*'},{'@','@','@','@'},{'#','#','#','#'}};
int i,j;
FILE*out;
printf("The matrix:\n");
for(i=0;i<M;i++)
{
for(j=0;j<N;j++)
printf("%3c",str[i][j]);
printf("\n");
}
fun(str,s);
printf("The A string:");
puts(s);
printf("\n\n");
out=fopen("outfile.dat","w");
fprintf(out,"%s",s);
fclose(out);
}
输出运行窗口如下:
本周其他练习
C语言编程>第十五周 ① 请编写函数fun,其功能是计算并输出下列多项式的值:
C语言编程>第十五周 ② 请编写函数fun,它的功能是计算:F= ,F作为函数值返回。在C语言中可调用log(n)函数求In(n),log函数的引用说明是:
C语言编程>第十五周 ③ 请编写函数fun,该函数的功能是:将M行N列的二维数组中的字符数据,按列的顺序依次放到一个字符串中。
C语言编程>第十五周 ④ 编写一个函数,从传入的num个字符串中找出最短的一个字符串,传回该串地址(用 “*”作为结束输入的标志)。
C语言编程>第十五周 ⑤ 假定输入的字符串中只包含字母和 “#”号,请编写函数fun,它的功能是:除了字符串前导的 “#”号之外,将串中其他“#”号全部删除。
C语言编程>第十五周 ⑥ 编写一个函数,该函数可以统计一个长度为3的字符串在另一个字符串中出现的次数。
C语言编程>第十五周 ⑦ 编写一个函数,从传入的num个字符串中找出最短的一个字符串,传回该串地址(用 “*”作为结束输入的标志)。
C语言编程>第十五周 ⑧ 请编写函数fun,其功能是:计算并输出3到m之间所有素数的平方根之和。
越努力越幸运!
加油,奥力给!!!