实验名称 | 函数定义和调用 |
实验目的 |
|
实验任务 |
将ch04_08.cpp的程序修改为主函数调用isprime()函数的形式,以确定该数是否素数。(书上P71)
将习题4.9打印九九乘法表改用函数调用的形式,适当取函数名,分别调用3种函数以输出不同格式。
用非递归的函数调用形式求斐波拉契数列第n项。 斐波那契数列(Fibonacci sequence),又称黄金分割数列、因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*) 比如,当输入5时,程序运行结果为5;当输入9时,程序运行结果为34。
将习题4.10用递归方法求解 |
实验内容
#include<iostream> using namespace std; int func1(); int func2(); int main() { func1(); cout << func2() << endl;
return 0; } int func1() { int n=12345; return n; } int func2() { int m; return m; }
#include<iostream> using namespace std; void func(); void print(int a,int b,int n); int n=1; int main() { static int a=a; int b= -10; print(a,b,n); b+=4; func(); print(a,b,n); n+=10; func(); } void func() { static int a=2; int b=5; a+=2; n+=12; b+=5; print(a,b,n);
} void print(int a,int b,int n) { cout << "a:" << a << "\tb:" << b << "\tn:" << n<< endl; }
#include<iostream> using namespace std; int isnumber(char); int main() { char c; while((c=cin.get())!='\n') if(isnumber(c)) cout << "you entered a digit" << endl; else cout << "you entered a non_digit"<< endl; } int isnumber(char ch) { return (ch>='0'&&ch<='9')?1:0; }
#include<iostream> #include<iomanip> #include<cmath> using namespace std; void isprime() {
long a,b,l=0; cout << "please input two numbers "<< endl; cin >> a>> b; cout << "primes from\t" << a << "\tto" << b << "\tis :" << endl; if(a==2) cout << "2"; if(a%2==0) a++; for(long m=a;m<b;m+=2) { int sqrtm = sqrt(m); int i; for(i=2;i<=sqrtm;i++) if(m%i==0) break; if(i>sqrtm) { if(l++%10==0) cout << endl; cout << setw(5) << m; } }
} int main() { isprime(); return 0; }
#include<iostream> #include<iomanip> #include<cmath> using namespace std; void table1() { for(int j=1;j<=9;j++) {
for(int i =1;i<=9;i++) { cout << j*i << "\t "; } cout << endl;
} } void table2() { for(int j=1;j<=9;j++) {
for(int i =1;i<=j;i++) { cout << j*i << "\t "; } cout << endl;
} } void m_head() { for (int i = 1; i < 10; i++) { cout << i << " "; } cout << endl; cout << "-----------------------------------------------------------------------" << endl; } void m_table() { for (int i = 1; i <= 9; i++) { for (int j = 1,m=i-1; j < 10; j++,m--) { if (m > 0)//根据每行的规律把j的输出换成空格 { cout << " \t"; } else { cout << i * j << "\t";
} } cout << endl; } } void table3() { m_head(); m_table(); } int main() { //table1(); //table2(); table3(); return 0; }
#include<iostream> #include<iomanip> #include<cmath> using namespace std; int n; int Fib() { int fib1=1; int fib2=1; int fib=0;
if(n==1||n==2) { return 1; } for(int i =3;i<=n;i++) {
fib=fib1+fib2; fib1=fib2; fib2=fib;
} return fib; } int main() { cout << "请输入需计算的项数"<< endl; cin>> n; cout <<"第"<<n<<"项为:"<< Fib() << endl; return 0; }
#include<iostream> using namespace std; int cow(int m) { if (m == 1 || m == 2 || m == 3) { return 1; } else { return cow(m - 1) + cow(m - 3); } } int main() { int num; cout << "请输入年数" << endl; cin >> num;
cout << "第"<<num<<"年共" << cow(num) << "头" << endl; system("pause"); return 0; } | |
小结 |
c++高级程序设计语言实验五函数定义和调用
于 2023-06-23 00:27:31 首次发布