91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 8KB
    文件類型: .c
    金幣: 1
    下載: 0 次
    發布日期: 2021-06-18
  • 語言: 其他
  • 標簽:

資源簡介

電子工業出版社 數據結構課程設計 將若干城市的信息,存入一個帶頭結點的單鏈表。結點中的城市信息包括城市名和城市的位置坐標。要求能過利用城市名和位置坐標進行有關查找、插入、刪除、更新等操作。

資源截圖

代碼片段和文件信息

#include?
#include?
#include??????????????//字符串處理函數的頭文件
#include?????????????//動態存儲分配實現單元
#include
#include
#include

typedef??struct?CityList?{
????char?CityName[20];??????????//城市名
????float?XY;??????????????????//坐標
????int?CityPopulation;??????????//人口
????float?CityArea;??????????????//面積
????struct?CityList?*Next;
?}CityList?*LHead;?????????????//?結點類型,指針類型

??//***始化操作,創建鏈表?
void?Init(CityList?*LHead)?{???//建立一個帶頭結點的單鏈線性表,LHead指向頭結點
LHead->Next?=?NULL;
}?

??//***插入操作
void?Insert(CityList?*LHead)?{?
system(“cls“);
CityList*?newNode;??????????????????????????????//定義指針結構為cityList型
char?m;
????newNode?=?(CityList*)malloc(sizeof(CityList));?//生成新結點
if(newNode?==?NULL)?{??????????????????????????//驗證空間申請是否成功
printf(“內存分配失敗\n“);
return;????????????????????????????????????//若分配內存不成功,則返回繼續分配。
}??
printf(“\n請輸入城市名稱并回車:“);
scanf(“%s“&newNode->CityName);???????????????????//指針的數據域
printf(“請輸入城市坐標xy并回車:“);??
scanf(“%f%c%f“&newNode->X&m&newNode->Y);???//將城市信息填入新節點中
printf(“請輸入城市人口并回車:“);
scanf(“%d“&newNode->CityPopulation);
printf(“請輸入城市面積并回車:“);
scanf(“%f“&newNode->CityArea);
while(LHead->Next?!=?NULL)?{
LHead?=?LHead->Next;??????????????????????//如果非空,HLead指針的位置向后移
}
printf(“已成功插入新城市信息!\n“);
newNode->Next?=?LHead->Next;
LHead->Next?=?newNode;???????????????????//將新節點插入鏈表
}?

??//***刪除操作
void?Delete(CityList?*LHead)?{
system(“cls“);
char?delCity[20];
printf(“\n請輸入要刪除的城市名稱并回車:“);
scanf(“%s“delCity);
if(LHead->Next?==?NULL)?{
????system(“color?9d“);
printf(“您刪除的城市不存在請先創建城市!\n“);
return;
}
while(strcmp(LHead->Next->CityNamedelCity?))?{?????/*?從LHead指向得頭結點的下一個結點開判斷
?????????????????????????????????????????????????????結點中的城市名與輸入城市名是否相等?*/
LHead?=?LHead->Next;???????????????????????????//不相等則指針LHead下移,繼續查找
}
LHead?->Next?=?LHead->Next->Next;?????????????????//相等則刪除此節點
printf(“以成功刪除此城市信息!\n“);
}

?
??//***更新操作
void?UpdateCity(CityList*?LHead)?{
system(“cls“);
char?CityName[20];
char?m;
printf(“\n請輸入您要更新的城市名稱并回車:“);
scanf(“%s“CityName);
if(LHead->Next?==?NULL)?{
printf(“\n您要更新的城市不存在,請先創建城市!\n“);
????return;
}
while(strcmp(LHead->Next->CityNameCityName))?{??/*?從LHead指向得頭結點的下一個結點開判斷
?????????????????????????????????????????????結點中的城市名與輸入城市名是否相等?*/??????????????????
LHead?=?LHead->Next;????????????????????????//當不相等則指針LHead下移,繼續查找
}?
printf(“\n***請輸入城市的新信息***\n“);????????????//輸入城市新信息
printf(“請輸入城市的新名稱并回車:“);
scanf(“%s“LHead->Next->CityName);
printf(“請輸入城市的新坐標(XY)并回車:“);
scanf(“%f%c%f“&LHead->Next->X&m&LHead->Next->Y);
printf(“請輸入城市的新人口:“);
scanf(“%d“&LHead->Next->CityPopulation);
printf(“請輸入城市的新面積:“);
scanf(“%f“&LHead->Next->CityArea);
printf(“已成功更新該城市信息!\n“);
}?????

??//***5、正向查找操作
void?FindCity(CityList*?LHead)?{
????system(“cls“);
char?CityName[20];
int?j=0;
printf(“\n請輸入您要查找的城市名稱并回車:“);
scanf(“%s

評論

共有 條評論