修改时判断电话是否重复

获取最新的电话,根据最新电话查询记录,获取该记录id与回显时的id比对,若相同,则放行,若不同,则说明重复,提示前台

以下是一个简单的同学通讯录系统的设计: 1. 创建通讯录:定义一个数组来存储学生信息,每个学生信息包括姓名、学号和电话号码等。每输入一组信息,将其存储在数组中,并将记录数加1。 2. 修改通讯录:输入需要修改记录的学号,通过循环查找到该记录后,再输入数据替代原有数据。 3. 添加通讯录:判断输入的学号是否重复,若不重复再将输入的信息添加到对应的数组中,每输入一组数据,记录数加1。 4. 数据保存功能:将数组中的学生信息保存到文件中,以便下次使用可以读取。 5. 退出:退出程序。 以下是程序的示例代码: #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX_STUDENTS 100 struct Student { char name[20]; char id[10]; char phone[20]; }; struct Student students[MAX_STUDENTS]; int num_students = 0; void create_student() { struct Student student; printf("请输入学生姓名:"); scanf("%s", student.name); printf("请输入学生学号:"); scanf("%s", student.id); printf("请输入学生电话号码:"); scanf("%s", student.phone); students[num_students++] = student; } void modify_student() { char id[10]; printf("请输入需要修改记录的学号:"); scanf("%s", id); for (int i = 0; i < num_students; i++) { if (strcmp(students[i].id, id) == 0) { printf("请输入学生姓名:"); scanf("%s", students[i].name); printf("请输入学生电话号码:"); scanf("%s", students[i].phone); printf("修改成功!\n"); return; } } printf("未找到该学生记录!\n"); } void add_student() { struct Student student; printf("请输入学生姓名:"); scanf("%s", student.name); printf("请输入学生学号:"); scanf("%s", student.id); printf("请输入学生电话号码:"); scanf("%s", student.phone); for (int i = 0; i < num_students; i++) { if (strcmp(students[i].id, student.id) == 0) { printf("该学号已存在!\n"); return; } } students[num_students++] = student; } void save_data() { FILE *fp = fopen("students.txt", "w"); if (fp == NULL) { printf("无法打开文件!\n"); return; } for (int i = 0; i < num_students; i++) { fprintf(fp, "%s %s %s\n", students[i].name, students[i].id, students[i].phone); } fclose(fp); printf("数据保存成功!\n"); } void load_data() { FILE *fp = fopen("students.txt", "r"); if (fp == NULL) { printf("无法打开文件!\n"); return; } while (!feof(fp)) { struct Student student; fscanf(fp, "%s %s %s", student.name, student.id, student.phone); if (strlen(student.name) > 0) { students[num_students++] = student; } } fclose(fp); printf("数据加载成功!\n"); } void print_menu() { printf("1. 创建通讯录\n"); printf("2. 修改通讯录\n"); printf("3. 添加通讯录\n"); printf("4. 数据保存\n"); printf("5. 退出程序\n"); } int main() { load_data(); while (1) { print_menu(); int choice; printf("请输入选项:"); scanf("%d", &choice); switch (choice) { case 1: create_student(); break; case 2: modify_student(); break; case 3: add_student(); break; case 4: save_data(); break; case 5: return 0; default: printf("无效选项!\n"); break; } } return 0; }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值