zoukankan      html  css  js  c++  java
  • C语言练习代码

    void mySort(int *b,int size);
    void f()
    {
        int a[]={3,5,7,1,8,4,9};
        mySort(a,sizeof(a)/sizeof(a[0]));//int *b=a
    }
    //数组是不能直接复制的
    //向量参数传递
    #include<iostream>
    #include<vector>
    #include<fstream>
    #include<sstream>
    using namespace std;
    typedef vector<int> VI;//typedef
    typedef vector<VI> VVI;
    void print(const VI&);
    void input(VVI&);
    bool findVec(const VVI&,VI&);
    int main()
    {
        VVI matrix;
        input(matrix);
        VI vec;
        if(findVec(matrix,vec))
            print(vec);
    }
    void print(const VI& v)
    {
        for(int i=0;i<v.size();i++)
            cout<<v[i]<<" ";
        cout<<"\n";
    }
    void input(VVI& m)
    {
        ifstream in("abc.in");
        int n,t;
        in>>n;
        m.resize(n);//设定内存大小
        for(string s;n--&&getline(in,s);)//
            for(istringstream sin(s);sin>>t;m[m.size()-n-1].push_back(t));//
    }
    bool findVec(const VVI& matrix,VI& v)
    {
        for(int i=0;i<matrix.size();++i)//matrix.size()
            for(int j=0;j<matrix[i].size();++j)//matrix[i].size
                if(matrix[i][j]==-1)
                    {v=matrix[i];
        return true;
    }
    return false;
    }
    //---------------
    //函数指针传递
    #include<iostream>
    #include<algorithm>
    #include<vector>
    using namespace std;
    int bitSum(int a);
    bool lessThanBitSum(int a,int b)
    {
        return bitSum(a)<bitSum(b);
    }
    int main()
    {
        int a[]={33,61,12,19,14,71,78,59};
        vector<int>aa(a,a+8);
        sort(aa.begin(),aa.end(),lessThanBitSum);
        for(int i=0;i<aa.size();++i)
            cout<<aa[i]<<" ";
        cout<<"\n";
    }
    int bitSum(int a)
    {
        int sum=0;
        for(int x=a;x;x/=10)//x是表达式,为真就继续循环,x/=10是每次循环后都会执行,x=x/10
            sum+=x%10;
        return sum;
        
    }
    //----------
    #include<iostream>
    using namespace std;
    typedef void (*MenuFun)();//函数指针类型MenuFun
    void f1(){cout<<"good!\n";}
    void f2(){cout<<"better!\n";}
    void f3(){cout<<"best!\n";}
    int main()
    {
        MenuFun fun[]={f1,f2,f3};
        for(int choice=1;choice;)
        {
            cout<<"1-----display good\n"
                <<"2-----display better\n"
                <<"3-----display best\n"
                <<"0-----exit\n"
                <<"Enter your choice:";
            cin>>choice;
            switch (choice)
            {
            case 1:fun[0]();break;
            case 2:fun[1]();break;
            case 3:fun[2]();break;
            case 0:return 0;
            default:
                cout<<"you entered a wrong key.\n";
            }
        }
    }
    //------------
    #include<iostream>
    #include<vector>
    using namespace std;
    typedef void (*MenuFun)();//函数指针类型MenuFun
    void f1(){cout<<"good!\n";}
    void f2(){cout<<"better!\n";}
    void f3(){cout<<"best!\n";}
    int main()
    {
        vector<MenuFun>fun(3);
        fun[1]=f1,fun[2]=f2,fun[3]=f3;
        for(int choice=1;choice;)
        {
            cout<<"1-----display good\n"
                <<"2-----display better\n"
                <<"3-----display best\n"
                <<"0-----exit\n"
                <<"Enter your choice:";
            cin>>choice;
            if(choice>0&&choice<4)
                fun[choice-1]();
            else if(choice==0)
                return 0;
            else
                cout<<"you entered a wrong key.\n";
        }
    }
    //--------------
    #include<iostream>
    using namespace std;
    int main()
    {
        for(int a,b;cin>>a>>b;cout<<a+b<<"\n");
    }
    //--------------
    #include<iostream>
    using namespace std;
    int main(int argc,char**argv)
    {
        for(int i=0;i<argc;++i)
            cout<<argv[i]<<endl;
    }
    //--------
    #include<iostream>
    #include<fstream>
    using namespace std;
    int main(int argc,char**argv)
    {
        if(argc!=3)
            cout<<"Usage:f0511 infile outfile\n";
        else
        {
            ifstream in("xyz.txt");//argv[1]
            ofstream out("abc.txt");//argv[2]
            if(in && out)
                
                out<<in.rdbuf();//in.rdbuf()直接关联到输入流缓冲区,该缓冲区承载一切输入数据和操作,相当于将整个输入和盘托出给输出流
            
        }
    }
    //-----------
    #include<iostream>
    #include<sstream>
    using namespace std;
    int main(int argc,char**argv)
    {
        if(argc!=2){
            cout<<"usage: f0512 command\n";
        return 1;
        }
    string s(argv[1]);//string s(srgv[1]);istringstream sin(s);sin>>a>>b>>c;
    istringstream sin(s);
    int a,b;
    char c;
    sin>>a>>c>>b;
    switch (c)
    {
    case'-':b=-b;
    case'+':cout<<a+b;break;
    case'*':cout<<a*b;break;
    case'/':cout<<a/b;break;
    default:cout<<"error!";
    }
    }
    //---------------
    #include<iostream>
    using namespace std;
    void delay(int a=2);//函数声明
    int main()//。。延时效果很好
    {
        cout<<"delay 2 sec...";
        delay();//默认
        cout<<"ended.\n";
        cout<<"delay 5 sec...";
        delay(5);
        cout<<"ended...";
    }
    void delay(int a)//延时函数,多重循环达到延时效果
    {
        int sum=0;
        for(int i=1;i<=a;++i)
            for(int j=1;j<3500;++j)
                for(int k=1;k<100000;++k)
                    sum++;
    }
    //-----------------
    //----------------1
    #include<stdio.h>
    void main()
    {
        printf("circle area=%f\n",20*20*3.14);
    }
    //--------------------2
    #include<stdio.h>
    void main()
    {
        printf("*\n");
        printf("***\n");
        printf("*****\n");
        printf("********\n");
    }
    //---------------------3
    #include<stdio.h>
    void main()
    {
        int r;
        printf("Enter circle r:");
        scanf("%d",&r);
        printf("%f\n",r*r*3.14);
    }
    //-----------------------4
    #include<stdio.h>
    void main()
    {
        int a,b;
        printf("Enter two integers:a,b\n");
        scanf("%d%d",&a,&b);
        printf("a+b=%d\n",a+b);
    }
    //------------------------5
    #include<stdio.h>
    void main()
    {
        int a,b;
        printf("Enter two integer:a,b");
        scanf("%d%d",&a,&b);
        printf("a+b=%d\n,a-b=%d\n",a+b,a-b);
    }
    //--------------
  • 相关阅读:
    20165312 我期望的师生关系
    zookeeper04---ZAB协议
    zookeeper03-集群搭建
    zookeeper02
    Zookeeper01
    防止重复提交
    手动抛出异常事务回滚问题
    redis-07主从复制
    redis06-事务
    Redis-05持久化
  • 原文地址:https://www.cnblogs.com/herizai/p/3120980.html
Copyright © 2011-2022 走看看