全国计算机等级考试二级题库【C语言】:程序填空题型——结构体 自制答案详解合辑

二级C语言程序填空题型简介

1、/**********found**********/紧跟的下面一行的程序设空,一般为3个空;
2、常见错误:
(1)
(2)
3、做题推荐步骤:
(1)
(2)

---------------一、结构体---------------

2、题目要求【结构体】

程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。函数fun的功能是对形参b所指结构体变量中的数据进行修改,最后在主函数中输出修改后的数据。 例如:b所指变量t中的学号、姓名和三门课的成绩依次是:10002、“ZhangQi”、93.00、85.00、87.00,修改后输出t中的数据应为: 10004、“LiJie”、93.00、85.00、87.00。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在考生文件夹下的BLANK1.C中。不得增行或删行,也不得更改程序的结构!

#include  <stdio.h>
#include  <string.h>
struct student {long  sno;char  name[10];float  score[3];
};
void fun( struct student  *b)
{
/**********found**********/b__1__ = 10004;
/**********found**********/strcpy(b__2__, "LiJie");
}
main()
{ struct student  t={10002,"ZhangQi", 93, 85, 87};int  i;printf("\n\nThe original data :\n");printf("\nNo: %ld  Name: %s\nScores:  ",t.sno, t.name);for (i=0; i<3; i++)  printf("%6.2f ", t.score[i]);printf("\n");
/**********found**********/fun(__3__);printf("\nThe data after modified :\n");printf("\nNo: %ld  Name: %s\nScores:  ",t.sno, t.name);for (i=0; i<3; i++)  printf("%6.2f ", t.score[i]);printf("\n");getchar();
}

我的答案

#include  <stdio.h>
#include  <string.h>
struct student {long  sno;char  name[10];float  score[3];
};
void fun( struct student  *b)
{
/**********found**********/b->sno = 10004;//(1)结构体指针变量 访问属性的方式 ->
/**********found**********/strcpy(b->name, "LiJie");//(2)结构体指针变量 访问属性的方式 ->
}
main()
{ struct student  t={10002,"ZhangQi", 93, 85, 87};int  i;printf("\n\nThe original data :\n");printf("\nNo: %ld  Name: %s\nScores:  ",t.sno, t.name);for (i=0; i<3; i++)  printf("%6.2f ", t.score[i]);printf("\n");
/**********found**********/fun(&t);//(3)函数调用 参数为指针类型的printf("\nThe data after modified :\n");printf("\nNo: %ld  Name: %s\nScores:  ",t.sno, t.name);for (i=0; i<3; i++)  printf("%6.2f ", t.score[i]);printf("\n");getchar();
}

知识点提要
1、结构体:结构体指针变量属性的访问->;普通结构体面两属性的访问.;(考察知识)
2、指针:指针变量就是记录地址值的变量;指针变量的赋值;指针作为函数的参数。(考察知识)

技巧总结
1、变量赋值所在行,结构体的属性缺失:①根据右值确定属性;②根据变量类型确定访问运算符为->还是.
2、函数调用所在行,参数缺失:①查看函数定义时的参数列表中的形参类型;②检查所在代码块相关变量的类型。

4、题目要求【结构体】

程序通过定义学生结构体变量,存储了学生的学号、姓名和3门课的成绩。函数fun的功能是将形参a所指结构体变量s中的数据进行修改,并把a中地址作为函数值返回主函数,在主函数中输出修改后的数据。例如: a所指变量s中的学号、姓名、和三门课的成绩依次是: 10001、 ”ZhangSan”、95、80、88, 修改后输出t所指变量的数据应为: 10002、 "LiSi”、96、81、89。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:源程序存放在文件BLANK1. C中,不得增行或删行,也不得更改程序的结构。

#include  <stdio.h>
#include  <string.h>
struct student {long  sno;char  name[10];float  score[3];
};
/**********found**********/
__1__ fun(struct student  *a)
{ int  i;a->sno = 10002;strcpy(a->name, "LiSi");
/**********found**********/for (i=0; i<3; i++) __2__ += 1;
/**********found**********/return __3__ ;
}
main()
{ struct student  s={10001,"ZhangSan", 95, 80, 88},  *t;int  i;printf("\n\nThe original data :\n");printf("\nNo: %ld  Name: %s\nScores:  ",s.sno, s.name);for (i=0; i<3; i++)  printf("%6.2f ", s.score[i]);printf("\n");t = fun(&s);printf("\nThe data after modified :\n");printf("\nNo: %ld  Name: %s\nScores:  ",t->sno, t->name);for (i=0; i<3; i++)  printf("%6.2f ", t->score[i]);printf("\n");getchar();
}

