从零开始学习嵌入式----结构体struct和union习题回顾
一、通过结构体和自定义函数实现成绩从大到小的排序,要求在主函数内定义结构体数组。
(图片来源网络,侵删)
#include //定义一个结构体类型 typedef struct Student { int age; char name[32]; float score; } STU; //定义一个函数实现成绩从小到大的排序 void fun(STU *p, int num) { //通过冒泡排序实现成绩从大到小的排序 for (int i = 0; i p[j + 1].score) { STU t = p[j];//定义一个临时结构体变量实现参数的交换 p[j] = p[j + 1]; p[j + 1] = t; } } } } int main(int argc, char const *argv[]) { //在主函数内定义结构体数组 STU stu[3] = {{1, "zhang", 23.5}, {2, "wang", 45.7}, {76, "li", 87.6}}; STU *sp = stu;//定义一个结构体指针 fun(sp, 3);//从小到大排序 //打印输出数据 for (int i = 0; i二、通过union联合体判断计算机是大端存储还是小端存储。
#include union demo { int a; char b; }; int main(int argc, char const *argv[]) { union demo d1; d1.a=0x12345678; printf("%#x\n",d1.b);//0x78 return 0; }
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。