-
28-07-2014, 11:23 AM #1
Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Bài tập quản lý không chạy menu và hàm???
Chào mọi người,
Mình đang gặp rắc rối với bài tập quản lý ở lớp. Code không báo lỗi nhưng ko chạy và bị dừng ở phần check input và xuất ra màn hình. Mọi người có thể nhìn qua và cho mình ý kiến nên sửa chỗ nào đựoc không? Thanks các bạn rất nhiều vì đã bỏ thời gian đọc code dài này
Bài tập không quá phức tạp nhưng mình phải tự học hoàn toàn nên nhiều chỗ không rõ ràng lắm, có gì mong các bạn giúp đỡ thêm
Đề: nhập thông tin cho 5 nhân viên. Tạo menu: thêm, chỉnh sửa, in ra 1, in ra tất cả và thoát chuơng trình. Trong quá trình nhập nv, nếu user nhập -1 thì code cũng tự động thoat.
Code:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include <string.h>
#define EMPLOYEE 5
#define NAME 40
typedef struct employee
{
char name[NAME];
float hours, rate;
}ep, aem[EMPLOYEE];
int i;
//check to see if array is empty
int check(aem a, int*p, ep n)
{
int j;
for (j = 0; j < *p - 1; j++)
{
if (strcmp(a, "") == 0)
printf("No employee entered yet");
return j;
}return j - 1;
}
int addemp(aem a, int *p)
{
ep empadd;
printf("Name:
");
scanf_s("%s", empadd.name, 40);
if (strcmp(empadd.name, "-1") == 0)
return 0;
printf("Hours:
");
scanf_s("%f", empadd.hours);
fflush(stdin);
if (empadd.hours = -1)
return 0;
printf("Rate:
");
scanf_s("%f", empadd.rate);
fflush(stdin);
if (empadd.rate = -1)
return 0;
a[*p] = empadd;
*p = *p + 1;
}
void menu()
{
int menuinput = 0;
fflush(stdin);
printf("1. Add Employee:
2. Edit Employee:
3. Print Employee:
4. Print All Employee:
5. Exit:
");
}
void printone(aem a, int *p)
{
int c = 0;
ep empchoose = { "\0", 0.0f, 0.0f };
printf("Choose an employee:
");
do
{
c = check(a, p, empchoose);
if (c != -1)
menu();
} while (1);
{printf("Name: %s\tHours: %d\tRate: %d
", a[c].name, a[c].hours, a[c].rate);
}
}
//edit employee
void edit(aem a, int *p)
{
int d;
ep empedit = { "\0", 0.0f, 0.0f };
do
{
d = check(a, p, empedit);
if (d != -1)
break;
} while (1);
{
printf("Name:
");
fflush(stdin);
scanf_s("%s", empedit.name, NAME);
printf("Hour:
");
fflush(stdin);
scanf_s("%f", empedit.hours);
printf("Rate:");
fflush(stdin);
scanf_s("%f", empedit.rate);
}
}
//print all employee
void printall(aem a, int p)
{
int e;
for (e = 0; e <= p - 1; e++)
{
printf("Name: %s\tHours: %d\tRate: %d
", a[e].name, a[e].hours, a[e].rate);
}
}
//print one employee
void main()
{
aem m = { "\0", 0.0f, 0.0f };
int n = 0;
int input = 0;
menu();
printf("Enter option: ");
scanf_s("%d", &input);
switch (input)
{
case 1:
addemp(m, &n);
case 2:
edit(m, &n);
break;
case 3:
printone(m, &n);
break;
case 4:
printall(m, n);
break;
default:
printf("Not support.
");
break;
}
}View more random threads:
- Viết chương trình, "thi trắc nghiệm lấy bằng lái xe" như thế nào?
- [ Solved ]Lệnh goto
- Chồng toán tử-ai giúp e với:(
- Một số bài tập C++
- Thoát khỏi for biến có được giữ lại không
- Static union
- Số hoàn hảo | Code bài tìm số hoàn hảo sai ở đâu
- Giúp đỡ lỗi bài toán chuỗi
- Sửa lỗi đệ qui
- Tính và in ra xác suất?
-
28-07-2014, 02:57 PM #2
Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
inbox để mình teamviewer debug cho lẹ !
skype : locnt1195
-
28-07-2014, 05:23 PM #3
Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Gửi bởi kusoipro
NGUỒN SỈ ÁO KHOÁC DENIM NỮ TPHCM CHẤT LƯỢNG CAO Bạn muốn nhập sỉ áo khoác denim nữ để bắt đầu việc buôn bán Online phong cách nhưng lại chưa có kinh nghiệm, muốn sắm xưởng sỉ xống áo vừa có thể giải...
Xưởng sỉ áo khoác jeans denim giá...