我的答案

#include  <stdio.h>
#include  <string.h>
struct student {long  sno;char  name[10];float  score[3];
};
/**********found**********/
struct student* fun(struct student  *a)//(1)函数返回值类型缺失
{ int  i;a->sno = 10002;strcpy(a->name, "LiSi");
/**********found**********/for (i=0; i<3; i++) a->score[i] += 1;//(2)for循环中,赋值语句左值缺失
/**********found**********/return a;//(3)函数返回值缺失
}
main()
{ struct student  s={10001,"ZhangSan", 95, 80, 88},  *t;int  i;printf("\n\nThe original data :\n");printf("\nNo: %ld  Name: %s\nScores:  ",s.sno, s.name);for (i=0; i<3; i++)  printf("%6.2f ", s.score[i]);printf("\n")

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/90934.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/90934.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人工智能与城市:城市生活的集成智能

1. 智慧城市的核心价值&#xff1a;从 “硬件堆砌” 到 “智能协同”1.1 传统城市的治理困境全球 55% 的人口居住在城市&#xff0c;到 2050 年这一比例将升至 68%。传统城市管理面临多重挑战&#xff1a;资源分配失衡&#xff1a;早晚高峰主干道拥堵率达 80%&#xff0c;而支线…

Linux下挂载磁盘报superblock错误

Linux下挂载磁盘报superblock错误背景问题现象1、使用fdisk查询设备文件信息2、挂载磁盘&#xff0c;报出fs type错误解决办法1、使用e2fsk命令检查整个磁盘2、resize2fs 命令调整文件系统块大小和物理磁盘块大小3、挂载磁盘&#xff0c;确认修复结果问题思考1、rclone命令做数…

Http证书体系及证书加密流程(通信流程)

一、HTTPS 证书体系&#xff1a;信任的基石 HTTPS 证书体系是保障网络通信安全的核心机制&#xff0c;其本质是一套基于公钥基础设施&#xff08;PKI&#xff0c;Public Key Infrastructure&#xff09; 的信任体系&#xff0c;通过数字证书实现通信双方的身份验证和数据加密&…

【分布式架构】学习路径概述:了解分布式系统的核心问题、解决方案与实战说明

文章目录零、前言一、分布式系统理论1、 分布式系统的一致性问题1.1、一致性问题理论&#xff08;CAP/BASE&#xff09;1.2、 一致性协议与算法&#xff08;Paxos/Raft&#xff09;&#xff1a;选主、分布式锁1.3、 分布式事务(2PC\3PC\TCC)&#xff1a;服务一致性保障与性能2、…

C# 密封类_密封方法 (seadled 关键字)

C#允许将类声明为密封类&#xff0c;密封类不能被继承在什么场景用&#xff1f;答&#xff1a;防止重写某些类导致代码混乱密封类seadled 声明密封类的关键字//seadled 声明密封类的关键字 //密封类不能被继承 sealed class Class1 {public int age;public string name;publi…

深度学习(鱼书)day04--手写数字识别项目实战

深度学习&#xff08;鱼书&#xff09;day04–手写数字识别项目实战 鱼书的相关源代码下载&#xff1a; 点击链接&#xff1a;http://www.ituring.com.cn/book/1921 点击“随书下载” 第三项就是源代码&#xff1a; 解压后&#xff0c;在pycharm&#xff08;或其它IDE&#…

【自用】NLP算法面经(6)

一、FlashAttention 1、Tile-Based计算 将q,k,v分块为小块&#xff0c;每次仅处理一小块&#xff1a; 利用gpu的片上SRAM完成QK^T和softmax避免中间结果写入HBM 标准attention的计算算法如下&#xff1a;标准attention实现大量中间结果需要频繁访问HBM&#xff0c;而HBM的访问速…

Vue页面卡顿优化:从理论到实战的全面解释

目录 1. 理解Vue页面卡顿的幕后黑手 1.1 响应式系统的“双刃剑” 1.2 虚拟DOM的“隐藏成本” 1.3 浏览器渲染的“性能陷阱” 实战案例:一个“罪魁祸首”的排查 2. 优化响应式系统:让数据“轻装上阵” 2.1 使用v-if和v-show控制渲染 2.2 冻结静态数据 2.3 精细化响应式…

从0开始学linux韦东山教程Linux驱动入门实验班(6)

本人从0开始学习linux&#xff0c;使用的是韦东山的教程&#xff0c;在跟着课程学习的情况下的所遇到的问题的总结,理论虽枯燥但是是基础。本人将前几章的内容大致学完之后&#xff0c;考虑到后续驱动方面得更多的开始实操&#xff0c;后续的内容将以韦东山教程Linux驱动入门实…

高性能反向代理与负载均衡 HAProxy 与 Nginx

在现代高并发 Web 架构中&#xff0c;HAProxy 和 Nginx 是两个非常重要的工具。它们在反向代理、负载均衡、SSL 终止、缓存、限流等方面发挥着关键作用。 一、HAProxy 与 Nginx 简介 1. HAProxy 简介 HAProxy&#xff08;High Availability Proxy&#xff09; 是一个使用 C …

AI安全“面壁计划”:我们如何对抗算法时代的“智子”封锁?

> 在算法窥视一切的今天,人类需要一场数字世界的“面壁计划” 2025年,某医院部署的AI分诊系统被发现存在严重偏见:当输入相同症状时,系统为白人患者分配急诊通道的概率是黑人患者的**1.7倍**。调查发现,训练数据中少数族裔样本不足**15%**,导致AI在“认知”上形成了结…

数据库数据恢复—报错“system01.dbf需要更多的恢复来保持一致性”的Oracle数据恢复案例

Oracle数据库故障&#xff1a; 某公司一台服务器上部署Oracle数据库。服务器意外断电导致数据库报错&#xff0c;报错内容为“system01.dbf需要更多的恢复来保持一致性”。该Oracle数据库没有备份&#xff0c;仅有一些断断续续的归档日志。Oracle数据库恢复流程&#xff1a; 1、…

Spring Cloud Gateway 服务网关

Spring Cloud Gateway是 Spring Cloud 生态系统中的一个 API 网关服务&#xff0c;用于替换由Zuul开发的网关服务&#xff0c;基于Spring 5.0Spring Boot 2.0WebFlux等技术开发&#xff0c;提供了网关的基本功能&#xff0c;例如安全、监控、埋点和限流等&#xff0c;旨在为微服…

[数据结构]#6 树

树是一种非线性的数据结构&#xff0c;它由节点组成&#xff0c;并且这些节点之间通过边连接。树的每个节点可以有一个或多个子节点&#xff0c;并且有一个特殊的节点叫做根节点&#xff08;没有父节点&#xff09;。树在计算机科学中应用广泛&#xff0c;尤其是在数据库索引、…

车辆网络安全规定之R155与ISO/SAE 21434

随着科技的不断进步&#xff0c;车辆已经从传统的机械装置演变为高度智能化的移动终端。现代汽车不仅配备了先进的驾驶辅助系统&#xff08;ADAS&#xff09;、车载信息娱乐系统&#xff08;IVI&#xff09;&#xff0c;还具备联网功能&#xff0c;能够实现远程诊断、自动驾驶、…

Go语言实战案例-合并多个文本文件为一个

以下是《Go语言100个实战案例》中的 文件与IO操作篇 - 案例21&#xff1a;合并多个文本文件为一个 的完整内容&#xff0c;适用于初学者学习文件读取与写入的综合运用。&#x1f3af; 案例目标使用 Go 语言将指定目录下的多个 .txt 文件&#xff0c;合并成一个新的总文件。&…

基坑渗压数据不准?选对渗压计能实现自动化精准监测吗?

一、渗压监测的背景 渗压计是一种专门用于测量构筑物内部孔隙水压力或渗透压力的传感器&#xff0c;适用于长期埋设在水工结构物或其它混凝土结构物及土体内&#xff0c;以测量结构物或土体内部的渗透&#xff08;孔隙&#xff09;水压力。 在水利工程中&#xff0c;大坝、水库…

Linux网络:阿里云轻量级应用服务器配置防火墙模板开放端口

1.问题介绍在使用Udp协议或其他协议进行两台主机或同一台主机通信时&#xff0c;常常会出现bind成功&#xff0c;但是在客户端向服务端发送数据后&#xff0c;服务端无响应的情况&#xff0c;如果使用轻量级应用服务器&#xff0c;大概率是服务器的端口因为防火墙未对公网IP开放…

《 Spring Boot整合多数据源:分库业务的标准做法》

&#x1f680; Spring Boot整合多数据源&#xff1a;分库业务的标准做法 文章目录&#x1f680; Spring Boot整合多数据源&#xff1a;分库业务的标准做法&#x1f50d; 一、为什么需要多数据源支持&#xff1f;&#x1f4a1; 典型业务场景⚙️ 二、多数据源集成方案对比&#…

前端ApplePay支付-H5全流程实战指南

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档前言近期公司开展关于苹果支付的相关业务&#xff0c;与之前不同的是&#xff0c;以前后台直接获取第三方Wallet封装好的接口获取支付地址&#xff0c;H5页面直接跳转使用Appl…