可疑情况(人物)报告程序
一、目的
本程序的目的是为了加强公司内的可疑情况发生的管理。
二、范围
本程序主要适用于公司全体员工。
三、工作程序
凡在厂区内发现可疑情况(人物)按下述程序报告、处置:
1、门卫室严格来客登记制度,对陌生来客验明身份,对拒不登记或强行闯入的来客应立即报告行政主管处置。
2、在厂区内发现一般可疑情况可向所在车间(部门)负责人报告,车间(部门)负责人不能排除疑点的向行政主管报告,行政主管不能排除的向厂长报告。
3、在厂区内发现重大可疑情况的(如失窃,安全隐患)应立即向行政主管或厂长报告。
4、在厂区内发现可疑人物的,一律向行政主管报告,行政主管巡查后仍有疑点的,可同时向厂长和当地派出所报告。
5、可疑情况(人物)必须做到有疑必报,有报必答,(即在排除或处置可疑情况后将结果反馈给报告人)。
报告电话:
公司内部电话: 110 121
土桥派出所电话: 110 0769-87731134
清溪公安分局电话: 0769-87731524
东莞海关监管电话: 0769-22004438
第二篇:程序报告
面向对象编程(c++)课程设计 程序报告
学院:信息科学与工程学院 专业:电气信息1217班 学号:0909121711 姓名:任万新 日期:2013.7.3 指导老师:雷琪
一, 基本内容和要求
设计一个职工信息管理案例,实现不同类别职工的工资数据。职工种类包括:正式职工和临时职工。要求实现:数据文件管理功能;计算与统计功能;记录管理功能
二, 软件设计整体规划及方案
定义一个基本职工类,信息包括:编号,姓名,性别,年龄,家庭住址,基本职务工资。派生出正式职工类,增加的属性包括:岗位津贴,养老金,住房公积金,所得税,医疗保险,实发工资;临时工增加的属性包括:奖金,所得税,实发工资。
1,正式职工:实发工资=基本职务工资+岗位津贴-养老金-住房公积金-所得税-医疗保险;
2,临时工:实发工资=基本职务工资+奖金-所得税;
三, 程序功能简介
1,数据文件管理功能:利用输入输出流创建新文件,打开文件,保存文件。
2,计算与统计功能:采用静态数据成员与成员函数完成记录中相关数据的统计;
(1)能够打开已存在的数据表文件,对数据表中与某关键字匹配的相关记录进行数据统计
(2)计算每个职工基本工资
3,记录管理功能:利用和继承与派生思想创建不同的类;记录的管理采用链表或者指针数组实现;采用抽象类,虚函数等实现对象
与函数的动态关联,体现多态性。
(1)输入,添加,插入记录:利用重载运算符“>>”完成对任意一条记录输入,添加,或插入数据表中,并保存到数据文件中。
(2)查询,显示记录:打开已存在的数据表文件,根据要求按所给记录关键字查询一个或多个相关联的各项信息。
(3)修改记录:打开数据表文件,对确定的任意记录进行修改,在修改过程中,显示记录信息,给出确认指示,并对更新的记录保存。
(4)删除记录:打开文件,可以删除任意记录,具有恢复功能和物理删除功能,并保存。
四,目录
1,设计分析,
2,程序结构
3,各模块功能及程序说明
4,相关模块源程序
5,操作方法
6,试验结果
7,设计体会
8,参考文献
主要内容:
1,设计分析
根据要求,程序应该实现对职工数据文件管理功能;计算与统计
功能;记录管理功能,因此程序中构造了很多实现这些目的的函数来一一完成题目要求。其次,职工又分为,正式职工和非正式职工,而且两者的基本信息有不同的,又有相同的,所以我开始定义了一个基类,它的私有数据包括编号,姓名,性别,年龄,家庭住址,基本职务工资,并对它们初始化。然后又派生了两个类,分别代表正式职工和非正式职工。
正式职工:在基类的基础上增加了岗位津贴,养老金,住房公积金,所得税,医疗保险,所得税和实发工资,并进行初始化。
非正式职工:在基类的基础上增加了奖金,所得税,实发工资,并对他们进行初始化。
接下来,开始构造不同的函数来实现不同的功能,比如添加,修改,保存,删除,恢复等一系列功能,最后完成主函数,最后对程序代码进行优化,完成程序的设计。
2,程序的结构
程序的前半部分,定义了基类basic,对编号,姓名,性别,年龄,,家庭住址,基本职务工资这些数据进行了初始化,把它们封装起来,然后利用继承和派生思想,分别对正式职工和非正式职工创建了类,把它们独有的数据初始化并保存封装。接下来,有创建了一个类link,用于链接数据库文件。前半部分主要是类的创建,继承,派生,对职工的属性进行封装,初始化,以便后面调用。
程序的中间部分,主要构造了一系列函数,对前面类中初始化的数据进行操作,首先构造了正式职工类插入新结点函数,接下来是,
正式职工类输入新纪录的函数,非正式职工类插入新结点函数,非正式职工类输入新纪录的函数,输入函数,正式职工工资信息输出函数,非正式职工工资信息输出函数,输出函数,修改函数,删除函数,恢复函数,统计函数。依次完成了职工信息的输入,输出,保存,修改,删除,恢复。
程序的后半部分,是主函数部分,定义了存储正式和非正式职工结点的类指针,定义了程序运行界面,在循环系统中依此调用了链接函数,输入函数,输出函数,查找函数,删除函数,恢复函数,修改函数,统计函数和文件保存函数。
3,各模块的功能及程序
4,相关模块源程序
(1)基类的创建,
对编号,姓名,性别,年龄,基本工资,住址初始化,设置默认参数,并将姓名,性别,年龄,基本工资,住址定义为保护数据,在此基础上派生。
class basic //基本类
{
public:
int id; //编号 用来识别
basic *next;
basic() //初始化,设置默认参数
{
this->name="未注明";
this->sex = "未注明";
this->age = 0;
this->id = 0;
this->s = 0;
this->xs = "未注明";
this->next=NULL;
}
void set()
{
cout<<"编号:";
cin>>id;
cout<<"姓名:";
cin>>name;
cout<<"性别:";
cin>>sex;
cout<<"年龄:";
cin>>age;
cout<<"基本工资:";
cin>>s;
cout<<"住址:";
cin>>xs;
}
void display()
{
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"| 编号 | 姓名 | 性别 | 年龄 | 基本工资 | 住址 | "<<endl;
cout<<"--------------------------------------------------------------------------------"<<endl;
printf("| %5d| %13s| %5s| %5d| %9d| %17s|\n",id,name.c_str(),sex.c_str(),age,s,xs.c_str());
cout<<"--------------------------------------------------------------------------------"<<endl;
}
virtual void infromfile(ifstream&); //从文件读取
virtual void writetofile(ofstream&); //写入到文件
protected:
string name; //姓名
string sex; //性别
int age; //年龄
int s; //基本工资
string xs; //住址
};
(2)派生出正式职工的类
首先,定义了链表后驱指针,然后,对私有数据:岗位津贴,养老保险,住房公积金,所得税,医疗保险,所得税,实发工资初始化,设置默认参数,并保存。
class formal:public basic
{
public:
char type;
formal *next; //定义链表的后驱指针
formal()
{
this->type = 'f';
this->jintie = 0;
this->yang = 0;
this->zhu= 0;
this->suo = 0;
this->yi = 0;
this->suo1= 0;
this->shi= 0;
this->next = NULL;
}
void set_f()
{
type = 'f';
cout<<"岗位津贴:";
cin>>jintie;
cout<<"养老保险:";
cin>>yang;
cout<<"住房公积金:";
cin>>zhu;
cout<<"所得税:";
cin>>suo;
cout<<"医疗保险:";
cin>>yi;
cout<<"所得税:";
cin>>suo1;
shi=s+jintie+yang+zhu+yi-suo-suo1;
cout<<"实发工资:"<<shi<<endl;
}
void dispay_f()
{
cout<<"--------------------------------------------------------------------------------"<<endl;
cout<<"| 岗位津贴 | 养老保险 | 住房公积金 | 所得税 | 医疗保险 | 所得税 | 实发工资 |"<<endl;
cout<<"--------------------------------------------------------------------------------"<<endl;
printf("| %9d| %9d| %11d| %7d| %9d| %8d| %9d|\n",jintie,yang,zhu,suo,yi,suo1,shi);
cout<<"--------------------------------------------------------------------------------"<<endl;
}
void infromfile(ifstream&); //从文件读取
void writetofile(ofstream&); //写入到文件
int shi; //实发工资
private:
int jintie; //岗位津贴
int yang ; //养老保险
int zhu; //住房公积金
int suo; //所得税
int yi; //医疗保险
int suo1; //所得税
};
(3)派生出非正式职工的类
首先定义非正式职工信息链表后驱指针,对其私有数据:奖金,所得税,实发工资,初始化,设置默认参数,并保存。
class informal : public basic //派生类 非正式职工 {
public:
char type;
informal *next; //定义非正式职工信息链表的后驱指针 informal()
{
this->type = 'i';
this->jiang= 0;
this->suo2=0;
this->shi2=0;
this->next = NULL;
}
void set_i()
{
type = 'i';
cout<<"奖金:";
cin>>jiang;
cout<<"所得税:";
cin>>suo2;
shi2=s+jiang-suo2;
cout<<"实发工资:";
cout<<shi2;
cout<<endl;
}
void display_i()
{
cout<<"--------------------------------------------------------------
------------------"<<endl;
cout<<"| 奖金 | 所得税 | 实发工资 | "<<endl;
cout<<"--------------------------------------------------------------
------------------"<<endl;
printf("| %14d| %14d| %16d|\n",jiang,suo2,shi2);
}
void infromfile(ifstream&); //从文件读取
void writetofile(ofstream&); //写入到文件
int shi2;
private:
int jiang;//奖金
int suo2;//所得税
};
(4)构造链接函数
class link//link类,用于链接数据库文件
{
public:
string printmenu(void);
private:
string newdata(void);
string opendata(void);
};
(5)构造输入函数(把职工信息输入电脑)
选择要输入的职工类别,依此输入编号,姓名,性别,年龄,住址,基本工资,输入y继续输入该职工类职工信息,输入其他字符,结束当前职工类信息的输入。
formal *input_f(formal *head) //正式职工类输入新记录的函数参数和返回值相通
{
formal *fo,*p;
char k;
do{
system("cls");
fo= new formal();
cout<<"请输入要添加职工信息:"<<endl;
fo->set();
fo->set_f(); //获取新信息
p=insert_f(head,fo); //调用插入结点函数把刚输入的信息插入到链表中
n1++;
cout<<"是否继续输入?(y/n):";
cin>>k;
}while(k=='y' || k=='Y');//输入Y继续插入数据,输入其他任意键返回
return p;
}
informal *insert_i(informal *head,informal *pn) //非正式职工类插入新结点函数
{
informal *pc,*pa;
pc=pa=head;
if(head==0)
{
head=pn;
pn->next=0;
return head;
}
if(pn->id <= head->id)
{
pn->next=head;
head=pn;
return head;
}
while(pc->next!=0&&pn->id>=pc->id)
{
pa=pc;
pc=pc->next;
}
if(pn->id >= pc->id)
{
pc->next=pn;
pn->next=0;
}
else
{
pn->next=pc;
pa->next=pn;
}
return head;
}
informal *input_i(informal *head) //非正式职工类输入新记录的函数 {
informal *inf,*p;
char k;
do{
system("cls");
inf= new informal();
cout<<"请输入要添加非职工信息:"<<endl;
inf->set();
inf->set_i(); //获取新信息
p=insert_i(head,inf); //调用插入结点函数
n2++;
cout<<"是否继续输入?(y/n):";
cin>>k;
}while(k=='y' || k=='Y'); //输入Y继续插入数据,输入其他任意键返回
return p;
}
int input(formal *head_f,informal *head_i) //输入函数,两个参数 {
int k=0;
for(;;)
{
system("cls");
cout<<"请选择你要添加的职工信息的类别:(1.正式职工 or 2.非正式职工 3.返回)";
cin>>k;
switch(k)
{
case 1 : head_f = input_f(head_f); break;
case 2 : head_i = input_i(head_i);break;
default:return 1;
}
}
}
(6)构造输出函数 (把输入的信息保存,输出)
用于把输入的职工信息显示在电脑屏幕上,以便核对,纠正,数据统计。
void output_f(formal *head) //正式职工工资信息输出函数
{
formal *p;
p = head->next;
while(p != NULL){
p->display();
p->dispay_f();
p = p->next;
}
}
void output_i(informal *head) //非正式职工工资信息输出函数 {
informal *p;
p = head->next;
while(p != NULL){
p->display();
p->display_i();
p = p->next;
}
}
/////////////////////////////////////////////////////////////////
int output(formal *head_f,informal *head_i) //输出函数,两个参数 {
system("cls");
if(head_f->next==NULL)
cout<<"无正式职工工资信息"<<endl;
else{
cout<<"正式职工工资信息:"<<endl;
output_f(head_f);}
if(head_i->next==NULL)
cout<<"无非正式职工工资信息"<<endl;
else{
cout<<"非正式职工工资信息:"<<endl;
output_i(head_i);}
system("pause");
return 1;
}
(7)修改函数(对输入的信息修改)
选择要修改的职工类别(1,正式职工 2,非正式职工回),输入要修改的职工编号,然后重新输入此职工的信息。 formal *edit_f(formal *head) //修改正式职工信息 {
formal *p;
int num;
if(head==0){
cout<<"无正式职工信息!";
system("pause");
return 0;
}
cout<<"请输入要修改的职工编号:"<<endl;
cin>>num;
p=head;
while(num!=p->id){
if(p->next==0) break;
p=p->next;
}
if(p->id==num){
cout<<"请输入新的职工信息:"<<endl;
p->set();
p->set_f();
system("pause");
}
else{ ,返 3
cout<<"无此非正式职工信息!"<<endl;
system("pause");
return head;
}
return head;
}
informal *edit_i(informal *head) //修改非正式职工信息 {
informal *p;
int num;
if(head==0){
cout<<"无非正式职工信息!";
system("pause");
return 0;
}
cout<<"请输入要修改的职工编号:";
cin>>num;
p=head;
while(num!=p->id){
if(p->next==0) break;
p=p->next;
}
if(p->id==num){
cout<<"请输入新的职工信息:"<<endl;
p->set();
p->set_i();
system("pause");
}
else{
cout<<"无此非正式职工信息!";
system("pause");
return head;
}
return head;
}
//////////////////////////////////////////////////////////////////////
int edit(formal *head_f,informal *head_i) //修改函数,两个参数 {
int k=0;
system("cls");
for(;;)
{
cout<<"请选择您要修改的职工信息类别:(1.正式职工 or 2.非正式职工 3.返回)";
cin>>k;
switch(k)
{
case 1 : head_f = edit_f(head_f); break;
case 2 : head_i = edit_i(head_i);break;
default:return 1;
}
}
}
(8)查找函数(从输入的信息中查找需要的信息)
选择要查找的职工类别,(1,正式职工 2,非正式职工 3,返回),然后输入要查找的职工编号,此职工的信息将被查找出来。 int find(formal *head_f,informal *head_i)//查找函数(按照编号查找),两个参数
{
formal *ps;informal *pt;
int fid;
system("cls");
ps = new formal();pt = new informal();
ps = head_f; pt = head_i;
cout<<"请输入您要查找的职工编号:";
cin>>fid;
if(ps==NULL){}
else{
while(ps->id!=fid)
{
if(ps->next == NULL) break;
ps = ps->next;
}
}
if(pt == NULL){}
else{
while(pt->id!=fid)
{
if(pt->next == NULL) break;
pt = pt->next;
}
}
} if(ps->id == fid){ ps->display(); ps->dispay_f(); } else if(pt->id == fid){ pt->display(); pt->display_i(); }else { cout<<"无此职工信息!"<<endl; } system("pause"); return 1;
(9)删除函数(删除不需要的信息)
选择要删除的职工类别(1,正式职工 2,非正式职工 3,返回),输入要删除的职工编号。此职工信息将被删除。 formal *revertf;
formal *del_f(formal *head_f,int num) //删除正式职工信息 {
formal *p1,*p2,*p3;
if(head_f==0)
{
cout<<"无正式职工信息!";
goto end;
}
p1=head_f;
while(num!=p1->id)
{
if(p1->next==0)break;
p2=p1;
p1=p1->next;
}
if(num==p1->id)
{
p3=p1;
if(p1==head_f) head_f=p1->next;
else p2->next=p1->next;
n1--;
cout<<"删除(正式职工):"<<p1->id<<"目标:"<<num<<" 成功!
"<<endl;
revertf=insert_f(revertf,p3);
}
else{
cout<<"没有找到正式职工中编号为"<<num<<"的职工"<<endl; }
end:
return(head_f);
}
informal *reverti;
informal *del_i(informal *head_i,int num) //删除非正式职工信息 {
informal *p1,*p2,*p3;
if(head_i==0)
{
cout<<"无非正式职工信息!";
goto end;
}
p1=head_i;
while(num!=p1->id)
{
if(p1->next==0)break;
p2=p1;
p1=p1->next;
}
if(num==p1->id)
{
p3=p1;
if(p1==head_i) head_i=p1->next;
else p2->next=p1->next;
n2--;
cout<<"删除(非正式职工):"<<p1->id<<"目标:"<<num<<" 成功!"<<endl;
reverti=insert_i(reverti,p3);
}
else{
cout<<"没有找到非正式职工中编号为"<<num<<"的职工"<<endl;
}
end:
return(head_i);
}
//////////////////////////////////////////////////////////// int del(formal *head_f,informal *head_i)//删除函数,两个参数 {
int did;
system("cls");
cout<<"请输入要删除的职工编号:";
cin>>did;
del_f(head_f,did); //在正式职工类链表中删一遍
del_i(head_i,did); //同样在非正式职工类链表中再删一遍 system("pause");
return 1;
}
(10)恢复函数(恢复误删的信息)
选择要恢复的职工信息类别,输入职工编号。
formal *rev_f(formal *head)///////////////////////////////////正式职工类恢复函数
{
formal *p;
int num=0;
if(revertf==0) goto end;
cout<<"请输入您要恢复的职工编号:";
cin>>num;
p=revertf;
while(p!=0)
{
if(p->id==num) break;
p=p->next;
}
n1++;
head=insert_f(head,p);
end:return(head);
}
informal *rev_i(informal *head)////////////////////////////非正式职工类恢复函数
{
informal *p;
int num=0;
if(reverti==0) goto end;
cout<<"请输入您要恢复的编号:";
cin>>num;
p=reverti;
while(p!=0){
if(p->id==num) break;
p=p->next;
}
n2++;
head=insert_i(head,p);
end:return(head);
}
////////////////////////////////////////////////////////////////////////////////
int rev(formal *head_f,informal *head_i)///////////////////////恢复函数,两个参数
{
int t;
system("cls");
cout<<"请选择要恢复的职工类型:1.正式 2.非正式"; cin>>t;
if(t==1)
{
rev_f(head_f); //在正式职工类链表中恢复
cout<<"恢复成功!"<<endl;
}
if(t==2)
{
rev_i(head_i); //在非正式职工类链表中恢复
cout<<"恢复成功!"<<endl;
}
system("pause");
return 1;
}
(11)统计函数(对输入德信息统计,计算平均值,总和) 对输入的职工信息进行统计分析,求出平均值,总和。 formal *tong_f(formal *head_f)//正式职工类统计函数
{
int zong=0,ave=0;
formal *p;
p=head_f->next;
while(p!=0)
{
zong+=p->shi;
p=p->next;
}
ave=zong/n1;
cout<<"正式职工工资统计信息如下:"<<endl;
cout<<"工资总额:"<<zong<<endl;
cout<<"平均工资:"<<ave<<endl;
return head_f;
}
informal *tong_i(informal *head_i)//非正式职工类统计函数
{
int zong2=0,ave2=0;
informal *p;
p=head_i->next;
while(p!=0)
{
zong2+=p->shi2;
p=p->next;
}
ave2=zong2/n2;
cout<<"正式职工工资统计信息如下:"<<endl;
cout<<"工资总额:"<<zong2<<endl;
cout<<"平均工资:"<<ave2<<endl;
return head_i;
}
////////////////////////////////////////////////////////////////////////////////
int tongji(formal *head_f,informal *head_i)//统计函数,两个参数 {
system("cls");
if(head_f->next==NULL)
cout<<"无正式职工工资信息,无法统计!"<<endl;
else tong_f(head_f);
if(head_i->next==NULL)
cout<<"无非正式职工工资信息,无法统计!"<<endl;
else tong_i(head_i);
system("pause");
return 1;
}
(12)文件保存函数(将文件保存到电脑)
将文件保存
database)////////////////////////////////文件保存函数 {
ofstream fout(database.c_str(),ios::out); while(p!=NULL)
{
p->writetofile(fout);
p=p->next;
}
cout<<"文件保存成功!"<<endl;
system("pause");
}
string link::opendata(void)//打开已有数据库文件 {
string name;
char filedir[50];
int i;
FILE *dir;
system("cls");
for(i=0;i<32;i++) printf(" ");
cout<<"打开数据库\n";
for(i=0;i<26;i++) printf(" ");
cout<<"*************************\n\n";
dir=fopen("dir.txt","r");
system("dir *.data /b > dir.txt");
while(fgets(filedir,30,dir)!=NULL)
{for(i=0;i<26;i++) printf(" ");cout<<filedir;} fclose(dir);
cout<<'\n';
for(i=0;i<26;i++) printf(" ");
cout<<"*************************\n\n";
for(i=0;i<26;i++) printf(" ");
cout<<"输入文件名以打开:";
cin>>name;
ifstream fin(name.c_str(),ios::in);
if(fin) printf("打开成功!");
else printf("打开失败。");
system("pause");
fin.close();
return(name);
}
(13)主函数
int main()
{
int k=0;
char type;
formal *head_f;informal *head_i; //定义存储正式 非正式职工
头结点的类指针
head_f = new formal(); //动态创建派生的正式职工类
head_i = new informal(); //动态创建派生的非正式职工类
string database;
link o_link;
ifstream fin(database.c_str(),ios::in);
basic *head=NULL,*p;
if(fin>>type)
{
if(type=='f') head=new formal;
else head=new informal;
head->infromfile(fin);
p=head;
while(fin>>type)
{
if(type=='f') p->next=new formal;
else p->next=new informal;
p=p->next;
p->infromfile(fin);
}
}
for(;;)
{
cout<<" *************欢迎使用职工工资信息管理
系统****************"<<endl;
cout<<" * 1.新建或读取文件 *"<<endl;
cout<<" * 2.添加信息 *"<<endl;
cout<<" * 3.显示信息 *"<<endl;
cout<<" * 4.查找信息 *"<<endl;
cout<<" * 5.删除信息 *"<<endl;
cout<<" * 6.恢复信息 *"<<endl;
cout<<" * 7.修改信息 *"<<endl;
cout<<" * 8.统计信息 *"<<endl;
cout<<" * 9.保存文件 *"<<endl;
cout<<" * 0.退出系统 *"<<endl;
cout<<" * 请选择您的操作 *"<<endl;
cout<<"
*********************************************************"<<endl;
cin>>k;
switch(k) //选择功能
{
case 1:database=o_link.printmenu();break;//调用链接函数 case 2:input(head_f,head_i);break; //调用输入函数
case 3:output(head_f,head_i);break; //调用输出函数
case 4:find(head_f,head_i);break; // 调用查找函数
case 5:del(head_f,head_i);break; //调用删除函数
case 6:rev(head_f,head_i);break; //调用恢复函数
case 7:edit(head_f,head_i);break; //调用修改函数
case 8:tongji(head_f,head_i);break; //调用统计函数
case 9:save(head,database);break; //调用保存文件函
数
case 0:exit(0);
}
system("cls");
}
return 0;
}
5,操作方法及试验结果。
输入(1-9)选择要执行的操作,进入下一个界面。
选择1,进入下面文件新建界面,然后选择1,新建文件 2,打开文件
选择2进入职工信息输入及添加界面选择要输入职工信息类别,然后输入职工信息。输入y继续输入当前类别下的信息,输入其他结束当前输入返回首页。
选择3进入职工信息显示界面
选择4进入职工信息查找界面,输入要查找的职工编号
选择5进入职工信息删除界面选择要删除的职工信息,
选择6进入职工信息恢复界面,选择要恢复的职工编号。
选择7进入职工信息修改界面,选择要修改的职工信息类别,然后选择要修改的职工编号,重新输入该职工的所有信息,完成职工信息修改。
输入8进入职工信息统计界面
输入9保存文件。
7,设计体会
经过这两周的课程设计,我学到了很多东西。以前只注重于课本上的知识,想着我要是把书上的所有知识记下来,我就会编程了,看几个编程题,就觉得编程没那么难。可是,这次真的改变了我的想法,拿到题目时,觉得这个不难,可是真真编的时候,错误百出,感觉从书本上学到的用起来很难。
所以,我认为这门课更要注重于实践,只有我们在电脑上练习过了,我们才会懂,那个地方我们不懂,我们会容易出错,很容易的我
们就会纠正我们思想上的误区,学习更上一层楼。再者说,我们学语
言的目的就是编程,只有会编程,能编出好程序的人才能说是优秀的。
其次,刚开始遇到点小挫折时,感觉这个我们这些人是编不出的,想放弃,等最后好浑水摸鱼,可看到同学们高涨的情绪,真不忍心放弃,结果坚持下来,最重还是有一定的收获的。所以说,不管是生活还是学习,我们都不要轻易放弃,坚持下来,一切都会好的。