实验十二:字符串和结构

结构的概念与定义:

结构与数组:

*都是构造类型,是多个变量的集合。

*数组成员类型相同,结构成员类型不同。

程序解析:

主函数main:主界面功能控制

函数new_student:新建学生信息

函数search_student:查询学生信息

函数output_student:输出学生信息

结构数组名作为函数实参实际上与普通数组函数参数是一样的,就是将数组首地址传递函数形参。

结构是C语言中一种新的构造数据类型,它能够把有内在联系的不同类型的数据统一成一个整体,使它们相互关联。结构又是变量的集合,可以按照对基本数据类型的操作方法单独使用其变量成员。

第三个题目中运用了结构变量的整体赋值:

具有相同类型的结构变量可以直接赋值。赋值时,将赋值符号右边结构变量的每一个成员的值都赋给了左边结构变量中相应个成员的值都赋给了左边结构变量中相应的成员。

结构变量作为函数参数:如果一个C程序的规模较大,功能较多,必然需要以函数的形式进行功能模块的划分和实现。

如果程序中含有结构数据,则就可能需要用结构变量作为函数的参数或返回值,以在函数间传递数据。

特点:可以传递多个数据且参数形式较简单。
缺点:对于成员较多的大型结构,参数传递时所进行的结构数据复制使得效率较低。

结构数组操作:一个结构变量只能表示一个实体的信息,如果有许多相同类型的实体,就需要使用结构数组。

结构数组是结构与数组的结合,与普通数组的不同之处在于每个数组元素都是一个结构类型的变量。

结构数组元素的成员引用,其格式为:结构数组名[下标] .

上次作业的第三题实在还是不懂什么意思,我想以后等我学得更好了就会理解了吧,现在也不要着急,再来说说上次的题目吧:

冒泡法进行排序:

int i,j,t;
    for(i=1;i<n;i++)
        for(j=0;j<n-i;j++)
            if(a[j]>a[j+1]){
                t=a[j];
                a[j]=a[j+1];
                a[j+1]=t;
            }

一个数一个数的比较,再一个一个升上去,冒泡排序。

以前的知识也会忘记,要抽时间去巩固,好好学习!

That is all!!!:-D

时间: 2024-10-05 03:17:09

实验十二:字符串和结构的相关文章

Linux基础入门(新版)(实验九-实验十二)

实验九 简单文本入门 一.常用的文本处理命令 二.文本处理命令 1.tr 命令 tr 命令可以用来删除一段文本信息中的某些文字.或者将其进行转换. 使用方式: tr [option]...SET1 [SET2]   常用的选项有: 选项 说明 -d 删除和set1匹配的字符,注意不是全词匹配也不是按字符顺序匹配 -s 去除set1指定的在输入文本中连续并重复的字符 操作举例: # 删除 "hello shiyanlou" 中所有的'o','l','h' $ echo 'hello sh

c++实验十二 数组(二维)

先通过一个二维数组保存学生相关的信息 为了更直观的观看,决定用字符串数组来保存数据 当然在计算的时候要转变格式, // 实验十二 数组(二维).cpp: 定义控制台应用程序的入口点. #include "stdafx.h" #include<iostream> using namespace std; #include<string> int main() { string a[4][5] = { {"生","号",&qu

【黑金原创教程】【FPGA那些事儿-驱动篇I 】实验十二:串口模块① — 发送

实验十二:串口模块① — 发送 串口固然是典型的实验,想必许多同学已经作烂,不过笔者还要循例介绍一下.我们知道串口有发送与接收之分,实验十二的实验目的就是实现串口发送,然而不同的是 ... 笔者会用另一种思路去实现串口发送. 图12.1 PS/2发送时序与串口发送时序. 如图12.1所示,串口发送时序相较PS/2发送时序,串口发送时序就像断了翅膀的小鸟般,没有时钟信号控制整个传输协议.除此之外,串口发送时序与PS/2发送时序近似的地方也非常惊人 ... 默认下,一帧PS/2数据有11位,对此一帧

实验十二

实验十二  图形程序设计 实验时间 2018-11-14 第一部分:理论知识 1.AWT与Swing简介 (1)Swing用户界面库是非基于对等体的GUI工具箱. ? Swing具有更丰富并且更方便的用户界面元素集合. ? Swing对底层平台的依赖很少,因此与平台相关的bug很少. ? Swing会带来交叉平台上的统一视觉体验. ? Swing类库被放在javax.swing包里. (2)两者之间的关系: 大部分AWT组件都有其Swing的等价组件. Swing组件的名字一般是在AWT组件名前

实验四至实验十二

四.Linux 目录结构及文件基本操作 1.Linux 的文件组织目录结构. Linux 是以树形目录结构的形式来构建整个系统的 Linux 的磁盘是“挂在”(挂载在)目录上的 每一个目录不仅能使用本地磁盘分区的文件系统,也可以使用网络上的文件系统. FHS(英文:Filesystem Hierarchy Standard 中文:文件系统层次结构标准) 2.相对路径和绝对路径. 知识点: 进入上一级目录:$ cd .. 进入你的“home”目录:$ cd ~       # 或者 cd /hom

Python程序设计实验报告二:顺序结构程序设计(验证性实验)

安徽工程大学 Python程序设计 实验报告 班级   物流192   姓名  冯非凡  学号3190505208 成绩 日期     2020.3.22    指导老师       修宇 实验二 顺序结构程序设计(验证性实验) [实验目的] (1)掌握数据的输入输出的方法: (2)熟悉顺序结构程序中语句的执行过程: (3)掌握顺序结构程序的设计方法. [实验条件] PC机或者远程编程环境 [实验内容] 1.完成三个编程题.( python123) (1)计算圆面积的计算 S 问题描述: 根据圆

Python程序设计实验报告二:顺序结构程序设计

安徽工程大学 Python程序设计实验报告 班级 物流192 姓名 周立 学号 3190505227 成绩 日期 3月4日 指导老师 修宇 实验二 顺序结构程序设计(验证性实验) [实验目的] (1)掌握数据的输入输出的方法: (2)熟悉顺序结构程序中语句的执行过程: (3)掌握顺序结构程序的设计方法. [实验条件] PC机或者远程编程环境 [实验内容] 1.完成三个编程题.( python123) (1)计算圆面积的计算 S 问题描述: 根据圆的半径计算圆面积,半径为25.请编写并运行如下代码

Go语言学习(十二)面向对象编程-结构体

1.结构体的初始化方式 例如自定义一个结构体 package main import( "fmt" ) type Rect struct{ //type和struct为关键字 x,y float64 //结构体成员 widh,height float64 } func (r *Rect) Area() float64{ return r.width * r.height } func main(){ //初始结构体的几种方式: rect1 := new(Rect) rect2 := &

Java编程思想(十二) —— 字符串(1)

字符串在编程中也是经常使用的. 1)不可变 其实查看API就会发现: public final class String extends Object implements Serializable, Comparable<String>, CharSequence final,不可变的. public class TestString { static String upcase(String s){ return s.toUpperCase(); } public static void