C程序设计实验七实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验报告
工学院土木工程专业09级2011 至2012 学年度第 1 学期
学号:xxxxxxxxxx 姓名:xxxxxxx2011 年11月17日第3~4节综合楼325教
室
②将主函数的函数声明删掉,再进行编译,分析编译结果。
删掉后编译过程发现错误,指示主函数中的判别素数的处理函数无法识别。因为C 语言规定,在程序中用到的所有函数,必须“先定义,后使用”。
③把主函数的位置改为在其他函数之后,在主函数中不含函数声明。
运行结果如①。
④保留判别素数的函数,修改主函数,要求输出100~200之间的素数。
输入程序如下:
#include
int main()
{int prime(int);
int n;
printf("There are primes:\n",n);
for(n=100;n<=200;n++)
if(prime(n))
printf("%d,",n);
printf("\n");
return 0;
}
int prime(int n)
{int flag=1,i;
for(i=2;i if(n%i==0) flag=0; return(flag); } 运行结果如下: (2)写一个函数,将一个字符串中得元音字母复制到另一个字符,然后输出。 ①输入程序,编译和运行程序,分析结果。 输入程序如下: #include int main() {void cpy(char[],char[]); char str[80],c[80]; printf("Input string:"); gets(str); cpy(str,c); printf("The vowel letters are:%s\n",c); return 0; } void cpy(char s[],char c[]) {int i,j; for(i=0,j=0;s[i]!='\0';i++) if(s[i]=='a'||s[i]=='A'||s[i]=='e'||s[i]=='E'||s[i]=='i'||s[i]=='I'||s[i]=='o'||s[i]=='O'||s[i]=='u'||s[i]= ='U') {c[j]=s[i]; j++; } c[j]='\0'; } 运行结果如下: ②分析函数声明中参数的写法。先后用以下两种形式。 (a)函数声明中参数的写法与定义函数时的形式完全相同,如: void cpy(char s[],char c[]); (b)函数声明中参数的写法与定义函数时的形式基本相同,但省略写数组名。 如: void cpy(char[],char[]); 分别编译和运行,分析结果。 (a)运行结果如下: (b)运行结果如下: 两者结果相同。说明函数声明中参数的写法需与定义函数时的写法相同,但可省略数组名。 (4)用一个函数来实现将一行字符中最长的单词输出。此行字符串从主函数传递给该函数。 ①把两个函数放在同一个程序文件中,作为一个文件进行编译和运行。 ②把两个函数分别放在两个程序文件中,作为两个文件进行编译、连接和运行。 输入程序如下: #include #include int main() {int alphabetic(char); int longest(char[]); 实验总结:老师批语: