struct student { int num; char name[20]; char sex;int age; }; struct student stu[3]={{10101,"Li Lin",'M',18},{10102,"Zhang Fun",'M',19},{10104,"WangMing",'F',20} }; void main() { struct student *p=stu; printf(" No. Name sex age\n"); printf("%d,%-10s %2c %d\n",p->num, p->name, p->sex, p->age); }运行结果
时间: 2024-02-03 09:02:32 浏览: 101
运行结果应该是:
```
No. Name sex age
10101 Li Lin M 18
```
输出了一个表头,然后输出了第一个结构体变量的信息,其中学号为 10101,姓名为 Li Lin,性别为 M,年龄为 18。姓名使用了左对齐,占用了 10 个字符宽度,性别使用了两个字符宽度,并且对齐输出。
相关问题
struct student { int num; int age; char name[20]; char sex; float fenshu; }stu[]= { 202211,12,"zhang wang","M",71.3, 202212,12,"wang qiang","M",82.1, 202213,13,"zhang he","W",81,2 };
在C语言中,可以使用以下方式引用结构体数组:
```c
#include <stdio.h>
struct student
{
int num;
int age;
char name[20];
char sex;
float fenshu;
};
int main()
{
struct student stu[] = {
{202211, 12, "zhang wang", 'M', 71.3},
{202212, 12, "wang qiang", 'M', 82.1},
{202213, 13, "zhang he", 'W', 81.2}
};
// 访问结构体数组元素
printf("学生1的姓名:%s\n", stu[0].name);
printf("学生2的年龄:%d\n", stu[1].age);
printf("学生3的分数:%f\n", stu[2].fenshu);
return 0;
}
```
在上述代码中,我们定义了一个名为`student`的结构体,然后创建了一个结构体数组`stu`并初始化了其元素。通过使用索引来访问结构体数组的元素,可以获取每个学生的具体信息。
【问题描述】读入一个存储了3条学生记录的文件file1.dat,将第1条记录和第3条记录交换后保存成文件file2.dat。 学生记录结构如下: struct student { char name[20]; int num; int age; char sex; };
好的,我来帮你解决这个问题。你需要先定义一个 `struct student` 结构体,然后按照题目要求读取文件、交换记录、保存文件。以下是代码实现:
```c++
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
struct student {
char name[20];
int num;
int age;
char sex;
};
int main() {
student stu[3];
ifstream fin("file1.dat", ios::binary);
fin.read((char*)&stu, sizeof(stu));
fin.close();
// 交换第1条记录和第3条记录
student temp = stu[0];
stu[0] = stu[2];
stu[2] = temp;
ofstream fout("file2.dat", ios::binary);
fout.write((char*)&stu, sizeof(stu));
fout.close();
return 0;
}
```
以上代码中,我们先定义了 `struct student` 结构体,然后使用文件流对象 `ifstream` 读取文件 `file1.dat` 中的 3 条学生记录,存储在 `stu` 数组中。接着交换第1条记录和第3条记录,最后使用文件流对象 `ofstream` 将 `stu` 数组中的学生记录保存到文件 `file2.dat` 中。注意要使用二进制模式进行文件读写,防止出现换行符等特殊字符导致的读写错误。
阅读全文