c语言入门教程–-17结构体

c语言入门教程–-17结构体

c语言入门教程–-17结构体

用 struct 声明
方法1
struct Books
{

char title[50];
char author[50];
char subject[100];
int book_id;
} book;

方法2
struct
{

int a;
char b;
double c;
} S;

S s;

//我们可以将S看做一个类型,像一个int一样所以S s;这就是一个声明

s. a
s.b
s.c
这些就可以当做正常的变量使用。

我们还可以声明结构体数组
S s[5];

s[0]. a
s[0].b
s[0].c

例子:

#include <stdio.h>
#include <string.h>

struct Books
{
   
   char  title[50];
   char  author[50];
   int   book_id;
} book;

int main ()
{
   
   gets(book.title); 
   gets(book.author); 
   scanf("%d",&book.book_id);
   
   printf("书名:%s\n",book.title);
   printf("作者:%s\n",book.author);
   printf("图书编号:%d\n",book.book_id);
    
   return 0;
}

运行结果:
在这里插入图片描述
在上面的例子,我们可以看出我们把书比作一个整体,然后书里面有书名,作者,图书编号等属性。
以后类似这样的事物,我们都可以用结构体来表示。

在这个平台上有收徒的打算,如果小伙伴刚好需要一个能答疑,能带着你学习的师父,请联系我,q:2316773638

c语言入门教程–1编译器
c语言入门教程–-2基本语法
c语言入门教程–-3数据类型,变量与常量
c语言入门教程–-4运算符
c语言入门教程–-5判断语句
c语言入门教程–-6循环语句
c语言入门教程–-7嵌套循环
c语言入门教程–-8循环控制语句
c语言入门教程–-9循环与条件语句习题与总结
c语言入门教程–-10函数
c语言入门教程–-11递归
c语言入门教程–-12作用域
c语言入门教程–-13数组
c语言入门教程–-14二维数组
c语言入门教程–-15字符串的输入与输出
c语言入门教程–16字符串操作
c语言入门教程–-17结构体
c语言入门教程–-18指针

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/2905.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • java calendar和date_java calendar获取年月日

    java calendar和date_java calendar获取年月日java中的Calendar类为什么起个名字就叫做日历呢?因为这个类可以让我们像看日历一样得到这个时间的所有属性,你还在为不知道2014年5月7日是周几而苦恼吗?你还在为2005年8月14日是8月的第几周而发愁吗?快来试一试Calendar吧。Calendar的常用属性属性作用YEAR年份MONTH月份DATE同DAY_OF_MONTH,日期DAY_…

  • wpf-AvalonDock基础-安装和更换主题

    wpf-AvalonDock基础-安装和更换主题最近对wpf的多窗口排列问题深感头疼,算尺寸、位置太麻烦了(也可能是我菜鸡的缘故),最后决定用AvalonDock,排列很漂亮。本篇主要是安装和更换主题,后续会更一篇项目中常用的技巧。再吐槽一下,AvalonDock的中文资料同质化太严重!!!很多需要自己测试了才能用好(我的环境是win10+vs2019)喜欢的话为我的辛苦点个赞吧!嘤嘤嘤安装Avalondock是一个支持mvvm的框架,可以快速开发出类似visualstudio的多窗口app。去https://archive.codepl

  • you are not allowed to_BlankBlood

    you are not allowed to_BlankBloodisNotEmpty:判断某字符串是否非空StringUtils.isNotEmpty(null)=falseStringUtils.isNotEmpty(“”)=falseStringUtils.isNotEmpty(“”)=trueStringUtils.isNotEmpty(“bob”)=trueisNotBlank:判断某字符串是否不为空且长度不为0且不

  • CANoe/CANalyzer诊断功能的深入理解以及CAPL诊断编程实现

    CANoe/CANalyzer诊断功能的深入理解以及CAPL诊断编程实现之前和大家分享了CANoe的基础使用(分析、仿真、测试、诊断),这篇文章将继续深入探讨如何使用CANoe/CANalyzer中的诊断功能。诊断用于在将ECU安装到系统之前或之后配置,维护,支持,控制和扩展ECU,例如,一辆车。诊断通常在请求-响应方案中执行:测试仪(客户端)向…

  • flink中文社区_flink demo

    flink中文社区_flink demoFeatureStagesMVP:Havealook,considerwhetherthiscanhelpyouinthefuture.Beta:Youcan…

    2022年10月31日
  • iPhone屏幕尺寸、分辨率及适配

    从初代iPhone3GS到现如今的iPhone6(+),屏幕尺寸、分辨率、像素密度都在在不断增大。如何适配不同的屏幕尺寸,使UI更加协调美观,这给iPhone/iOS应用开发者带来了挑战。本文结合个人在iOSUI开发和适配方面的粗浅经验,对常用屏幕适配相关因素做个梳理盘点,以备日后查阅。

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号