維護零件系統

2021-10-09 09:08:38 字數 1904 閱讀 3020

現開發乙個程式用於維護倉庫儲存的零件的資訊的資料庫。

程式將支援下列操作:

1.新增新零件編號、名稱和初始的現貨數量。

2.給定零件編號,顯示出零件的名稱和當前的現貨數量。

3.給定零件編號,改變現有的零件數量。

4.顯示列出陣列庫種全部資訊的**。

5.終止程式的執行。

使用i(插入)、s(搜尋)、u(更新)、p(顯示)和q(退出)分別表示這些操作。與程式的會話可能如下:

這裡限制資料庫的大小為100種零件(如果這裡限制的值太小,可以在將來改變它)。

決定把程式分為三個檔案:inventory.c檔案,readline.**件,readline.c檔案。

inventory.c

#include#include"readline.h"

#define name_len 25//最大名字長度

#define max_parts 100//最大零件種類

struct part

inventory[max_parts];

int num_parts = 0;//當前儲存的零件數量

int find_part(int number);//一系列功能函式

void insert(void);

void search(void);

void update(void);

void print(void);

int main(void)

printf("\n"); }}

int find_part(int number)//在庫存中查詢零件號,如果找到零件號則返回陣列索引,否則返回-1。

void insert(void)//提示使用者提供有關新零件的資訊,然後將零件插入資料庫。

printf("輸入零件編號:");

scanf("%d", &part_number);

if (find_part(part_number) > 0)

inventory[num_parts].number = part_number;

printf("輸入零件名稱:");

read_line(inventory[num_parts].name, name_len);

printf("輸入現有數量: ");

scanf("%d", &inventory[num_parts].on_hand);

num_parts++;

}void search(void)//提示使用者輸入零件號,然後在資料庫中查詢零件。

else

printf("未查找到零件.\n");

}void update(void)//提示使用者輸入現有數量的變化

else

printf("未查找到零件.\n");}

void print(void)//輸出零件資訊

readline.h

#ifndef readline_h

#define readline_h

int read_line(char str, int n);//將read_line函式的定義放到readline.c中

#endif

readline.c

#include#include#include"readline.h"

int read_line(char str, int n)

str[i] = '\0';

return i;

}

零件加工(貪心)

時間限制 1 sec 記憶體限制 128 mb 題目描述 工匠小k最近有n個零件需要加工。每個零件都需要ti天的時間來完成,每個零件每延遲一天加工都要繳納一定的罰金si。延遲的天數為從今天算起到該工作開始的那天,第乙個零件加工沒有罰金。現在小k想知道怎樣安排加工順序可以使他要交的罰金最少,最少是多少...

加工零件 execution

題面 有 n 個零件需要加工。零件之間有 m 個限制,x y 表示 x 要在 y 之前先加工完。每個零件的加工時間都是 1。現在有無限個多個工具機,在滿足限制條件的情況下,零件可以同時加工。求加工完所有零件最少需要多少時間,然後還要求出在時間最少的前提下,最少需要多少工具機。資料保證有解。對於 10...

零件分組 題解

題目描述 某工廠生產一批棍狀零件,每個零件都有一定的長度 li 和重量 wi 現在為了加工 需要,要將它們分成若干組,使每一組的零件都能排成乙個長度和重量都不下降 若 ili lj,wi wj 的序列。請問至少要分成幾組?輸入 第一行為乙個整數 n n 1000 表示零件的個數,第二行有 n 對正整...