写一个 C 文件,从键盘输入3个学生信息,把学生信息写入文件保存
时间: 2023-03-25 21:03:06 浏览: 134
你好,这个问题我可以回答。以下是一个示例 C 代码,可以从键盘输入3个学生信息,然后将学生信息写入文件并保存:
#include <stdio.h>
struct student {
char name[20];
int age;
float score;
};
int main() {
struct student s[3];
int i;
// 从键盘输入3个学生信息
for (i = ; i < 3; i++) {
printf("请输入第%d个学生的姓名、年龄和成绩:", i+1);
scanf("%s %d %f", s[i].name, &s[i].age, &s[i].score);
}
// 将学生信息写入文件并保存
FILE *fp;
fp = fopen("students.txt", "w");
for (i = ; i < 3; i++) {
fprintf(fp, "%s %d %.2f\n", s[i].name, s[i].age, s[i].score);
}
fclose(fp);
printf("学生信息已保存到文件!\n");
return ;
}
相关问题
写一个c文件,从键盘输入3个学生信息,把学生信息写入文件保存
好的,我可以回答这个问题。以下是一个示例 C 代码,可以从键盘输入 3 个学生信息,并将其写入文件保存:
```c
#include <stdio.h>
struct student {
char name[20];
int age;
float score;
};
int main() {
FILE *fp;
struct student s[3];
int i;
// 从键盘输入学生信息
for (i = ; i < 3; i++) {
printf("请输入第 %d 个学生的姓名、年龄和成绩:", i+1);
scanf("%s %d %f", s[i].name, &s[i].age, &s[i].score);
}
// 打开文件并写入学生信息
fp = fopen("students.txt", "w");
if (fp == NULL) {
printf("无法打开文件!\n");
return 1;
}
for (i = ; i < 3; i++) {
fprintf(fp, "%s %d %.2f\n", s[i].name, s[i].age, s[i].score);
}
fclose(fp);
printf("学生信息已保存到文件 students.txt 中。\n");
return ;
}
```
注意,这只是一个示例代码,实际应用中可能需要根据具体需求进行修改。
用学语言写一个学生成绩管理系统将信息存到txt文件中
好的,以下是一个使用C语言编写的学生成绩管理系统,可以将学生的姓名和成绩信息保存到txt文件中:
```c
#include <stdio.h>
#include <stdlib.h>
#define MAX_STUDENT_NUM 20 // 最大学生数
#define FILENAME "students.txt" // 保存学生信息的文件名
// 学生结构体
typedef struct {
char name[20]; // 姓名
float score; // 成绩
} Student;
int main() {
Student students[MAX_STUDENT_NUM];
int num = 0; // 学生数
// 读取学生信息
printf("请输入学生信息(最多%d个),输入exit结束输入\n", MAX_STUDENT_NUM);
while (num < MAX_STUDENT_NUM) {
printf("请输入第%d个学生的姓名和成绩,用空格分隔:", num + 1);
// 从键盘读取学生姓名和成绩
if (scanf("%s%f", students[num].name, &students[num].score) != 2) {
break;
}
num++;
}
// 保存学生信息到文件
FILE *fp;
fp = fopen(FILENAME, "w");
if (fp == NULL) {
printf("无法打开文件 %s\n", FILENAME);
exit(1);
}
for (int i = 0; i < num; i++) {
fprintf(fp, "%s %.2f\n", students[i].name, students[i].score);
}
fclose(fp);
printf("学生信息已保存到文件 %s 中!\n", FILENAME);
return 0;
}
```
程序中,学生信息通过一个结构体来存储,每个结构体包含学生的姓名和成绩。程序从键盘读取学生信息,最多读取20个学生,读取完成后将学生信息保存到指定的文件中。在保存信息时,使用`fprintf()`函数将每个学生的姓名和成绩写入文件中。
需要注意的是,使用`fprintf()`函数将浮点数写入文件时,需要指定精度,否则会出现一些小数位的误差。在本程序中,使用了`%.2f`格式化字符串将浮点数输出为小数点后保留两位的形式。