首页 > 其他分享 >实验六

实验六

时间:2022-12-06 23:45:14浏览次数:25  
标签:std int Vector 实验 using include out

task3_1.cpp

#include<iostream>
#include<fstream>
#include<array>
#define N 5
int main(){
    using namespace std;
    array<int,N> x{97,98,99,100,101};
    ofstream out;
    out.open("data.txt",ios::binary);
    if(!out.is_open()){
        cout<<"fail to open data1.dat\n";
        return 1;
    }
    out.write(reinterpret_cast<char *>(&x),sizeof(x));
    out.close();
}

task3_2.cpp

#include<iostream>
#include<fstream>
#include<array>
#define N 5
int main(){
    using namespace std;
    array<char,N>x;
    ifstream in;
    in.open("data.dat1",ios::binary);
    if(!in.is_open()){
        cout<<"fail to open data1.dat\n";
        return 1;
    }
    in.read(reinterpret_cast<char *>(&x),sizeof(x));
    in.close();
    for(auto i=0;i<N;i++)
    cout<<x[i]<<",";
    cout<<"\b\b\n";
}

测试截图

char型占1个字节,而int型占4个字节

Vector.hpp

#pragma once
#include<iostream>
using namespace std;
template<typename T>
class Vector
{
    public:
        Vector(int n):size{n}
        {
            value=new T[n];        
        }
        Vector(int n,T v):size{n}
        {
            value=new T[n];
            for(int i=0;i<n;i++)
            value[i]=v;
        }
        Vector(const Vector<T> &a):size{a.size}
        {
            value=new T[size];
            for(int i=0;i<size;i++)
            value[i]=a.value[i];
        }
        T &operator[](int i)
        {
            return value[i];
        }
        int get_size() const
        {
            return size;
        }
        T &at(int index)
        {
            return value[index];
        }
        friend void output(const Vector<T> &a)
        {
            for(int i=0;i<a.size;i++)
            cout<<a.value[i]<<",";
            cout<<"\b\b\n";
        }
    private:
        int size;
        T *value;
};

 

task4.cpp

#include<iostream>
#include"vector.h"
void test(){
    using namespace std;
    int n;
    cin>>n;
    Vector<double> x1(n);
    for(auto i=0;i<n;i++)
    x1.at(i)=i*0.6;
    
    output(x1);
    
    Vector<int> x2(n,88);
    Vector<int> x3(x2);
    
    output(x2);
    output(x3);
    
    x2.at(0)=66;
    output(x2);
    
    x3[0]=666;
    output(x3);
}
int main(){
    test();
}

测试截图

task5.cpp

#include<fstream>
#include<iostream>
#include<iomanip>

using std::endl;
using std::setw;
using std::ofstream;

void output(std::ostream& out)
{
    out << "  ";
    char n = 'a';
    for (int i = 1; i <= 26; ++i, ++n) 
    {
        out << setw(2) << n;
    }
    out << endl;
    for (int i = 1; i <= 26; ++i) 
    {
        out << setw(2) << i;
        if (n == 'Z')
        {
            n = 'A';
        }
            
        else
        {
            n = i + 'A';
        }
        for (int j = 1; j <= 26; ++j, ++n) 
        {
            out << setw(2) << n;
            if (n == 'Z')
            {
                n = 'A' - 1;
            } 
        }
        out << endl;
    }
}

int main() 
{
    output(std::cout);
    ofstream out;
    out.open("cipher_key.txt");
    if (!out.is_open()) 
    {
        std::cout << "fail to open file cipher_key.txt.\n";
        return 1;
    }
    output(out);
    out.close();
}

 

测试截图

 

标签:std,int,Vector,实验,using,include,out
From: https://www.cnblogs.com/dingxincheng/p/16961812.html

相关文章

  • 实验六
    实验三task3_1.cpp#include<iostream>#include<fstream>#include<array>#defineN5intmain(){usingnamespacestd;array<int,N>x{97,98,99,......
  • 程序设计基础实验课 单元六的题-UVA10410 TreeReconstruction 树重建
    入门指南题面:  洛谷题面:   观看的题解:https://www.cnblogs.com/jerryRey/p/4622927.html  对样例区样例画的一些图:       题目的一些争议......
  • 实验六
    task3-1cpp#include<iostream>#include<fstream>#include<array>#defineN5intmain(){usingnamespacestd;array<int,N>x{97,98,99,100,......
  • 实验六
    试验任务三task3_11#include<iostream>2#include<fstream>3#include<array>4#defineN556intmain(){7usingnamespacestd;89......
  • 实验六
    #include<iostream>#include<fstream>#include<array>#defineN5intmain(){usingnamespacestd;array<int,N>x{97,98,99,100,101};......
  • 实验六
    #pragmaonce#include<iostream>usingstd::cout;usingstd::endl;template<typenameT>classVector{public:Vector(Tn):size(n){p=newT[n];}V......
  • 实验六
    实验任务3#include<iostream>#include<fstream>#include<array>#defineN5intmain(){usingnamespacestd;array<int,N>x{97,98,99,100,......
  • 实验六 模板类和文件IO
    任务四代码:Vector.hpp:#pragmaonce#include<iostream>usingnamespacestd;template<classT>classVector{public:Vector(intsize0):size{size......
  • 实验六 模板类和文件IO
    Task4//VEctor.hpp#include<bits/stdc++.h>usingnamespacestd;template<typenameT>classVector{private:intlength;T*base;publ......
  • 包层次的时间同步实验
    一、实验目的理解掌握时间同步的重要意义了解时间同步的基本方法,理解TPSN协议机理掌握TinyOS定时器相关接口和组件的使用4.能够在TinyOS中实现多节点间的时间......