timetable.cpp 部分:
1 #include <iostream> 2 #include <iomanip> 3 #include "timetable.hpp" 4 #include <stdio.h> 5 #include <string.h> 6 7 using namespace std; 8 9 void print_timetable(timetable_s tt[7],int n); 10 void timetable::show(timetable_s tt[7]) {// print all the timetable 11 // timetable_s *tp; 12 //tp = tt; // tt is the pointer 13 string str = "timetable info"; 14 int i = 0; 15 cout << setw(20) << str << endl; 16 for (i = 0; i < 7 ; i ++ ) { 17 print_timetable(tt ,i); 18 cout << endl; 19 } 20 21 22 23 } 24 25 26 27 28 void timetable::print_timetable(timetable_s tt[7],int n) { 29 timetable_s *tp; 30 tp = tt; 31 int i = 0; 32 33 for (i = 0; i <= n; i ++) { 34 if (i == n ) { 35 tp = tp+i; 36 } 37 } 38 cout << setw(20) << tp->weekday << endl; 39 for (i = 0; i< 3; i++) { 40 cout << setw(10) << tp->One[i] ; 41 } 42 cout << endl; 43 for (i = 0; i< 3; i++) { 44 cout << setw(10) << tp-> Two[i]; 45 } 46 cout << endl; 47 for (i = 0; i < 3 ; i++) { 48 cout << setw(10) << tp-> Three[i] ; 49 } 50 cout << endl; 51 for (i = 0; i <3 ; i++) { 52 cout << setw(10) << tp->Four[i]; 53 } 54 cout << endl; 55 }
timetable.hpp 部分:
1 #include <iostream> 2 #include <string> 3 4 using namespace std; 5 6 struct timetable_s 7 { 8 9 string weekday; 10 string One[3]; 11 string Two[3]; 12 string Three[3]; 13 string Four[3]; 14 }; 15 16 17 class timetable { 18 19 public: 20 static void show(timetable_s *); 21 //static int get_weekday(string weekday); 22 static void print_timetable(timetable_s *, int n); 23 24 };
main.cpp :
1 #include <iostream> 2 #include <iomanip> 3 #include "timetable.hpp" 4 #include <string.h> 5 #include <stdio.h> 6 7 8 9 int main(int argc, char *argv[]) { 10 int i; 11 string str; 12 timetable_s tt[7] = {{"Monday",{"ZhengZhuan", "1-18", "5-401"},{"Huobi","1-18", "3-303"},{"Xingxi","4,8,12,16", "3-307"},{"empty","empty","empty"}}, 13 {"Tusday",{"English","1-18", "2-308"},{"English Listening", "1-16", "1-508"},{"empty","empty","empty"},{"Kuiji", "1-6", "5-402"}}, 14 {"Wednesday",{"Tiyu","1-15","Ground"},{"MaoGai", "1-18","3-308"},{"ZhengZhuan", "1-6", "5-401"},{"Huobi","1-6","1-303"}}, 15 {"Thusday",{"GouJiMaoYi","1-16","Z-704"},{"English", "1-14", "2-308"},{"empty","empty","empty"},{"empty","empty","empty"}}, 16 {"Friday",{"Kuiji","1-18","5-402"},{"Renli","2-13", "5-201"},{"empty","empty","empty"},{"empty","empty","empty"}},{"Sat",{"empty","empty","empty"},{"empty","empty","empty"},{"empty","empty","empty"},{"empty","empty","empty"}}, 17 {"Sun",{"empty","empty","empty"},{"empty","empty","empty"},{"empty","empty","empty"},{"empty","empty","empty"}} 18 }; 19 20 printf("input the weekday for int number\n") ; 21 printf("number is :1, 2 ,3 ,4 ,5 ,6 ,7\n"); 22 printf("argumenut -all //print the hole timetable\n"); 23 printf("argumenu -input // then input a int number\n"); 24 if (argc > 1 ){ 25 if (!strcmp(argv[1],"-input")) { 26 printf("input a number:"); 27 28 cin >> i; 29 timetable::print_timetable(tt, i-1); 30 } 31 if (!strcmp(argv[1],"-all")) { 32 timetable::show(tt); 33 } 34 } 35 // else { 36 // cerr << "not input " << endl; 37 // } 38 return 0; 39 }
编译方法:
1 $ g++ -o timetable main.cpp timetable.cpp -I.