版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
Android學生信息管理系統(tǒng)APP
一、需求分析
為了以便的進行對學生數(shù)據(jù)庫的操作,本app可在android設備
上進行對學生信息數(shù)據(jù)庫的信息管理功能,具體功能如下:
1.對數(shù)據(jù)庫中所有學生姓名進行顯示,對各個條目進行點擊可展開具
體信息
2.查詢數(shù)據(jù):查詢數(shù)據(jù)是根據(jù)姓名與學號兩個條件進行查詢,兩者滿
足任一條件則進行模糊查詢,兩個條件同步滿足則進行精確查詢,查
詢成果界面與功能一中相似,以姓名排列,點擊展開所有信息
3.增長數(shù)據(jù):在數(shù)據(jù)庫中增添條目,涉及姓名(字符串),學號(數(shù)
字,主鍵),性別(單選框),年齡(數(shù)字),專業(yè)(字符串)。每
個條目均有誤輸入設定,且主鍵可檢查反復性,所有數(shù)據(jù)可檢查完整
性,若插入成功則會顯示一條消息提示成功,若失敗則會提示檢查主
鍵反復或者數(shù)據(jù)不完整
4.修改數(shù)據(jù):根據(jù)姓名學號進行精確查找,查找成功后轉(zhuǎn)入修改界面,
為了避免漏填與便捷修改界面會默認填充之前日勺數(shù)據(jù)(除學號),修
改完畢即可更新,同樣會檢查數(shù)據(jù)完整性
5.刪除數(shù)據(jù):根據(jù)姓名學號進行精確查找,查找成功則會進行刪除,
并顯示一條刪除成功日勺提示,若失敗,也會進行提示
二、概念構(gòu)造設計
ER圖:
三、邏輯構(gòu)造設計
學生:
姓名(字符串)
學號(數(shù)字,主碼)
性別(單選框)
年齡(數(shù)字)
專業(yè)(字符串)
createtablestudent
(
nameTEXT,
NOTEXTPrimaryKey,
sexTEXT,
professionTEXT,
ageTEXT
)
四、具體實現(xiàn)
1.主界面:
^DemoStuDat
?'Tf)'r
顯示數(shù)據(jù)
查詢數(shù)據(jù)心
修改數(shù)據(jù)F
網(wǎng)口數(shù)據(jù)
刪除數(shù)據(jù)
退出SYSTEM
主界面顯示所有功能,每個按鈕點擊后,跳轉(zhuǎn)進入相應功能
核心代碼:
publicclassMainextendsActivity{
SQLiteDatabasedb;
Buttonbtn_search;
Buttonbtn_modify;
Buttonbtnadd;
Buttonbtn_delete;
Buttonbtn_quit;
Buttonbtn_show;
@Override
protectedvoidonCreate(BundlesavedlnstanceState){
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(Windov/Manager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN};
super.onCreate(savedlnstanceState);
setContentVievz(R.layout.layout_main);
//打開數(shù)據(jù)庫,若不存在,則創(chuàng)立
db=
SQLiteDatabase.openOrCreateDatabase(this.getFilesDir().toString()-*'/S
tudent.db3",null);
btn_search=(Button)findViewByld(R.id.btn_searc?i);
btn_modify=(Button)findViewById(R.id.btn_modify);
btn_add=(Button)findViewByld(R.id.btn_adc/);
btn_delete=(Button)findViewByld(R.id.btn_de2ete);
btn_quit=(Button)findViev/Byld(R.id.btn_quit);
btn_show=(Button)findViewByld(R.id.Btn_shoi<7);
try
(
Cursorcursor=db.rawQuery(Hselect*fromstudent11,null);
cursor.close();
catch(SQLiteExceptione)
db.execSQL(ncreatetablestudent"
+?'("
+"nameTEXT,”
+HNOTEXTPrimaryKey,”
+"sexTEXT,"
+“professionTEXT,
+"ageTEXT"
)
//顯示所有數(shù)據(jù)按鈕的功能實現(xiàn)
btn_show.setOnClickListener(newOnCLickListener()
(
publicvoidonClick(Viewsource){
//獲取指針
Cursorcursor=db.rawQuery("select*fromstudentn,null);
//判斷數(shù)據(jù)庫與否不存在任何數(shù)據(jù)
x£(cursor.moveToFirst()==false)
{
Toast.makeText(Main.this,”不存在記錄”,
Toast.LENGTH_SHORT).show();
}
else
List<Student>p=newArrayList<Student>();
List<String>re_name=newArrayList<String>();
List<String[]>info=newArrayList<String[]>();
//保存搜索出口勺所有數(shù)據(jù)
for(cursor.moveToFirst();?cursor.isAfterLast();
cursor.moveToNext())
intnameColume=cursor.getColumnlndex("name");
intNOColume=cursor.getColumnlndex("NO");
intproColume=
cursor.getColumnlndex("profession");
intsexColume=cursor.getColumnlndex(,,sexn);
intageColume=cursor.getColumnlndex("age',);
Studentstudent=newStudent();
="姓
名:"+cursor.getstring(nameColume);
student.NO=:*'+cursor.getstring(NOColums);
student.sex="性別:H+cursor.getString(sexColume);
fession="專
業(yè):"+cursor.getString(proColume);
student.age="年齡:"+cursor.getString(ageColume);
p.add(student);
String[]temp=student.MakeString();
info.add(temp);
Stringnewname=cursor.getString(nameColume);
re_name.add(newname);
}
〃對保存的數(shù)據(jù)進行封裝
String[]Cur_name=newString[re_name.size()];
Cur_name=re_name.toArray(Cur_name);
String[][]Cur_info=newString[info.size()][];
Cur_info=info.toArray(Cur_info);
Bundlebundle=newBundle();
bundle.putStringArray(HnameH,Cur_name);
Studentdata=newStudent();
=Cur_info;
〃將封裝的數(shù)據(jù)傳遞給成果界面的activity
Intentintent=new
Intent(Main.this,SearchResult.class);
intent.putExtras(bundle);
intent.putExtra("data",data);
startActivity(intent);
cursor.close();
}
)
));
//為剩余的按鈕綁定監(jiān)聽器實現(xiàn)跳轉(zhuǎn)功能
btn_search.setOnClickListener(newOnClickListener()
(
publicvoidonClick(Viewsource)(
Intentintent=newIntent(Main.this,Search.class);
startActivity(intent);
)
});
btn_modify.setOnClickListener(newOnClickListener()
(
publicvoidonClick(Viewsource){
Intentintent=newIntent(Main.this,Modify.class);
startActivity(intent);
)
});
btnadd.setOnClickListener(newOnClickListener()
publicvoidonClick(Viewsource){
Intentintent=newIntent(Main.this,Add.class);
startActivity(intent);
)
));
btn_delete.setOnClickListener(newOnClickListener()
(
publicvoidonClick(Viewsource){
Intentintent=newIntent(Main.this,Delete.class);
startActivity(intent);
)
});
btn_quit.setOnClickListener(newOnClickListener()
(
publicvoidonClick(Vievzsource){
db.close();
finish();
}
));
)
}
2.數(shù)據(jù)顯示界面:
按姓名排列,點擊條目展開具體信息
核心代碼:
publicclassSearchResultextendsActivity
@SuppressLint("RtlHardcoded")
publicvoidonCreate(BundlesavedinstanceState)
requestWindowFeature(Window.FEATURENOTITLE);
getWindow().setFlags(Windov/Manager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
//獲取傳送來的數(shù)據(jù)
super.onCreate(savedlnstanceState);
setContentVievz(R.layout.2ayout_resu21);
finalIntentintent=getlntent();
BaseExpandabLeListAdapteradapter=new
BaseExpandableListAdapter()
(
〃提取數(shù)據(jù)
Bundlebundle=intent.getExtras();
Studentmem_data=(Student)
getlntent().getExtras().get("data");
String(]people=(String[])bundle.getSerializable("namen);
String(][]data=mem_;
publicObjectgetChild(intgroupPosition,intchildPosition)
|
returndata[groupPosition][childPosition];
)
publiclonggetChildld(intgroupPosition,intchildPosition)
returnchildPosition;
)
publicintgetChildrenCount(intgroupPosition)
(
returndata[groupPosition].length;
)
//設定每個子選項每行的顯示方式
privateTextviewgetTextView()
(
AbsListView.LayoutParamsIp=new
AbsListView.LayoutParams(
ViewGroup.LayoutParams.MATCH_PARENT,
ViewGroup.LayoutParams.MATCH_PARENT);
TextViewtextview=newTextview(SearchResult.this);
textView.setLayoutParams(Ip);
textView.setGravity(Gravity.CENTER_VERTICALI
Gravity.LEFT);
textView.setPadding(36,0,0,0);
textView.setTextSize(20);
returntextview;
)
//設定每個子選項顯示內(nèi)容
publicViewgetChildView(intgroupPosition,int
childPosition,booleanisLastChild,Viewconvertview,ViewGroupParent)
TextViewtextview=getTextView();
textView.setText("
M+getChild(groupPosition,childPosition).toString());
returntextview;
}
publicObjectgetGroup(intgroupPosition)
(
returnpeople[groupPosition];
)
publicintgetGroupCount()
{
returnpeople.length;
}
publiclonggetGroupId(intgroupPosition)
(
returngroupPosition;
}
//設定每個組選項顯示內(nèi)容
publicViewgetGroupView(intgroupPosition,boolean
isExpanded,Viewconvertview,Viev/Groupparnet)
LinearLayout11=newLinearLayout(SearchResult.this);
11.setOrientation(0);
TextViewtextview=getTextView();
textView.setText("
"+getGroup(groupPosition).toString());
11.addView(textview);
return11;
)
);
ExpandableListViewexpandListView=(ExpandableListView)
findViewByld(R.id.list);
expandListVievz.setAdapter(adapter);
)
}
3.增添數(shù)據(jù)界面:
根據(jù)文本框輸入內(nèi)容進行數(shù)據(jù)的插入,且具有完整性和反復性的判斷,插入成功失敗均會產(chǎn)
生提示
核心代碼:
publicclassAddextendsActivity{
SQLiteDatabasedb;
Buttonbtn_Accept;
Buttonbtn_Cancle;
TextViev/ET_name;
TextviewETNO;
TAxt.ViAV?ETPro;
TextviewETAge;
RadioGrouprg;
Stringradio_sex="男
(^Override
protectedvoidonCreate(BundlesavedlnstanceState){
requestWindowFeature(Window.FEATURE_N0_TITLE);
getWindovz().setFlags(Windov/Manager.LayoutParams.FLAG_FULLSCREEN,
windowManager.LayoutParams.FLAG_FULLSCREEN);
super.onCreate(savedlnstanceState);
setContentVievz(R.layout.layout_add);
db=
SQLiteDatabase.openDatabase(this.getFilesDir().toString()+',/Student.d
b3",null,SQLiteDatabase.OPEN_READWRITE);
btn_Accept=(Button)findViewByld(R.id.btn_Accept);
btn_Cancle=(Button)findViewByld(R.id.btnMancie);
ET_name=(Textview)findViewByld(R.id.ET_Add_nanie);
ET_NO=(Textview)findViewByld(R.id.ET_Add_NO);
ET_Pro=(Textview)findViewByld(R.id.ET_Add_Pro);
:
ET_Agp=(TAxt.ViAW)findViAv/RyTd(R.d.F!T_Add_Age>);
rg(RadioGroup)findViewByld(R.id.rg);
rg.setOnCheckedChangeListener(newOnCheckedChangeListener(){
publicvoidonCheckedChanged(RadioGroupgroup,int
Checkedld){
radio_sex=Checkedld==R.id.rad_male?"男":"女,
)
));
〃提交操作
btn_Accept.setOnClickListener(newOnClickListener()
(
publicvoidonClick(Viewsource){
Stringname=ET_name.getText().toString();
StringNO=ET_NO.getText().toString();
Stringsex=radio_sex;
Stringpro=ET_Pro.getText().toString();
Stringage=ET_Age.getText().toString();
//規(guī)范性與完整性判斷
try
〃插入數(shù)據(jù)
db.execSQL("insertintostudent
values(?,?,?,?,?)"znewString(]{name,NO,sex,pro,age});
)
//規(guī)范性與完整性判斷
catch(SQLiteExceptione)
{
Toast./naAeText(Add.this,”插入數(shù)據(jù)失敗,請檢查數(shù)據(jù)規(guī)范性
與學號的唯一性”,Toast.LENGTH_SHORT).show();
return;
)
Toast.makeText(Add.this,“成功插入一條數(shù)
據(jù):"+"\n"+name+n\n"+N0+"\nn+sex+"\n'*+pro+"\n'*+age,
Toast.LENGTH_SHORT).show();
)
});
btn_Cancle.setOnClickListener(newOnClickListener()
{
publicvoidonClick(Viewsource){
db.close();
finish();
)
});
)
4.修改數(shù)據(jù)界面:
查找界面:
對文本框內(nèi)輸入的數(shù)據(jù)進行精確查找,成功后轉(zhuǎn)入修改界面
修改界面:
姓
專業(yè)
年齡
性別
取消
匕o
文本框內(nèi)默認顯示之前的數(shù)據(jù),修改完畢點擊擬定以文本框內(nèi)的信息對數(shù)據(jù)進行更新
核心代碼:
查找:
btn_Accept.setOnClickListener(newOnClickListener()
publicvoidonClick(Viewsource){
Stringname=ET_Modify_Name.getText().toString();
StringNO=ET_Modify_No.getText().toString();
Cursorcursor=db.rawQuery(uselect*fromstudentwhere
+”name=?”
+"andN0=?n
,newString[]{name,NO});
//判斷查找成果與否為空
if(cursor.moveToFirst()==false)
Toast.makeText(Modify.this,“記錄不存在“,
Toast.LENGTHSHORT).show();
else
Stringmem_name=null;
Stringmem_No=null;
Stringmem_profession=null;
Stringmem_sex=null;
Stringmem_age=null;
//保存所有數(shù)據(jù)
for(cursor.moveToFirst();!cursor.isAfterLast();
cursor.moveToNext())
intnameColume=cursor.getColumnlndex(*'name");
intNoColume=cursor.getColumnlndex("NO");
intproColume=
cursor.getColumnIndex(?'profession");
intsexColume=cursor.getColumnIndex("sex'*);
intageColume=cursor.getColumnlndex("age1');
mem_name=cursor.getString(nameColume);
mem_No=cursor.getString(NoColume);
mem_profession=cursor.getString(proColume);
mem_sex=cursor.getString(sexColume);
mem_age=cursor.getString(ageColume);
}
//封裝所有數(shù)據(jù)
Bundlebundle=newBundle();
bundle.putString(??name1,,mem_name);
bundle.putString("No",mem_No);
bundle.putString(uprofession",mem_profession);
bundle.putString("sex**,mem_sex);
bundle.putString("age”,mem_age);
〃傳遞數(shù)據(jù)
Intentintent=new
Intent(Modify.this,ModifyResult.class);
intent.putExtras(bundle);
startActivity(intent);
cursor.close();
}
)
));
btn_Cancle.setOnClickListener(newOnClickListener()
(
publicvoidonClick(Viewsource){
//TODOAuto-generatedmethodstub
db.close();
finish();
)
));
修改:
publicclassModifyResultextendsActivity
{
SQLiteDatabasedb;
Buttonbtn_accept;
Buttonbtn_cancle;
TextviewTextViev?_ModifyResult_No;
EditTextET_ModifyResult_Name;
EditTextET_ModifyResult_pro;
EditTextET_ModifyResult_age;
RadioGrouprg;
Stringradio_sex;
protectedvoidonCreate(BundlesavedlnstanceState){
super.onCreate(savedlnstanceState);
setcontentview(R.layout.layout_modifyresult);
〃獲取數(shù)據(jù)
finalIntentintent=getlntent();
Bundlebundle=intent.getExtras();
db=
SQLiteDatabase.openDatabase(this.getFilesDir().toString()+"/Student.d
b3”,null,SQLiteDatabase.以DWH1TE);
btn_accept=(Button)
findViewByld(R.id.bLn_modifyresult_accept);
btn_cancle=(Button)
findViewByld(R.id.bLn_modifyresult_cancle);
TextView_ModifyResult_No=(Textview)
findViewByld(R.id.TextView_ModifyResult_No);
ETModifyResultName=(EditText)
findViewByld(R.id.ETModifyResultName);
ET_ModifyResult_pro=(EditText)
findViewByld(R.id.ET_ModifyResult_pro);
ET_ModifyResult_age=(EditText)
findViewByld(R.id.ET_ModifyResult_age);
rg=(RadioGroup)findViewByld(R.id.;
//設定默認數(shù)據(jù)
Stringname=bundle.getString(nnamen);
finalStringNo=bundle.getString("No");
Stringpro=bundle.getString("profession0);
Stringage=bundle.getString("age");
radio_sex=bundle.getString("sex'*);
TextView_ModifyResult_No.setText(No);
ET_ModifyResult_Name.setText(name);
ET_ModifyResult_pro.setText(pro);
ET_ModifyResult_age.setText(age);
rg.setOnCheckedChangeListener(newOnCheckedChangeListener(){
publicvoidonCheckedChanged(RadioGroupgroup,int
Checkedld){
radio_sex=Checkedld==R.id.rad_male?"男":"女";
}
));
btnaccept.setOnClickListener(newOnClickListener()
publicvoidonClick(Viewsource){
Stringnew_name=
ET_ModifyResult_Name.getText().toString();
Stringnew_profession=
ET_ModifyResult_pro.getText().toString();
Stringnew_age=
ET_ModifyResult_age.getText().toString();
Stringnew_sex=radio_sex;
//更新數(shù)據(jù)
try
{
db.execSQL("UPDATEstudent”
+"SETname=?,NO=?,sex=?,profession=?,age=?
H
+"WHEREN0=?"z
newString[]{new_name,No,new_sex,
new_profession,new_age,No});
)
catch(SQLiteExceptione)
(
Toast.makeText(ModifyResult.this,"更新數(shù)據(jù)失敗,
Toast.LENGTH_SHORT).show();
return;
)
Toast.makeText(ModifyResult.this,”更新數(shù)據(jù)成功”,
Toast.LENGTH_SHORT).show();
finish();
}
));
btn_cancle.setOnClickListener(newOnClickListener()
(
publicvoidonClick(Viewsource){
db.close();
finish();
)
));
)
)
5.查找數(shù)據(jù)界面:
3
學號
確定
對文本框內(nèi)的數(shù)據(jù)進行模糊查詢,查詢成功則跳轉(zhuǎn)只查詢成果界面,查詢失敗則產(chǎn)生相應提
示
核心代碼:
publicclassSearchextendsActivity{
SQLiteDatabasedb;
Buttonbtn_Accept;
Buttonbtn_Cancle;
EditTextET_name;
EdiLTexLETNO;
@Override
protectedvoidonCreate(BundlesavedlnstanceState){
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(Windov/Manager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
super.onCreate(savedlnstanceState);
setContentVievz(R.layout.layout_search);
db=
SQLiteDatabase.openDatabase(this.getFilesDtr().toString()+"/Student.d
b3”,null,SQLiteDatabase.OPEN_READI^RITE);
btn_Accept=(Dutton)findViewDyld(R.id.btn_Accept);
btn_Cancle=(Button)findViewByld(R.id.btn_Canc2e);
ET_name=(EditText)findViewByld(R.id.ET_Searchname);
ET_NO=(EditText)findViewByld(R.id.ET_Search_W);
btn_Accept.setOnClickListener(newOnClickListener()
publicvoidonClick(Viewsource)
Stringnama=ETnamA.gAt-.TAxt.().t.oString();
StringNO=ET_NO.getText().toString();
//獲取指針
Cursorcursor=db.rawQuery(uselect*fromstudentwhere
n
+"name=?n//+“or”+"name=?"
+"orNO=?"http://+"or"-nNO=?"
,newString[]{name,NO});
//檢杳查找與否為空
if(cursor.moveToFirst()==false)
{
Toast./naAeText(Search.this,"i已錄不存在“,
Toast.LENGTH_SHORT).show();
)
else
{
Toast.makeText(Search.this,"成功”,
Toast.LENGTH_SHORT).show();
//return;
List<Student>p=newArrayList<Student>();
List<String>re_name=newArrayList<String>();
List<String[]>info=newArrayList<String[]>();
//保存數(shù)據(jù)
for(cursor.moveToFirst();!cursor.isAfterLast();
cursor.moveToNext())
intnameColume=cursor.getColumnlndex("name");
intNOColume=cursor.getColumnlndex("NO");
intproColume=
cursor.getColumnlndex("profession");
intsexColume=cursor.getColumnlndex("sex'*);
intageColume=cursor.getColumnlndex("age");
Studentstudent=newStudent();
="姓
名:"+cursor.getString(nameColume);
student.NO=:"+cursor.getString(NOColume);
student.sex="性別:n+cursor.getString(sexColume);
fession="專
業(yè):"+cursor.getString(proColume);
student.age="年齡:"+cursor.getString(ageColume);
p.add(student);
String[]temp=student.MakeString();
info.add(temp);
Stringnewname=cursor.getString(nameColume);
rename.add(newname);
)
//封裝數(shù)據(jù)
String[]Cur_name=newString[re_name.size()];
Cur_name=re_name.toArray(Cur_name);
String[](]Cur_info=newString[info.sizeO][];
Cur_info=info.toArray(Cur_info);
Bundlebundle=newBundle();
bundle.putStringArray("name”,Cur_name);
Studentdata=newStudent();
data.info=Cur_info;
//傳遞數(shù)據(jù)
Intentintent=new
Intent(Search.this,SearchResult.class);
intent.putExtras(bundle);
intent.putExtra("data",data);
startActivity(intent);
cursor.close();
}
)
});
btn_Cancle.setOnClickListener(newOnClickListener()
publicvoidonClink(ViAWssourcp){
db.close();
finish();
)
));
6.刪除數(shù)據(jù)界面:
匕O3
對文本框內(nèi)輸入的內(nèi)容進行精確查詢,若查詢成功則對相應的條目進行刪除,并提示刪除成
功,若失敗,則提示刪除失敗
核心代碼:
//擬定按鈕點擊后的監(jiān)聽尋件
btn_Accept.setOnClickListener(newOnClickListener()
(
publicvoidonClick(Viewsource){
Stringname=ET_Modify_Name.getText().toString();
StringNO=ETModify_No.getText().toString();
//查詢數(shù)據(jù)
Cursorcursor=db.rawQuery(^select*fromstudentwhere
+"name=?,r
+"andN0=?"
,newString[]{name,NO});
if(cursor.moveToFirst()==false)
{
Toast.makeText(Delete.this,"記錄不存在”,
Toast.LENGTH_SHORT).show();
}
else
(
try
I
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中職大數(shù)據(jù)應用技術(數(shù)據(jù)采集技術)試題及答案
- 2025年大學化妝品技術(化妝品研發(fā))試題及答案
- 2025年中職(物聯(lián)網(wǎng)應用技術)傳感器應用綜合測試題及答案
- 2025年大學大三(畜牧獸醫(yī)法規(guī))畜牧獸醫(yī)行業(yè)法規(guī)應用階段測試題及答案
- 2025年大學食品科學與工程(食品添加劑)試題及答案
- 2025年大學環(huán)境設計(公共空間設計)試題及答案
- 2025年大學大四(歷史學)世界近代史工業(yè)革命測試題及答案
- 2025年高職(荒漠化防治技術)植被恢復技術專項測試試題及答案
- 巴洛克紋樣介紹
- 運維管理制度
- 2026國家電投集團蘇州審計中心選聘15人筆試模擬試題及答案解析
- 2026年桐城師范高等??茖W校單招職業(yè)技能考試題庫及答案1套
- 霧化吸入操作教學課件
- 上海市楊浦區(qū)2026屆初三一模英語試題(含答案)
- 2025年小學圖書館自查報告
- 【語文】廣東省佛山市羅行小學一年級上冊期末復習試卷
- 2025年醫(yī)療器械注冊代理協(xié)議
- 新疆三校生考試題及答案
- 2025新疆亞新煤層氣投資開發(fā)(集團)有限責任公司第三批選聘/招聘筆試歷年參考題庫附帶答案詳解
- 圍手術期心肌梗塞的護理
- 代貼現(xiàn)服務合同范本
評論
0/150
提交評論