#include<iostream>
#include<fstream>
#include<cstring>
#include<vector>
#include<ctime>
#include<cstdlib>
using namespace std;
class stu{
	private:
		int order;
		string id,name,cla;
	public:
		stu(const stu &p);
		stu(int orderx,string idx,string namex,string clax);
		void print();
		int geto(){return order;}
		string geti(){return id;}
		string getn(){return name;}
		string getc(){return cla;}
};
stu::stu(const stu &p){
	order=p.order;
	id=p.id;
	name=p.name;
	cla=p.cla;
}
stu::stu(int orderx,string idx,string namex,string clax):order(orderx),id(idx),name(namex),cla(clax){}
void stu::print(){
	cout<<order<<" "<<id<<" "<<name<<" "<<cla<<endl;
}
int main(){
	vector<stu> stus;
	int order;
	string id,name,cla;
	char ch;//读取上一行的换行符 
	string filename;
	cout<<"输入要打开的班级"<<endl;
	cin>>filename; 
	ifstream fin(filename);
	if(!fin){
		cout<<"fail to open list.txt"<<endl;
		return 1;
	}
	while(fin>>order>>id>>name>>cla){
		fin.get(ch);
        stus.push_back(stu(order,id,name,cla)) ;
}
		fin.close();
    time_t t = time(0); 
    char tmp[64]; 
    strftime( tmp, sizeof(tmp), "%Y%m%d%H%M%S.txt",localtime(&t) );
    string filename2=tmp;
	ofstream fout(filename2);
	if(!fout){
		cout<<"fail to open"<<endl;
		return 1;
	}
	srand(time(NULL));
	int n;
	cout<<"继续点名输入1,否则输入2"<<endl; 
	while(cin>>n){
		if(n==1){
	int j=rand()%stus.size();
    
	stu exm(stus[j]);
	exm.print();
	fout<<exm.geto()<<" "<<exm.geti()<<" "<<exm.getn()<<" "<<exm.getc()<<endl;
}
    else
    
    break;
	}
	fout.close() ;
	return 0;
} 

  

 

#include<iostream>
#include<fstream>
#include<cstring>
using namespace std;
int main(){
	string filename;
	cout<<"输入文件名"<<endl;
	cin>>filename;
	ifstream fin(filename);
	if(!fin){
		cout<<"fail to open"<<endl;
	}
	char ch;
	int hs=0;//行数 
	string line;
	int zfs,dcs;//字符数 
	bool flag=true;
	while(getline(fin,line)){
		for(int i=0;i<line.size();i++){
			if(line[i]>='a'&&line[i]<='z'){
				if(flag==true)
				dcs++;
				flag=false; 
		}
		    else
		    flag=true;
	}
		fin.get(ch); 
		hs++; 
		zfs+=line.size(); 
	}
	cout<<"行数: "<<hs<<" "<<"单词数:"<<dcs<<" "<<"字符数:"<<zfs;
	fin.close();
	return 0;
} 

  

#include<fstream>
using namespace std;
int main(){
ofstream myFile("test1.txt");
myFile<<"已成功写入文件!";
myFile.close();
return 0; 
}

  

#include<iostream>
#include<fstream>
#include<cstring>
using namespace std;
int main(){
	string s;
	ifstream in("test1.txt");
	if(!in){
		cout<<"fail to open." << endl;
		return 1;
	}
	in>>s;
	cout<<s<<endl;
	in.close();
	return 0;
} 

  

 #include <iostream>
using namespace ::std;
int main() {
ios_base::fmtflags original_flags = cout.flags(); //保存cout参数设置 
cout<< 812<<'|';
cout.setf(ios_base::left,ios_base::adjustfield); //左对齐值 
cout.width(10); //将cout宽度改为10 
cout<<813<<815<<'\n';
cout.unsetf(ios_base::adjustfield); //取消cout对齐方式的设置 
cout.precision(2);// 设置浮点数输出的精度值 
cout.setf(ios_base::uppercase|ios_base::scientific); //以科学格式显示浮点数 显示大写字母E 
cout <<831.0;
cout.flags(original_flags); //恢复cout原参数设置 
return 0;
}