C语言程序设计题目求解
本文介绍了C语言程序设计题目求解的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
题目如下:
部分代码:
#include <stdio.h>
#include <string.h>
#define M 3
#define N 20
void fun(char a[M][N], char *b)
{
}
main()
{char w[M][N]={"AAAA","BBBBBBB","CC"}, a[100];
int i ;void NONO ();
printf("The string:\n");
for(i=0; i<M; i++)puts(w[i]);
printf("\n");
fun(w,a);
printf("The A string:\n");
printf("%s",a);printf("\n\n");
NONO();
}
void NONO ()
{/* 请在此函数内打开文件,输入测试数据,调用 fun 函数,输出数据,关闭文件。 */
FILE *rf, *wf ;
char w[M][N], a[100] ; int i ;
rf = fopen("in.dat","r");
wf = fopen("out.dat","w");
for(i = 0 ; i < 10 ; i++) {
fscanf(rf, "%s %s %s", w[0], w[1], w[2]);
fun(w, a);
fprintf(wf, "%s\n", a);
}
fclose(rf); fclose(wf);
}
我写了:
void fun(char a[M][N], char *b)
{
int i,k=0;
for(i=0;i<M;i++){
strcat(b,a[i]);
}
}
但是运行没结果
求大神写一下,并说明下原理,感觉对字符数组和字符串转换有点晕。。
解决方案
你写的函数基本是没错的,出错的原因应该是传进来的*b没有初始化,导致你直接用strcat的时候内存出错了。
关于字符数组和字符串的关系推荐你去看《c语言解惑》,很短小精悍的一本书。
这篇关于C语言程序设计题目求解的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文