实验7

我的博客园出了点问题,上传了第一张图片之后就显示未登录,没法继续上传图片,所以只有11-7有图片了,望见谅。



#include<iostream> using namespace std; int main() { ios_base::fmtflags original_flags=cout.flags(); cout<<812<<'|'; cout.setf(ios_base::left,ios_base::adjustfield); /*将格式调整为左对齐*/ cout.width(10); /*设置宽度为10 */ cout<<813<<815<<'\n'; cout.unsetf(ios_base::adjustfield); /*取消已设的格式定义 */ cout.precision(2); /*设置精度为2 */ cout.setf(ios_base::uppercase|ios_base::scientific);/*用科学格式显示浮点数值 ,对于科学数值显示大写字母E*/ cout<<813.0; cout.flags(original_flags); /*回复初始 */ return 0; }

 

2.11-3

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

 3.11-4

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

4

#include<iostream>
#include<fstream>
#include<string>
#include<stdlib.h>
using namespace std;
int m;
struct student
{
    string num;
    string stuid,name,cls;
}stu[100];
int main(){
    ifstream in("list.txt");
    int i=0;
    while(in>>stu[i].num>>stu[i].stuid>>stu[i].name>>stu[i].cls)
    {
        i++;
    }
    in.close();
    ofstream out("roll.txt");
    for(int i=1;i<=5;++i)
    {
        srand((unsigned)time(NULL));
        int a=rand()%a.size();
        cout<<stu[a].num<<" "<<stu[a].stuid<<" "<<stu[a].name<<" "<<stu[a].cls<<endl;
        out<<stu[a].num<<" "<<stu[a].stuid<<" "<<stu[a].name<<" "<<stu[a].cls<<endl;
    }
    out.close();
    return 0;
}

 

5

#include<bits/stdc++.h>
using namespace std;
const char de[]={'"',',',' ','.','\0','!','?','-','(',')','#','/',':'};//分割字符串,配合strtok使用
int main(){
cout<<"Please Enter filename:\n";
string filename;
cin>>filename;
ifstream fin(filename.c_str());
string line;
long long linenum=0,chnum=0,wordnum=0;
while(getline(fin,line)){
    char *tmp=new char[line.length()+1];
    strcpy(tmp,line.c_str());
    char *tmp2;
    tmp2=strtok(tmp,de);  /*这里是用的分割字符串,可以将符号都变成\0*/
    if(tmp2!="")wordnum++;
    while((tmp2=strtok(NULL,de)))wordnum++;
    linenum++;
    chnum+=line.size();
}
cout<<"行数:"<<linenum<<" 字符数:"<<chnum<<" 单词数:"<<wordnum;
fin.close();
return 0;
} 

 

posted @ 2018-06-20 21:27  春风十里五千米  阅读(142)  评论(0编辑  收藏  举报