C++编程练习——2014/3/11

来源:互联网 发布:小米2s支持4g网络吗 编辑:程序博客网 时间:2024/04/29 23:12

对应21-25题

1

#include<iostream>class NODE{public:int data;NODE *next;};void fun(NODE *list,int x){NODE *u,*v,*p;u=list;v=u->next;while(v!=NULL&&x<v->data){u=v;v=v->next;}if(v==NULL||x>v->data){p=new NODE;p->data=x;p->next=v;u->next=p;}}void main(){int x;NODE *head,*p;head =new NODE;head->next=NULL;std::cout<<"Enter integers,end with 0"<<std::endl;while(1){std::cin>>x;if(x==0)break;fun(head,x);}for(p=head->next;p!=NULL;p=p->next)std::cout<<p->data<<' ';std::cout<<std::endl;do{p=head->next;delete head;head=p;}while(p);}

2.

#include <iostream.h>#define N 100int a[N][N];int fun(int n){int max[N];for(int i=0;i<n;i++){    max[0]=a[i][0];for(int j=1;j<n;j++){max[i]=max[i]>a[i][j]?max[i]:a[i][j];}}int min=max[0];for(int k=1;k<n;k++){min=min<max[k]?min:max[k];}return min;}void main(){int n;cout<<"please input N:"<<endl;cin>>n;for(int i=0;i<n;i++)for(int j=0;j<n;j++){cout<<"please input a Number: "<<endl;cin>>a[i][j];}cout<<"The min of max numbers is "<<fun(n)<<endl;}


3.

#include<iostream.h>void fun(int N[4]){for(int i=0;i<4;i++)for(int j=0;j<4;j++)for(int k=0;k<4;k++){if(j!=k&&k!=i&&N[i]!=0)cout<<N[i]<<N[j]<<N[k]<<endl;}}int main(){int N[4]={1,2,3,0};fun(N);return 0;}

4.

#include<iostream.h>#include<cmath>void fun(){long n=0,x,y;while(n<100000){x=sqrt(n+100);y=sqrt(n+268);if(x*x==(n+100)&&y*y==(n+268))cout<<n<<endl;n++;}}int main(){fun();return 0;}

5.

#include <iostream.h>#include <cmath>int fun(int n){int x,y,i,j,k;  x=((n%10)+3)%9;//the forth    y=(((n/10)%10)+3)%9;//the third    i=((n/100)%10+3)%9;//the secondj=((n/1000)+3)%9;//the firstk=1000*x+100*y+10*i+j;return k;}int main(){int i=1234;cout<<fun(i)<<endl;i=5678;cout<<fun(i)<<endl;return 0;}

21题没懂。。


0 0
原创粉丝点击