实验10:函数的定义、声明和调用
实验名称: 函数的定义、声明和调用 成绩: 实验日期: 年 月 日 实验报告日期: 年 月 日
一、实验目的 1、 2、 3、 4、
掌握函数定义(返回、函数名、参数、函数体),调用。 掌握函数的声明
※嵌套调用、递归调用。※ ※掌握函数的传值、传址调用※。
※:不要求
二、实验内容 1、
编制函数fun,其功能是:删除一个字符串中指定的字符。
要求:原始字符串在主函数中输入,处理后的字符串在主函数中输出。 例如:输入“I am a teacher,you are a student”和‘e’输出“I am a tachr,you ar a studnt”。 2、
编制函数sortstr,其功能是对多个字符串进行排序。
要求:欲排序的字符串在主函数中输入,排好序的字符串在主函数中输出。
1
提示:排序算法可参照实验9第4题,即将排序算法改为由一个函数sortstr实现。 3、
三、实验要求 1、
1、2题编制源程序和测试数据;在Turbo C下完成程序的编掌握函数声明的使用。
辑、编译、运行并分析程序结果。 2、
四、实验步骤、过程 1、
编辑、编译、运行程序题1。使用字符串:“I am a teacher,you 3题按实验步骤完成,认真观察,仔细思考思考题。
are a student”以及字符‘e’做测试。 2、
编辑、编译、运行程序题2。使用数据:“Spanish”、“China”、
“America”、“Japan”、“England”做测试。 3、
掌握函数声明的使用
(1) 输入下面程序,编译、连接,如果没有输错,应该提示成功。
运行获得正确结果100。 float fun(float f) {
return f*f; }
void main()
2
{
float k; k=fun(10.0); printf(\}
(2) 把fun函数移到main()函数之后,再次编译,提示错误: Type mismatch in redeclaration of 'fun',(重新定义了fun,类型不一致)。
提示:移动一块程序可以用^KB,^KK定义要移动的块,然后移动光标到要移动的目标位置,^KV移动程序块。另外,^KC还可以复制一块程序,试试吧!
(3) 在main()函数前增加函数声明float fun(float f);,再次编
译,提示成功并能正确运行获得结果。 思考:在什么情况需要函数声明?
五、源程序清单、测试数据、结果。 1、
删除字符串中指定的字符
#include
void main() {
3
char s[100],c;
gets(s); c=getchar();
fun(s,c);
puts(s); }
void fun(char s[],char c) {
int i,j;
for(i=0; s[i]!='\\0'; i++) {
if(s[i]==c) {
for(j=i; s[j]!='\\0'; j++) s[j]=s[j+1]; } }
4
}
测试运行:
I am a teacher,you are a student
I am a tachr,you ar a studnt 2、
字符串进行排序(选择法)
#include
void sortstr(char s[][20],int n) {
int i,j;
for(i=0; i for(j=i+1; j char t[20]; strcpy(t,s[i]); strcpy(s[i],s[j]); strcpy(s[j],t); } 5 搜索“diyifanwen.net”或“第一范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,第一范文网,提供最新小学教育实验10:函数的定义、声明和调用 全文阅读和word下载服务。
相关推荐: