void findCar() { CAR car; char findID[10]; printf("\n车辆信息查找\n"); printf("请输入要查找的车牌号:"); scanf("%s", &findID); int i; for (i = 0; i < carCount; i++) { if (strcmp(number[i].number, findID)!=0) { printf("车主姓名:%s\n车牌号:%s\n车辆颜色:%s\n车辆型号:%s\n", number[i].name, number[i].number, number[i].color, number[i].kind); break; } } if (i == carCount) { printf("未找到该车辆信息\n"); } system("pause"); }修正代码
时间: 2024-03-24 19:41:56 浏览: 22
以下是修正后的代码:
```c
void findCar() {
CAR car;
char findID[10];
printf("\n车辆信息查找\n");
printf("请输入要查找的车牌号:");
scanf("%s", findID); // 不需要使用 & 符号
int i;
for (i = 0; i < carCount; i++) {
if (strcmp(car[i].number, findID) == 0) { // 修改判断条件
printf("车主姓名:%s\n车牌号:%s\n车辆颜色:%s\n车辆型号:%s\n", car[i].name, car[i].number, car[i].color, car[i].kind);
break;
}
}
if (i == carCount) {
printf("未找到该车辆信息\n");
}
system("pause");
}
```
修正说明:
1. scanf() 函数中的 & 符号不需要,因为数组名本身就是地址。
2. 循环中的判断条件应该是查找到车牌号相同的车辆信息,因此应该使用 strcmp() 函数进行字符串比较,并判断返回值是否为0。
3. 在找到车辆信息后,应该直接输出该车辆的信息并退出循环。
相关问题
void findCar() { CAR car; char findID[10]; printf("\n车辆信息查找\n"); printf("请输入要查找的车牌号:"); scanf("%s", &findID); int flag = 0, i; while(fread(&car,sizeof(CAR),1,pFile)) { if (strcmp(number[i].number, findID)!=0) { flag = 1; printf("车主姓名:%s\n车牌号:%s\n车辆颜色:%s\n车辆型号:%s\n", number[i].name, number[i].number, number[i].color, number[i].kind); break; } } if (i == carCount) { printf("未找到该车辆信息\n"); } system("pause"); }修正代码
void findCar() {
CAR car;
char findID[10];
printf("\n车辆信息查找\n");
printf("请输入要查找的车牌号:");
scanf("%s", findID); // &findID改为findID,因为findID本身就是一个指针
int flag = 0, i = 0; // 初始化i为0
while(fread(&car,sizeof(CAR),1,pFile)) {
if (strcmp(car.number, findID) == 0) { // 修改为car.number
flag = 1;
printf("车主姓名:%s\n车牌号:%s\n车辆颜色:%s\n车辆型号:%s\n", car.name, car.number, car.color, car.kind); // 修改为car.name等
break;
}
i++; // 每次循环都要加1
}
if (flag == 0) { // 如果未找到车辆信息,则输出未找到的提示
printf("未找到该车辆信息\n");
}
system("pause");
}
void modifyCar() { CAR car; char findID[20]; printf("\n车辆信息修改\n"); printf("请输入要修改车辆信息的车牌号:"); scanf("%s", findID); pFile = fopen("info.dat", "rb+"); rewind(pFile); int flag = 0; while(fread(&car,sizeof(CAR
),1,pFile)==1) { if(strcmp(car.id,findID)==0) { flag = 1; printf("请重新输入车辆信息:\n"); printf("车牌号:"); scanf("%s",&car.id); printf("车辆品牌:"); scanf("%s",&car.brand); printf("车辆颜色:"); scanf("%s",&car.color); printf("车辆价格:"); scanf("%d",&car.price); printf("车辆出租状态(已出租:1,未出租:0):"); scanf("%d",&car.isrent); fseek(pFile,-sizeof(CAR),SEEK_CUR); fwrite(&car,sizeof(CAR),1,pFile); printf("车辆信息修改成功!\n"); break; } } if(flag == 0) { printf("未找到该车牌号对应的车辆信息!\n"); } fclose(pFile); }
请问,以上是一段什么语言的代码?
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)