用一个函数来实现将一行字符串中最长的单词输出。此行字符串从主函数传递给该函数。

导读:本篇文章讲解 用一个函数来实现将一行字符串中最长的单词输出。此行字符串从主函数传递给该函数。,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

1.把两个函数放在同一个程序文件中,作为一个文件进行编译和运行。

#include<stdio.h>
#include<string.h>
int main(){
	char str[100];
	void L_word(char a[]);
	puts("输入字符串:");
	gets(str);
	puts("最长的单词是:");
	L_word(str);
	return 0;
}
void L_word(char a[]){
	int i,j;
	char t1[20],t2[20]={'\0'};
	for (i=0;a[i]!='\0';i++) {
		int j=0;
		while(a[i]>='a'&&a[i]<='z'||a[i]>='A'&&a[i]<='Z') {
			t1[j++]=a[i++];           
		}
		t1[j]='\0';
		if(strlen(t1)>strlen(t2))     
			strcpy(t2,t1);              
	}
	puts(t2);
}

2.把两个函数分别放在两个程序文件中,作为两个文件进行编译、连接和运行。

首先建立一个文件夹,在该文件夹下建立两个源文件fiile1.c和fiile2.c。

用一个函数来实现将一行字符串中最长的单词输出。此行字符串从主函数传递给该函数。

其中file1.c中程序如下:

#include<stdio.h>
#include<string.h>	
#include"file2.c"
int main(){
	char str[100];
	extern void L_word(char a[]);
	puts("输入字符串:");
	gets(str);
	puts("最长的单词是:");
	L_word(str);
	return 0;
}

file2.c中程序如下:

#include<stdio.h>
void L_word(char a[]){
	int i,j;
	char t1[20],t2[20]={'\0'};
	for (i=0;a[i]!='\0';i++) {
		int j=0;
		while(a[i]>='a'&&a[i]<='z'||a[i]>='A'&&a[i]<='Z') {
			t1[j++]=a[i++];           
		}
		t1[j]='\0';
		if(strlen(t1)>strlen(t2))  
			strcpy(t2,t1);              
	}
	puts(t2);
}

编译运行file1.c:
用一个函数来实现将一行字符串中最长的单词输出。此行字符串从主函数传递给该函数。

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/82675.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!