- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《高级语言程序设计》实验报告
班级: 学号: 姓名: 成绩:
班级:
学号: 姓名: 成绩:
实验7函数程序设计
一、 实验目的
掌握函数定义的方法。
掌握函数实参与形参的传递方式。
掌握函数的嵌套调用和递归调用的方法。
了解全局变量和局部变量、动态变量、静态变量的概念和使用方法。
二、 实验内容
改错题(昧程序中画出错误的语句,将修改后的语句完整地写在该语句的右边。1)
下列sub函数的功能为:将S所指字符串的反序和正序进行连接形成一个新串放 在t所指的数组中。例如,当s所指字符串的内容为“ABCD”时,t所指数组中的内容为
“DCBAABCD”。纠正程序屮存在的错误,以实现其功能。程序以文件名sy7_l.c存盘。 #include stdio.h
^include string.h void sub( char s[],char t[ l)
{
int i, d; d=strlen( s);
for( i=l; i d ; i++ ) for( i=0; i d ; i++ )
t[i]=s[d-l-i];
for( i=0; id; i++) t[d+i]=s[i];
t[2*d]=7O,; t[2*d]=AO’
}
main()
{
chars[100],t[100];
printf( Please enter string s : ”);
scanf(%s’.,s);
sub(s,t);
printf( \n The result is : %s \n , t);
}
下列程序的功能为:将字符数组中的字符串逆序输出。纠正程序中存在的错误, 以实现其功能。程序以文件名sy7_2.c存盘。
#includestring.h
#includestdio.h
#define ARR_SIZE = 80; #define ARR_SIZE 80
void Inverse(char str[]) void Inverse(char str门);
main()
{ char a[ARR_SIZE];
printf(Please enter a string:); gets ⑻;
Inverse(char afl); Inverse(a);
printf (The inversed string is:); puts ⑻;
}
void Inverse(char str[J)
{ int len, i = 0, j; char temp; len = strlen(str); for (jMen-1; ij; i++,j--)
{ temp = strlij;
str[jl = strfi]; strfi] = str[j];
str[jl = temp;
}
}
下列程序的功能为:求整数n的阶乘。纠正程序屮存在的错误,以实现其功能。 程序以文件名sy7_3.c存盘。
#includestdio.h int fun(int n)
{ static int p=l; int p=l;
p=p*n; return p;
}
void main()
{ int n,i;
int f=0; int f=l;
printfCinput member: ’.); scanf(%d,n); for(i=l;i=n;i++)
f=f*fun(i); f= fun(i);
printf(%d!=%d\n,n,f);
}
程序填空题
下列sum()函数的功能是:计算数组x前n个元素之和。在主函数中,输入10个 任意整数和下标il、i2的值(设lili29),调用sumO函数计算从第il元素到第i2元 素的和,并输出结果。补充完善程序,以实现其功能。程序以文件名sy7_4.c存盘。
#include stdio.h
int sum( int x[l, int n )
int i,s=0;
for (i=0; in : i++ )
s = s+x「il : return s;
}
void main()
{
int i, il, i2, result;
int x[10];
for (i=0; i10; i++)
scanf( %d,x[i]); scanf( %d%d,il, i2 ); result = sum( x+i 1,i2-il + l ): printf( Sum=%d\n, result);
}
下列程序的功能为:输入一个字符数小于100的字符串string,然后将string所存 盘字符串中的每个字符之间加一个空格。补充完善程序,以实现其功能。程序以文件名 sy7_5.c 存盘。
#includestdio.h#includestring.h
#includestdio.h
#includestring.h〉
#define MAX
文档评论(0)