user-0 提问: 谁能帮我调试一下代码啊?逻辑错误,有些功能不能实现啊,主函数是对的,由于字数限制不能完全显示出来

回复:
user: user-1
content: 代码写得很好啦？请问老总是金蝶还是用友？当初财金软件，好像就这两家的最好。

user: user-0
content: 引用 13 楼 jiamianshiye_16_com的回复: hello world   回复栏里有插入代码的选项，仔细看看。你就贴在这里就行。大家看到了感兴趣的都会帮你看的。 分数不够了，发不了，只能这样

user: user-2
content: hello world   回复栏里有插入代码的选项，仔细看看。你就贴在这里就行。大家看到了感兴趣的都会帮你看的。

user: user-0
content: 引用 11 楼 jiamianshiye_16_com的回复:老弟，能不能好好的把代码贴出来。用代码格式贴好，这样看着很是费劲。 我用的VC+，只能这样，你要帮我改吗？要的话加qq

user: user-2
content: 老弟，能不能好好的把代码贴出来。用代码格式贴好，这样看着很是费劲。

user: user-0
content: 引用 3 楼 自信男孩的回复:[quote=引用 2 楼 血影*裂冰 的回复:] [quote=引用 1 楼 niiiloc的回复:]一看就是抄的代码，你给多少钱呢 大佬还要钱啊，是不是太庸俗了[/quote]  没感觉多庸俗。代码调试需要功夫和时间的，收点辛苦费没啥[/quote] 你能改吗？改好有偿。

user: user-0
content: 引用 8 楼 血影*裂冰的回复:[quote=引用 7 楼 自信男孩的回复:][quote=引用 4 楼 血影*裂冰 的回复:] [quote=引用 3 楼 自信男孩的回复:][quote=引用 2 楼 血影*裂冰 的回复:] [quote=引用 1 楼 niiiloc的回复:]一看就是抄的代码，你给多少钱呢 大佬还要钱啊，是不是太庸俗了[/quote]  没感觉多庸俗。代码调试需要功夫和时间的，收点辛苦费没啥[/quote] 给你半天时间能调好吗[/quote]  给我半天时间，不如自己用半天时间去调试。我想不需要用半天时间，一个小时左右差不多吧。 [/quote] 不，因为找了很多人都没调试出来[/quote] 我也改不来，菜鸟一个，明天还的交

user: user-0
content: 引用 7 楼 自信男孩的回复:[quote=引用 4 楼 血影*裂冰 的回复:] [quote=引用 3 楼 自信男孩的回复:][quote=引用 2 楼 血影*裂冰 的回复:] [quote=引用 1 楼 niiiloc的回复:]一看就是抄的代码，你给多少钱呢 大佬还要钱啊，是不是太庸俗了[/quote]  没感觉多庸俗。代码调试需要功夫和时间的，收点辛苦费没啥[/quote] 给你半天时间能调好吗[/quote]  给我半天时间，不如自己用半天时间去调试。我想不需要用半天时间，一个小时左右差不多吧。 [/quote] 不，因为找了很多人都没调试出来

user: user-3
content: 引用 4 楼 血影*裂冰 的回复:[quote=引用 3 楼 自信男孩的回复:][quote=引用 2 楼 血影*裂冰 的回复:] [quote=引用 1 楼 niiiloc的回复:]一看就是抄的代码，你给多少钱呢 大佬还要钱啊，是不是太庸俗了[/quote]  没感觉多庸俗。代码调试需要功夫和时间的，收点辛苦费没啥[/quote] 给你半天时间能调好吗[/quote]  给我半天时间，不如自己用半天时间去调试。我想不需要用半天时间，一个小时左右差不多吧。

user: user-0
content: 引用 1 楼 niiiloc的回复:一看就是抄的代码，你给多少钱呢 给你半天时间能不能调好

user: user-0
content: 引用 3 楼 自信男孩的回复:[quote=引用 2 楼 血影*裂冰 的回复:] [quote=引用 1 楼 niiiloc的回复:]一看就是抄的代码，你给多少钱呢 大佬还要钱啊，是不是太庸俗了[/quote]  没感觉多庸俗。代码调试需要功夫和时间的，收点辛苦费没啥[/quote] 给你半天时间能调好吗

