马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
谭浩强《C语言程序设计》第七章例题:
file1.c(文件1)
#include <stdio.h>
int main()
{
extern void enter_string(char str[]); //对函数的声明
extern void delete_string(char str[],char ch); //对函数的声明
extern void print_string(char str[]); //对函数的声明
//以上3行声明在本函数中将要调用的已在其他文件中定义的3个函数
char c,str[80];
enter_string(str); //调用在其他文件中定义的enter_string函数
scanf("%",&c); //输入要求删去的字符
delete_string(str,c); //调用在其他文件中定义的delete_string函数
print_string(str); //调用在其他文件中定义的print_string函数
return 0;
}
file2.c(文件2)
void enter_string(char str[80]) //定义外部函数 enter_string
{
gets(str); //向字符数组输入字符串
}
file3.c(文件3)
void delete_string(char str[],char ch) //定义外部函数delete_string
{
int i,j;
for(i = j = 0;str[i] != '\o';i++)
if(str[i] != ch)
str[j++] = str[i];
str[i] = 'o';
}
file4.c(文件4) //定义外部函数print_string
void print_string(char str[])
{
printf("%s\n",str);
}
写成这样,我不知怎么编译了。是要将 file1、file2、file3、file4 分别编译成 C 文件吗?若是,是编译好了以后,放同一个文件包里,再运行 file1吗?
// 谭浩强C语言程序设计》第七章例题:有一个字符串,内有若干个字符,现输入一个字符,
// 要求程序将字符串中该字符删去。用外部函数实现。
#include <stdio.h>
int main()
{
extern void enter_string(char str[]); //对函数的声明
extern void delete_string(char str[],char ch); //对函数的声明
extern void print_string(char str[]); //对函数的声明
//以上3行声明在本函数中将要调用的已在其他文件中定义的3个函数
char c,tem,str[80];
enter_string(str); //调用在其他文件中定义的enter_string函数
scanf("%c%*c",&c); //输入要求删去的字符
printf("程序将删除字符串中所有的字符 %c,是否继续?\n",c);
printf("按任意键继续删除,按 N 键中止\n");
scanf("%c",&tem);
if (tem != 'N')
{
delete_string(str,c); //调用在其他文件中定义的delete_string函数
}
print_string(str); //调用在其他文件中定义的print_string函数
return 0;
}
|