未解决

  1 void input()
  2 {
  3 int row=3,col=3;//resize(),设置大小(size);reserve(),设置容量(capacity);size()是分配容器的内存大小,
  4 //而capacity()只是设置容器容量大小,但并没有真正分配内存。
  5 //打个比方:正在建造的一辆公交车,车里面可以设置40个座椅(reserve(40);),这是它的容量,
  6 //但并不是说它里面就有了40个座椅,只能说明这部车内部空间大小可以放得下40张座椅而已。而车里面安装了40个座椅(resize(40);),
  7 //这个时候车里面才真正有了40个座椅,这些座椅就可以使用了
  8 a.resize(row,vector<int>(col));
  9 for(int i=0;i<row;++i)
 10 for(int j=0;j<col;++j)
 11 cin>>a[row][col];
 12 }
 13 void transport()
 14 {
 15 vector<vector<int>>b(a[0].size,vector<int>(a.size()));
 16 for(int i=0;i<a.size();++1)
 17 for(int j=0;j<a[0].size();++i)
 18 b[j][i]=a[i][j];
 19 a=b;
 20 }
 21 #include<iostream>
 22 #include<iomanip>
 23 #include<fstream>
 24 #include<vector>
 25 #include"a1.h"
 26 #include"a2.h"
 27 using namespace std;
 28 int main()
 29 {
 30 input();
 31 transpose();
 32 print();
 33 return 0;
 34 }
 35 void print()
 36 {
 37 for(int i=0;i<a.size();++i)
 38 for(int j=0;j<a[0].size();++1)
 39 cout<<setw(4)<<a[i][j];
 40 cout<<endl;
 41 }
 42 void input();
 43 void transpose();
 44 void print();
45 #include<iostream> 51 #include<fstream> 52 #include<stdlib.h> 53 using namespace std; 54 55 static string str = "in.txt";//保存代码的的文件 56 char *temp; //保存字符组成的单词 57 char *keyword[] = {"int","main","char","if","else","for","while"};//关键字 58 int n = 0; 59 void analyzer(ifstream& in_stream) 60 { 61 char next; 62 in_stream.get(next);//读取文件中的字符 63 int i = 0; 64 int sum = 0; 65 while(!in_stream.eof()) 66 { 67 if(((next<='z')&&(next>='a'))||((next<='Z')&&(next>='A')))//判断读取的是不是字母 68 { 69 temp[i] = next; 70 i ++; 71 } 72 else 73 { 74 if((next>='0')&&(next<='9'))//判断读取的是不是数字 75 { 76 sum = sum * 10 + (next - '0'); 77 } 78 else 79 { 80 switch(next) 81 { 82 case '=': 83 cout<<"(21,”=“)"<<endl; 84 break; 85 case '+': 86 cout<<"(22,”+“)"<<endl; 87 break; 88 case '-': 89 cout<<"(23,”-“)"<<endl; 90 break; 91 case '*': 92 cout<<"(24,”*“)"<<endl; 93 break; 94 case '/': 95 cout<<"(25,”/“)"<<endl; 96 break; 97 case ';': 98 cout<<"(32,”;“)"<<endl; 99 break; 100 case '': 101 cout<<"(33,”:“)"<<endl; 102 break; 103 case '{': 104 cout<<"(30,”}“)"<<endl; 105 break; 106 case '}': 107 cout<<"(31,”}“)"<<endl; 108 break; 109 case '': 110 cout<<"(26,”(“)"<<endl; 111 break; 112 case '': 113 cout<<"(27,”)“)"<<endl; 114 break; 115 default: 116 break; 117 } 118 cout<<"(3,”"<<sum<<")"<<endl; 119 sum = 0; 120 } 121 while(strcmp(temp,keyword[n])!=0) 122 { 123 n ++; 124 } 125 cout<<"("<<n + 1<<","<<keyword[n]<<endl; 126 n = 0; 127 } 128 } 129 } 130 131 132 int main() 133 { 134 ifstream fin; 135 ofstream fout; 136 char in; 137 138 fout.open(str);//向文件中写入代码 139 if(fout.fail()) 140 { 141 cout<<"Output file opening failed."<<endl; 142 exit(1); 143 } 144 145 fin.open(str); 146 if (fin.fail()) 147 { 148 cout<<"Input file opening failed."<<endl; 149 exit(1); 150 } 151 152 cout<<"输入你的程序"<<endl; 153 cin>>in; 154 fout<<in; 155 156 analyzer(fin); 157 158 fin.close(); 159 fout.close(); 160 return 0; 161 }

 

posted @ 2013-05-23 14:12  herizai  阅读(224)  评论(0编辑  收藏  举报