user: user-4
content: 改了一下，主要是printf()的错误，VS2015编译能通过，main()函数，所以没有运行调试 #include<stdio.h> #include<stdlib.h> #include<string.h> struct stuff { 	char num[6];//工号 	char name[20];//姓名 	char sex[4];//性别 	int year;//年龄 	char job[8];//职务 	int month;//月份 	float reward;//额外加薪 	float reduce;//扣除 	float base;//基本工资 	float pay;//薪水 }; stuff stu[100];//员工信息  void start(); void input(); void save_file(int); int load_file(); void display(); void find_num(); void find_name(); void del(); void add(); void modify(); void sort(); void tong();  void start()//开始函数 { 	system("cls"); 	system("color 80"); 	printf("\n\n"); 	printf("           |----------------------------------------------------------|\n\n"); 	printf("           |*****************欢迎使用员工工资管理系统*****************|\n\n"); 	printf("           |----------------------------------------------------------|\n\n"); 	printf("                             1.信息录入\n"); 	printf("                             2.信息显示\n"); 	printf("                             3.工资信息查询\n"); 	printf("                             4.工资信息修改\n"); 	printf("                             5.工资信息删除\n"); 	printf("                             6.信息添加\n"); 	printf("                             7.工资排序\n"); 	printf("                             8.工资统计\n"); 	printf("                             9.退出\n"); 	printf("********************************************************************************\n");   } void input()//输入函数 { 	int i = 0, m; 	printf("请输入要录入员工的人数:\n"); 	scanf("%d", &m); 	for (i = 0; i<m; i++) 	{ 		printf("请输入月份:\n"); 		scanf("%d", &stu[i].month); 		printf("工号:\n"); 		scanf("%s", stu[i].num); 		printf("姓名:\n"); 		scanf("%s", stu[i].name); 		printf("性别:\n"); 		scanf("%s", stu[i].sex); 		printf("年龄:\n"); 		scanf("%d", &stu[i].year); 		printf("职务:\n"); 		scanf("%s", stu[i].job); 		printf("基本工资:\n"); 		scanf("%f", &stu[i].base); 		printf("额外加薪:\n"); 		scanf("%f", &stu[i].reward); 		printf("扣除:\n"); 		scanf("%f", &stu[i].reduce); 		stu[i].pay = stu[i].base + stu[i].reward + stu[i].reduce; 	} 	printf("员工信息已录入!\n"); 	save_file(m); }  void save_file(int m)//保存文件 { 	FILE *fp; 	int i; 	fp = fopen("stuff.txt", "wb"); 	if (fp == NULL) 	{ 		printf("打开文件失败!\n"); 	} 	for (i = 0; i<m; i++) 		fprintf(fp, "%d      %s    %s     %s    %d     %s	%f         %f         %f        %f\n", stu[i].month, stu[i].num, stu[i].name, stu[i].sex, stu[i].year, stu[i].job, stu[i].base, stu[i].reward, stu[i].reduce, stu[i].pay); 	fclose(fp); }   int load_file()//读写函数 { 	FILE *fp; 	int i = 0; 	fp = fopen("stuff.txt", "rt"); 	if (fp == NULL) 	{ 		printf("\n\n*****库文件不存在，请创建!******\n\n"); 		exit(0); 	} 	while (feof(fp) != 1)//检测流文件是否结束 	{ 		fread(&stu[i], sizeof(struct stuff), 1, fp);//从磁盘文件读出 		if (stu[i].num != 0) 			i++; 	} 	fclose(fp); 	return(i - 1);  }  void display()//显示函数 { 	int i, m = load_file(); 	system("cls"); 	printf("月份   工号   姓名  性别  职务  基本工资   额外加薪    扣除       薪水\n"); 	for (i = 0; i<m; i++) 	{ 		stu[i].pay = stu[i].base + stu[i].reward + stu[i].reduce; 		printf("%d      %s    %s     %s   %d	 %s     %f         %f         %f        %f\n", stu[i].month, stu[i].num, stu[i].name, stu[i].sex, stu[i].year, stu[i].job, stu[i].base, stu[i].reward, stu[i].reduce, stu[i].pay); 	} }   void del()//删除函数 { 	int m = load_file(); 	int i, j, n, t, flag;//flag作为删除是否成功的标志 	char name[20]; 	printf("原来的员工信息\n"); 	display();//调用显示函数显示原本信息 	printf("\n\n"); 	printf("按姓名删除:\n"); 	scanf("%s", name); 	for (flag = 1, i = 0; flag&&i<m; i++) 	{ 		if (strcmp(stu[i].name, name) == 0)//找姓名 		{ 			printf("此人原先的信息为:\n"); 			printf("月份   工号   姓名  性别  职务  基本工资   额外加薪    扣除       薪水\n"); 			printf("%d      %s    %s     %s   %d	 %s      %f          %f        %f         %f\n", stu[i].month, stu[i].num, stu[i].name, stu[i].sex, stu[i].year, stu[i].job, stu[i].base, stu[i].reward, stu[i].reduce, stu[i].pay); 			printf("确认删除请按1，取消请按0\n"); 			scanf("%d", &n); 			if (n == 1) 			{ 				for (j = i; j<m - 1; j++) 				{ 					//将删除后之后的员工信息往前填补 					stu[j] = stu[j + 1]; 				} 				flag = 0; 			} 		} 	} 	if (flag == 0)//删除成功 		m = m - 1; 	else 		printf("查无此人!"); 	printf("删除后的所有员工信息:\n"); 	save_file(m);//调用保存函数保存删除后的信息 	display();//调用显示函数显示删除后所有员工的信息 	printf("继续删除请按1，停止删除请按0\n"); 	scanf("%d", &t); 	switch (t) 	{ 	case 1:del(); break;//循环调用自己的函数，实现多次删除 	case 0:break; 	default:break; 	} }  void add()//添加函数 { 	FILE *fp; 	fp = fopen("stuff.txt", "a");//追加 	int n, i, count = 0, m = load_file(); 	printf("原来的员工信息:\n"); 	display(); 	printf("\n\n"); 	printf("请输入想增加的员工数:\n"); 	scanf("%d", &n); 	for (i = m; i<m + n; i++) 	{ 		printf("请输入增加员工的信息:\n"); 		printf("请输入月份:\n"); 		scanf("%d", &stu[i].month); 		printf("工号:\n"); 		scanf("%s", stu[i].num); 		printf("姓名:\n"); 		scanf("%s", stu[i].name); 		printf("性别:\n"); 		scanf("%s", stu[i].sex); 		printf("年龄:\n"); 		scanf("%d", &stu[i].year); 		printf("职务:\n"); 		scanf("%s", stu[i].job); 		printf("基本工资:\n"); 		scanf("%f", &stu[i].base); 		printf("额外加薪:\n"); 		scanf("%f", &stu[i].reward); 		printf("扣除:\n"); 		scanf("%f", &stu[i].reduce); 		stu[i].pay = stu[i].base + stu[i].reward + stu[i].reduce; 		printf("\n"); 		count += 1; 		printf("\n"); 		printf("已增加的人数:\n"); 		printf("%d", count); 	} 	printf("添加成功!\n"); 	m = m + count; 	printf("增加后所有员工的信息:\n\n"); 	save_file(m); 	display(); 	fclose(fp); }  void find()//查找函数 { 	int t, flag; 	system("cls"); 	printf("1.按工号查询\n"); 	printf("2.按姓名查询\n"); 	printf("3.返回主菜单\n"); 	scanf("%d", &t); 	if (t >= 1 && t <= 3) 	{ 		flag = 1; 	} 	else 	{ 		flag = 0; 		printf("输入有误!\n"); 	} 	while (flag == 1) 	{ 		switch (t) 		{ 		case 1: 			printf("按工号查询:\n"); 			find_num(); 			break; 		case 2: 			printf("按姓名查询:\n"); 			find_name(); 			break; 		case 3:start(); break; 		default:break; 		} 	} }  void find_num()//按工号查询函数 { 	int m = load_file(), t, i; 	char a[100] = { 0 }; 	printf("请输入要查找员工的工号:\n"); 	scanf("%s", a); 	for (i = 0; i<m; i++) 	{ 		if (strcmp(a, stu[i].num) == 0) 		{ 			printf("月份   工号   姓名  性别  职务  基本工资   额外加薪    扣除       薪水\n"); 			printf("%d      %s    %s     %s   %d	 %s      %f          %f        %f         %f\n", stu[i].month, stu[i].num, stu[i].name, stu[i].sex, stu[i].year, stu[i].job, stu[i].base, stu[i].reward, stu[i].reduce, stu[i].pay); 			break; 		} 		else 			printf("查无此人\n\n"); 	} 	printf("返回查询函数请按1，继续查询请按2\n\n"); 	scanf("%d", &t); 	switch (t) 	{ 	case 1:find(); break; 	case 2: break; 	default:break; 	} }  void find_name()//按姓名查询 { 	char name[30]; 	int i, t, m = load_file(); 	printf("请输入要查询员工的姓名:\n"); 	scanf("%s", name); 	for (i = 0; i<m; i++) 	{ 		if (strcmp(stu[i].name, name) == 0) 		{ 			printf("月份   工号   姓名  性别  职务  基本工资   额外加薪    扣除       薪水\n"); 			printf("%d      %s    %s     %s   %d  %s      %f          %f        %f         %f\n", stu[i].month, stu[i].num, stu[i].name, stu[i].sex, stu[i].year, stu[i].job, stu[i].base, stu[i].reward, stu[i].reduce, stu[i].pay); 		} 		if (i == m) 			printf("查无此人\n"); 	} 	printf("返回查询函数请按1，继续查询请按2\n\n"); 	scanf("%d", &t); 	switch (t) 	{ 	case 1: find(); break; 	case 2: break; 	default:break;  	} }  void modify()//修改函数 { 	char num[7]; 	char name[20]; 	char sex[4]; 	int year = 1; 	char job[10]; 	int month; 	float base; 	float reward; 	float reduce; 	//float pay; 	int b, c, i=0, n, t, flag, m = load_file(); 	system("cls"); 	printf("原来的员工信息:\n"); 	printf("月份   工号   姓名  性别  职务  基本工资   额外加薪    扣除       薪水\n"); 	printf("%d      %s    %s     %s  %d  %s      %f          %f        %f         %f\n", stu[i].month, stu[i].num, stu[i].name, stu[i].sex, stu[i].year, stu[i].job, stu[i].base, stu[i].reward, stu[i].reduce, stu[i].pay); 	printf("\n"); 	printf("请输入要修改的员工姓名:\n"); 	scanf("%s", name); 	for (flag = 1, i = 0; flag&&i<m; i++) 	{ 		if (strcmp(stu[i].name, name) == 0) 		{ 			printf("该员工原本记录为:\n"); 			printf("月份   工号   姓名  性别  职务  基本工资   额外加薪    扣除       薪水\n"); 			printf("%d      %s    %s     %s  %d  %s      %f          %f        %f         %f\n", stu[i].month, stu[i].num, stu[i].name, stu[i].sex, stu[i].year, stu[i].job, stu[i].base, stu[i].reward, stu[i].reduce, stu[i].pay); 			printf("确定修改请按1,取消请按2\n"); 			scanf("%d", &n); 			if (n == 1) 			{ 				printf("需要修改的选项:"); 				printf("1.工号    2.姓名      3.性别       4.年龄      5.职务        6.月份     7.基本工资   8.额外加薪    9.扣除    10.返回上一级\n"); 				printf("请输入要修改的序号:\n"); 				scanf("%d", &c); 				if (c<1 || c>10) 				{ 					printf("该选项不存在,请重新选择!\n"); 					flag = 0; 				} 			} 		} 	} 	if (flag == 1) 		printf("查无此人!\n"); 	do 	{ 		switch (c) 		{ 		case 1: 			printf("工号改为:\n"); 			scanf("%s", &num); 			strcpy(stu[i - 1].num, num); 			break; 		case 2: 			printf("姓名改为:\n"); 			scanf("%s", &name); 			strcpy(stu[i - 1].name, name); 			break; 		case 3: 			printf("性别改为:\n"); 			scanf("%s", sex); 			strcpy(stu[i - 1].sex, sex); 			break; 		case 4: 			printf("年龄改为:\n"); 			scanf("%d", &year); 			stu[i - 1].year = year; 			break; 		case 5: 			printf("职务改为:\n"); 			scanf("%s", &job); 			strcpy(stu[i - 1].job, job); 			break; 		case 6: 			printf("月份改为:\n"); 			scanf("%d", &month); 			stu[i - 1].month = month; 			break; 		case 7: 			printf("基本工资改为:\n"); 			scanf("%f", &base); 			stu[i - 1].base = base; 			break; 		case 8: 			printf("额外加薪改为:\n"); 			scanf("%f", &reward); 			stu[i - 1].reward = reward; 			break; 		case 9: 			printf("扣除改为:\n"); 			scanf("%f", &reduce); 			stu[i - 1].reduce = reduce; 			break; 		case 10:modify(); break; 		} 		printf("\n\n"); 		printf("确认修改请按1,重新修改请按2\n\n"); 		scanf("%d", &b); 	} while (b == 2); 	{ 		modify(); 	} 	printf("\n修改后的所有员工信息:\n"); 	save_file(m); 	display(); 	printf("继续修改请按1,不再修改请按2\n"); 	scanf("%d", &t); 	switch (t) 	{ 	case 1:modify(); break; 	case 2:break; 	default:break; 	} } void sort() { 	int i, j, m = load_file(); 	struct stuff t; 	for (i = 0; i<m - 1; i++) 	{ 		for (j = 0; j<m - i - 1; j++) 			if (stu[j].pay>stu[j + 1].pay) 			{ 				t = stu[j]; 				stu[j] = stu[j + 1]; 				stu[j + 1] = t;  			} 	} }  void tong() { 	int sum = 0, i, count = 0, j = 0, k = 0; 	int m = load_file(); 	for (i = 0; i<m; i++) 	{ 		sum = sum + (int)stu[i].pay; 		if (stu[i].pay <= 2000) 		{ 			count++; 		} 		if (stu[i].pay>2000 && stu[i].pay <= 5000) 		{ 			j++;

user: user-3
content: 引用 2 楼 血影*裂冰 的回复:[quote=引用 1 楼 niiiloc的回复:]一看就是抄的代码，你给多少钱呢 大佬还要钱啊，是不是太庸俗了[/quote]  没感觉多庸俗。代码调试需要功夫和时间的，收点辛苦费没啥

user: user-0
content: 引用 1 楼 niiiloc的回复:一看就是抄的代码，你给多少钱呢 大佬还要钱啊，是不是太庸俗了

user: user-5
content: 一看就是抄的代码，你给多少钱呢