当前位置: 首页 > news >正文

上海市高等学校信息技术水平考试 C程序设计(2020D场)全解

ef410fccfbe3492581bddbcf646e1e09.png

C语言程序一定是从mian函数开始的;在主函数中,一次又一次调用了其他函数,但不代表程序是在代码行的最后一个函数结束;而是在主函数中,遇到了return 0 才会程序结束。

48c2859346434900b8ce354f1bd18122.png

标识符:在编程语言中,标识符是用户编程时使用的名字,变量、常量、函数、语句块都有名字。是用来标识某个实体的一个符号,是对变量名、函数名、标号和其他各种用户定义的对象命名。

C语言中标识符的命名规范:

  • 1.标识符由字母、数字、下划线组成,并且首字母不能是数字。
  • 2.不能把C的关键字作为用户的标识符,例如:if、for、while等。(注:标识符不能和C语言的关键字相同,也不能和用户自定义的函数或C语言库函数同名)
  • 3.标识符长度是由机器上的编译系统决定的,一般的限制为8字符,(注:8字符长度限制是C89标准,C99标准已经扩充长度,其实大部分工业标准都更长)。
  • 4.标识符对大小写敏感,即严格区分大小写。

 044063032acb4659b22ace36a3de2e83.png

C、D两项并没有这种运算形式,因此直接舍去。

B选项最后结果应该是6,2 * (2+1)

因此最后结果为A。

f9ee3f2892a5465193ac457aacf3c4a2.png

|| 代表只需要左右两式,只需要有一者为真即为真;&&代表需要左右两式都为真,才最后结果为真。

fa74c55ea08b483aa6b1a1b52f91f5b3.png

 a为2,进入switch的default(类似于 else-if 语句中的 else),最后a的结果5。

b749164a3adc4c9c9f1eaf816e48d97f.png

 3 - 2 = 1,第一次循环;1 - 2 = -1,第二次循环。

 20921d67c4534ca097a4efd638f85c7a.png

y 是静态局部变量,因此进行运算之后不会恢复初始化时的值。5 + 3 + 4 = 12。

21fbcbd94a1f410d99888f2c38412128.png

本题是对字符串数组的考察。

首先,数组初始化不能用变量,因此D选项去除;B选项、C选项表达的含义一致,只是B选项省略了行,二维数组能省略行、但不能省略列;因此以B选项为例,由于B选项数组的每一行只有4列,1234四个字符就已经占满了,无处存放 '\0',因此出现了1234abcd的打印结果。A选项中,是字符串数组的指针形式,即指针数组;str数组存放了2个指针,分别指向了"1234"和"abcd"两个字符串,注意:此处指向的是字符串,而非字符串的首字符,因此出现了下图2中的打印为空的情况。

7522f2736c4345579e1a80b7cfe4e122.png

c804ec345f714b7d9149e2643c31160a.png

d3943085c3a042bc9adb04d73493307c.png

p指针初始化时,被赋予的是数组名,即数组的首元素地址。

对p解引用,结果为1;A选项 1 + 6 = 7,C选项 1 + 5 =6,因此结果为C。

p + 6 的含义为p指针在数组中,向后走了6位。因此B选项解引用后,结果为7。

2e93a70402e54856a20ada5efe654f80.png

比较的是两个结点的数据域,因此直接用 data 来进行比较。

函数传参时,传的如果是数组名,那么传输的就是数组首元素地址。

a(add)为追加,r(read)为只读,w(write)为只写。

scanf函数除了字符串以外,都需要进行取地址操作;break是跳出循环,continue是结束本次循环。

自定义函数初次定义需要声明参数类型。

1.e-5 和 1e-5 代表的都是 10^-5 。

嘟嘟嘟~

2020C场原题,原题链接:上海市高等学校信息技术水平考试 C程序设计(2020C场)全解-CSDN博客

此处略过。


http://www.mrgr.cn/news/26494.html

相关文章:

  • 力扣每日一题:236.二叉树的最近公共祖先
  • 【linux007】目录操作命令篇 - mkdir 命令
  • 2024年职场人士都在用的PDF转换工具大赏
  • Flask 第六课 -- 路由
  • PMP--一模--解题--41-50
  • react 组件通讯
  • 代码随想录训练营 Day60打卡 图论part10 SPFA算法 Bellman-Ford 之判断负权回路 Bellman-Ford 之单源有限最短路
  • JavaScript高级——变量提升和函数提升
  • 四、滑动窗口-算法总结
  • Debian11之Python3安装
  • java多线程编程 线程池的使用
  • spring security OAuth2 搭建资源服务器以及授权服务器/jdbc/jwt两种方案
  • 第 11篇 Helm 部署 RabbitMQ
  • 简单了解 JVM
  • 【开放词汇检测】基于MMDetection的MM-Grounding-DINO实战
  • 一天认识一个硬件之CPU
  • 使用HTML和CSS制作网页的全面指南
  • 基于Qt的串口调试工具
  • 金钥匙系列:解决学习拖延症和提高学习效率的有效方法
  • 在服务器上开Juypter Lab教程(远程访问)