在C语言中,复合数据类型是指那些可以包含多个简单数据类型的数据类型。以下是一些常见的C语言复合数据类型以及相关的例子:
1. 数组(Arrays):
数组是一种可以存储多个相同类型数据的数据结构。例如:
#include <stdio.h>
int main() {
int numbers[5]; // 声明一个可以存储5个整数的数组
numbers[0] = 10; // 初始化数组元素 numbers[1] = 20;
numbers[2] = 30;
numbers[3] = 40;
numbers[4] = 50;
for (int i = 0; i < 5; i++)
{printf("%d ", numbers[i]); // 输出数组元素}
return 0;}
2. 结构体(Structures):
结构体允许组合不同类型的数据到一个单独的数据类型中。例如:
#include <stdio.h>
struct Student {
char name[50];
float marks;
int age; };
int main() {
struct Student student1; // 声明结构体变量
strcpy(student1.name, "Alice"); // 初始化结构体成员
student1.age = 20;
student1.marks = 85.5;
printf("Name: %s\n", student1.name);
printf("Age: %d\n", student1.age); printf("Marks: %.2f\n", student1.marks); return 0;}
3. 联合体(Unions):
联合体允许在同一个内存位置存储不同的数据类型,但一次只能存储一个。 例如:
#include <stdio.h>
union Data {
int i;
float f;
char str[20];};
int main() {
union Data data; // 声明联合体变量
data.i = 10; // 初始化联合体的整数成员
printf("%d\n", data.i); // 输出10
data.f = 20.5; // 现在初始化浮点数成员
printf("%f\n", data.f); // 输出20.5
// 注意:由于联合体的所有成员都共享同一块内存,所以修改一个成员会影响其他成员的值。
return 0;}
4. 指针(Pointers):
指针是一个变量,其值为另一个变量的地址。通过指针,可以间接地访问、修改另一个变量的值。例如:
#include <stdio.h>
int main() {
int num = 50; // 声明并初始化一个整数变量
int *ptr = # // 声明一个指针变量并使0其指向num的地址
printf(" num的值: %d\n", num);
printf("num的地址: %p\n", (void*)&num);
printf("ptr的值: %p\n", (void*)ptr);
printf("ptr指向的值: %d\n", *ptr); // 使用*操作符解引用指针以获取其指向的值
*ptr = 60; // 通过指针修改num的值
printf("修改后num的值: %d\n", num);
return 0;}
这是C语言中一些比较常用的复合数据类型,下面我们来看看使用复合数据类型来制作一个学生信息管理系统。
我们先定义了一个TXL函数并对其进行赋值。
然后定义了一个结构体函数,用于编号查找。
再接收结构函数返回的结构变量体。
最后,在C语言中,"system("pause")"是一个常见的用法,通常用于Windows平台的命令行程序中。这个语句的作用是调用系统命令"pause"来实现程序暂停的功能,等待用户按下任意键后才会继续执行程序。
好啦,今天的分享就到这里了。再次声明:作者水平有限,如有失偏颇,还请各位不吝赐教