300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > c语言实验七实验报告 C语言实验七 数 实验报告.doc

c语言实验七实验报告 C语言实验七 数 实验报告.doc

时间:2023-05-02 22:59:16

相关推荐

c语言实验七实验报告 C语言实验七 数 实验报告.doc

C语言实验七 数 实验报告

C语言程序设计

实验题目

实验七 函数

实验目的

掌握函数定义的方法;

掌握函数实参与形参的对应关系,以及值传递的方式。

掌握函数的嵌套调用和递归调用的方法;

掌握全局变量和局部变量、动态变量、静态变量的概念和使用方法;

学习对多文件的程序的编译和运行。

实验内容和步骤

写一个判别素数的函数。在主函数输入一个整数,输出是否是素数的信息。

#include

void main()

{int prime(int);

int m,flag=1;

char c;

while(flag)

{printf("Enter the m:\n");

scanf("%d",&m);

if(prime(m))

printf("%d 是素数!",m);

else

printf("%d 不是素数!",m);

printf("\nContinue or not?(Y&N)\n");

scanf(" %c",&c);

if(c=='Y')

flag=1;

else

flag=0;

}

}

int prime(int m)

{int i,flag=1;

for(i=2;i

if(m%i==0)

flag=0;

return flag;

}

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

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

#include

void main()

{int word(char);

int longest(char[]);

int i;

char string[80];

printf("Enter a line:\n");

gets(string);

printf("The longest word is:\n");

for(i=longest(string);word(string[i]);i++)

putchar(string[i]);

putchar('\n');

}

int word(char c)

{if(c>'a'&&c'A'&&c

return 1;

else

return 0;

}

int longest(char string[])

{int len=0,length=0,flag=1,place=0,point,i;

for(i=0;i<=strlen(string);i++)

if(word(string[i]))

if(flag)

{point=i;flag=0;}

else len++;

else

{flag=1;

if(len>length)

{length=len;place=point;}

len=0;

}

return place;

}

(2)、把两个函数分别放在两个程序文件中,作为两个文件进行编译。

注:下图为文件内容(文件名分别为8__10.c和file2.c)

3、用递归法讲一个整数n转换成字符串。

#include

void main()

{void convert(int);

int m;

printf("Enter int m:\n");

scanf("%d",&m);

convert(m);

putchar('\n');

}

void convert(int m)

{int i;

if((i=m/10)!=0)

convert(i);

printf("%c ",m%10+'0');

}

4、求两个整数的最大公约数和最小公倍数。

(1)不用全局变量,分别用两个函数求最大公约数和最小公倍数。两整数在主函数中输入,传递给函数1,以求出最小公倍数,然后再与两个整数一起作为实参传给函数2,以求出最小公倍数,返回主函数输出最大公约数和最小公倍数。

#include

void main()

{int great_commom(int x,int y);

int low_common(int m,int n,int a);

int a,b,m,n; //用m,n,a,b分别代表两个数及其最大公约数和最小公倍数

printf("Please enter two

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。