【无标题】

简介: 依次给你n个学生的姓名、学号,然后Q次询问,对于每一次询问你会得到一个学号,请你输出该学号对应的姓名。

题目描述

依次给你n个学生的姓名、学号,然后Q次询问,对于每一次询问你会得到一个学号,请你输出该学号对应的姓名。


输入

第一行输入一个整数n(1<=n<=100),然后n行,每行输入一个长度不超过15的字符串s,表示姓名和一个10位整数,表示学号。(学号保证没有前导零且每个学号都不相同) 再输入一个整数Q(0<=Q<=10),紧接着Q次询问,每次询问输入一个10位整数,表示询问的学号。(保证询问的学号存在)


输出

对于每一次询问输出与学号对应的姓名。


样例

输入 Copy 5 Anoyer 1000000000 LZH 1314521520 ZZ 9876543210 zhangfei 1234567890 ayi 5432198760 2 1314521520 1000000000


输出 Copy LZH Anoyer


来源/分类

结构体




题解

以下是一个基本的 C 语言程序,用于实现所描述的功能:

5dcc309cc0d65b97fa5e3b9082dd045.png


#define MAX_N 100

#define ID_LENGTH 11


/* 定义学生结构体 */

struct student {

char name[16];

char id[ID_LENGTH];

};


int main() {

int n, q, i, j;

struct student students[MAX_N];

1af60f4eeaa04e5212890c5a4403a98.png

/* 读入学生信息 */



程序首先定义了一个结构体 student,表示一个学生的信息。该结构体包含两个成员变量:name 表示学生姓名,类型为字符数组,长度为 16;id 表示学生学号,类型为字符数组,长度为 11。


然后程序读入了一个整数 n,表示学生数量。接下来的 n 行每行输入一个字符串 s,即学生姓名和学号,其中姓名和学号用一个空格分隔。程序将读入的学生信息存储在一个长度为 n 的结构体数组 students 中。


接着程序读入一个整数 q,表示查询请求的数量。程序使用一个循环处理每个查询请求:首先读入一个字符串 query,表示要查询的学号;然后在学生列表中查找该学号对应的姓名,并输出结果。如果在列表中没有找到对应的学号,则程序不会输出任何内容。


注意,在本程序中,我们使用了 C 语言标准库中的 strcmp 函数来比较两个字符串是否相等。该函数返回值为 0 表示两个字符串相等。


问题描述

本题C链表结构体定义如下 struct lis{ int v; struct lis* next; }; typedef struct lis* Lis; 要求实现函数 int sum(Lis head)//返回以head为头指针(本身不存值)的链表各个结点值的和输入 一个数n,代表链表的长度 接下来n个数ai,代表每个节点的内容


n与ai范围[1,100]

输出

一行和


样例

样例输入 Copy 3 1 2 3 样例输出 Copy 6




下面是一个实现题目要求的 C 语言函数 sum 的代码:


b644e67c6cf02febec52163f7ba97ac.png

该函数计算以参数 head 所指向的链表头结点为头节点的链表中各个结点值的和,并将结果作为返回值返回。其中,参数 head 是一个指向链表头节点的指针,链表的每个节点由结构体 lis 表示,其中 v 成员变量存储该节点的值,next 成员变量存储指向下一个节点的指针。


在代码中,我们首先将变量 sum 初始化为 0,然后从链表的第二个节点开始遍历整个链表。遍历过程中,对于每个节点,我们将其值加到 sum 中,然后继续遍历下一个节点。当遍历到链表尾部时,我们退出循环并返回 sum。


需要注意的是,在链表中,头结点本身不存储任何实际数据,仅用于标记链表的起始位置。因此,我们在遍历链表时应从头结点的 next 指针所指向的节点开始遍历。


问题描述

本题C链表结构体定义如下 struct lis{ int v; struct lis* next; }; typedef struct lis* Lis; 要求实现函数 int sum(Lis head)//返回以head为头指针(本身不存值)的链表各个结点值的和输入 一个数n,代表链表的长度 接下来n个数ai,代表每个节点的内容


n与ai范围[1,100]

输出

一行和


样例

样例输入 Copy 3 1 2 3 样例输出 Copy 6




下面是一个实现题目要求的 C 语言函数 sum 的代码:

182ef69e99095e85dc3e7a60d87ca4c.png

该函数计算以参数 head 所指向的链表头结点为头节点的链表中各个结点值的和,并将结果作为返回值返回。其中,参数 head 是一个指向链表头节点的指针,链表的每个节点由结构体 lis 表示,其中 v 成员变量存储该节点的值,next 成员变量存储指向下一个节点的指针。


在代码中,我们首先将变量 sum 初始化为 0,然后从链表的第二个节点开始遍历整个链表。遍历过程中,对于每个节点,我们将其值加到 sum 中,然后继续遍历下一个节点。当遍历到链表尾部时,我们退出循环并返回 sum。


需要注意的是,在链表中,头结点本身不存储任何实际数据,仅用于标记链表的起始位置。因此,我们在遍历链表时应从头结点的 next 指针所指向的节点开始遍历。


目录
相关文章
|
9月前
|
前端开发
前端第二课,HTML,alt,title,width/heigh,border,<a>超链接,target,tr,td,th
前端第二课,HTML,alt,title,width/heigh,border,<a>超链接,target,tr,td,th
|
算法 C++
无标题。。。
无标题。。。
|
前端开发 JavaScript
HTML之<form><textarea>元素详解
一篇了解form和textarea元素
399 0
HTML之<form><textarea>元素详解
|
Web App开发 移动开发 前端开发
HTML5关于contenteditable介绍
HTML5已经从一个新的名词变成了我们在项目中经常用到的东西了,今天我们就来分析一番其中contenteditable 。
166 0
|
应用服务中间件 nginx NoSQL
Title comes here
asdasdadawdwadaw
1460 0