C语言相关问题 20

file1.c#include<stdio.h>voidmain(){voidenter_string(charstr[]);voiddelete_string(char... file1.c
#include<stdio.h>
void main()
{
void enter_string(char str[]);
void delete_string(char str[],char ch);
void print_string(char str[]);
char c;
char str[80];
enter_string(str);
scanf("%c",&c);
delete_string(str,c);
print_string(str);
}

file2.c
#include<stdio.h>
void enter_string(char str[80])
{
gets(str);
}

file3.c
#include<stdio.h>
void delete_string(char str[],char ch)
{
int i,j;
for(i=j=0;str[i]!='\0';i++)
if(str[i]!=ch)
str[j++]=str[i];
str[j]='\0';
}

file4.c
#include<stdio.h>
void print_string(char str[])
{
printf("%s\n",str);
}

请各位高手帮忙注释一下这个程序,由4个文件组成,谢谢。
展开
 我来答
百度网友0518613
2012-10-27 · 超过33用户采纳过TA的回答
知道答主
回答量:119
采纳率:100%
帮助的人:62万
展开全部
file1.c
#include<stdio.h>
void main()
{
/*函数申明*/
void enter_string(char str[]);
void delete_string(char str[],char ch);
void print_string(char str[]);
char c;
char str[80];
enter_string(str);
scanf("%c",&c);
delete_string(str,c);
print_string(str);
}
/*输入字符串*/
file2.c
#include<stdio.h>
void enter_string(char str[80])
{
gets(str);
}

/*删除含有ch的字符*/
file3.c
#include<stdio.h>
void delete_string(char str[],char ch)
{
int i,j;
//循环判断字符串中是否有和ch相同的字符
for(i=j=0;str[i]!='\0';i++)
if(str[i]!=ch) //不同则做赋值运算
str[j++]=str[i];
str[j]='\0'; //加字符串结束符
}

/*打印字符串*/
file4.c
#include<stdio.h>
void print_string(char str[])
{
printf("%s\n",str);
}

编译的话,按楼上说的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wang433
2012-10-27 · TA获得超过969个赞
知道小有建树答主
回答量:320
采纳率:0%
帮助的人:126万
展开全部
如查你还要这四个文件一起工作,你要让这四个文件放入一个工程中(VC)。
如果是TC你应该建一个工程如:p2.prj,在其中输入:
file1.c
file2.c
file3.c
file4.c
然后保存。
这样在链接时,主函数才能找到要调用的函数。
另,以下函数:
void enter_string(char str[]);
void delete_string(char str[],char ch);
void print_string(char str[]);
也许应该改成这样:
extern void enter_string(char str[]);
extern void delete_string(char str[],char ch);
extern void print_string(char str[]);

另外一种处理方法是在file1.c中main函数之前加上这几句就OK了
#inlucde "file2.c"
#include "file3.c"
#include "file4.c"
就OK了
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友d9aef25
2012-10-27
知道答主
回答量:65
采纳率:0%
帮助的人:17.4万
展开全部
#include<stdio.h>
void main()
{
void enter_string(char str[]);
void delete_string(char str[],char ch);
void print_string(char str[]);
char c;
char str[80];
enter_string(str);
scanf("%c",&c);
delete_string(str,c);
print_string(str);

void enter_string(char str[80])
{
gets(str);
}

void delete_string(char str[],char ch)
{
int i,j;
for(i=j=0;str[i]!='\0';i++)
if(str[i]!=ch)
str[j++]=str[i];
str[j]='\0';
}
void print_string(char str[])
{
printf("%s\n",str);
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式