作业第四周
1.函数的声明和定义:
表示有这么个函数了,函数定义就是具体实现
什么是形参?什么是实参?函数参数和返回值在函数中起什么作用?
1. 形参变量只有在被调用时才分配内存单元,在调用结束时,即刻释放所分配的内存单元。因此,形参只有在函数内部有效。函数调用结束返回主调函数后则不能再使用该形参变量。
2. 实参可以是常量、变量、表达式、函数等,无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值,以便把这些值传送给形参。因此应预先用赋值,输入等办法使实参获得确定值。
3. 实参和形参在数量上,类型上,顺序上应严格一致,否则会发生类型不匹配”的错误。
4. 函数调用中发生的数据传送是单向的。即只能把实参的值传送给形参,而不能把形参的值反向地传送给实参。 因此在函数调用过程中,形参的值发生改变,而实参中的值不会变化。
函数参数传递过程中,值传递和引用传递区别是什么?
值传递只是用这个数参与计算不影响数的值。引用传递是改变数的值。
2.#include<iostream> using namespace std; int main() { char c; cout<<"Mene:A(dd) D(elete) S(ort) Q(uit)"<<endl; cin>>c; while(c!='Q') { if(c=='A') cout<<"数据已经增加"<<endl;break; if(c=='D') cout<<"数据已经删除"<<endl;break; if(c=='S') cout<<"数据已经排序"<<endl;break; } return 0; }
#include<iostream> using namespace std; int main() { char c; cout<<"Mene:A(dd) D(elete) S(ort) Q(uit)"<<endl; cin>>c; switch(c) {case 'A': cout<<"数据已经增加"<<endl;break; case 'D': cout<<"数据已经删除"<<endl;break; case 'S': cout<<"数据已经排序"<<endl;break; case 'Q': break; default: break; } return 0; }
#include<iostream> using namespace std; int main() { int n=0,i=2; do { n=0; for(int j=1;j<=i;j++) { if(i%j==0) { n++; } } if(n==2) { cout<<i<<" "<<endl; } i++; } while(i<=100); return 0 ; }
#include<iostream> using namespace std; int main() { int count=0,i=2; while(i<=100) { count=0; for(int j=1;j<=i;j++) { if(i%j==0) { count++; } } if(count==2) { cout<<i<<" "<<endl; } i++; } return 0; }
#include<iostream> using namespace std; int main() { int n=0,i=2; do { n=0; for(int j=1;j<=i;j++) { if(i%j==0) { n++; } } if(n==2) { cout<<i<<" "<<endl; } i++; } while(i<=100); return 0; }
#include<iostream> using namespace std; int main() { int n=99;int m; do{ cout<<"猜猜这个数"<<endl; cin>>m; if(m==n) { cout<<"m=n"<<endl;break; } else if(m<n) cout<<"m<n"<<endl; else cout<<"m>n"<<endl; }while(1); return 0; }
#include<iostream> using namespace std; int main() { int n=99;int m; while(1){ cout<<"猜猜这个数"<<endl; cin>>m; if(m==n) {
#include<iostream> using namespace std; int digui(int n,int k) {if(k>n) return 0; else if(k==n||k==0) return 1; else return digui(n-1,k)+digui(n-1,k-1); } int main() { int n=5,k=3; digui(n,k); cout<<digui(n,k)<<endl; return 0; }
cout<<"m=n"<<endl;break; } else if(m<n) cout<<"m<n"<<endl; else cout<<"m>n"<<endl;} return 0; }