(笔记整理未完成)【struct 结构体】

结构体(Struct)可以用来存放一组不同类型的数据

结构体变量的定义:

struct 名称{

结构体所包含的变量和名称;

};

注意:大括号后面的分号“;”不能少,这是一条完整的语句。

eg.定义一组学生基本数据

struct stu
{
    char *name;  //姓名
    int num;  //学号
    int age;  //年龄
    char group;  //所在学习小组
    float score;  //成绩
};

结构体是一种集合,它里面包含了多个变量或数组,它们的类型可以相同,也可以不同,每个这样的变量或数组都称为结构体的成员。

需要注意的是,结构体是一种自定义的数据类型,是创建变量的模板,不占用内存空间;结构体变量才包含了实实在在的数据,需要内存空间来存储


 例题:洛谷 P5744 【深基7.习9】培训

题目描述

某培训机构的学员有如下信息:

  • 姓名(字符串)
  • 年龄(周岁,整数)
  • 去年 NOIP 成绩(整数,且保证是 5 的倍数 )

经过为期一年的培训,所有同学的成绩都有所提高,提升了 20%(当然 NOIP 满分是 600 分,不能超过这个得分)。

输入学员信息,请设计一个结构体储存这些学生信息,并设计一个函数模拟培训过程,其参数是这样的结构体类型,返回同样的结构体类型,并输出学员信息。

输入格式

输出格式

 输入输出样例

输入

3
kkksc03 24 0
chen_zhe 14 400
nzhtl1477 18 590

输出

kkksc03 25 0
chen_zhe 15 480
nzhtl1477 19 600

已AC代码:

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
struct student
{
	string name;
	int age;
	int score;	
} student[100000];        //这里一定要定义一个数组,便于之后输入数据

int main()
{
	int n,i;
	scanf("%d",&n);
	for(i=0;i<n;++i)
	{
		cin>>student[i].name>>student[i].age>>student[i].score;    
        //要输入结构体内的数据一定要用“结构体名.具体项目名”这个格式

		student[i].age++;
		student[i].score=student[i].score*1.2;
		if(student[i].score>=600)
		{
		student[i].score=600;	
		}

		cout<<student[i].name<<" "<<student[i].age<<" "<<student[i].score<<endl;
	}
	return 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值