c语言经典测试题3

1.题1

int a = 248, b = 4;
int const *c = 21;
const int *d = &a;
int *const e = &b;
int const * const f = &a;

请问下列表达式哪些会被编译器禁止?

A: *c = 32; B: *d = 43 C: e=&a D: f=0x321f

我们来分析一下:const用来修饰变量是想其不被改变,也就是所谓的变得静态。但是这个const放在哪?有什么作用也是有讲究的。就比如说int const *c =21,这里的const限制的就是*c,但是没有限制c.那么我们按照这个逻辑推理一下,这个A选项用*c来赋值,但是我们原式的const限制了*c,所以这个A选项是错误的,B选项也是一样的道理。C选项的const限制的是e,但是我们使用的也是e所以也是错误的,D选项的const既限制了*f又限制了f。所以也是错误的。

2.题2

#include <stdio.h>
int i;
void prt()
{
for (i = 5; i < 8; i++)
printf("%c", '*');
printf("\t");
}
int main()
{
for (i = 5; i <= 8; i++)
prt();
return 0;
}

上述代码的运行结果会是什么呢?

A: *** B: *** *** *** *** C: *** *** D: * * *

我们来分析一下:首先大家伙不会觉得是B选项呢?当然B选项坑定是错的,大家之所以会去选B应该是觉得main函数中for循环4次,共调用4次prt函数,所以选B但是大家可能没有看到这串代码的第一行是int i;这个代码说明什么呢?其实它是在告诉我们i是一个全局变量。当我们在第一次调用prt的时候,i在其函数中变为9后跳出,但是它出函数的时候,变量i并没有销毁,而是继续为9,再次回到main函数,发现判断式为假,跳出循环,所以只调用一次prt函数,应该选A。

到底是不是呢?我们运行看看:

3.题3

 

int main()
{
int a=3;
printf("%d\n",(a+=a-=a*a));
return 0;
}

这串代码的运行结果是什么呢?

这一题我们需要考虑运算符的优先级。这里的+=其实就是我们的a+=1等价于a=a+1,所以这里的式子就等价于a=a+(a=a-a*a),这样的话我们就先计算括号里面的式子,a=a+a=-6;所以结果为-12。

我们运行看看:

4.题4

​
int main()
{
int m=65;
int n=14;
printf("Enter m,n;");
while (m!=n) 
{
while(m>n) m=m-n; 
while(n>m) n=n-m; 
}
printf("m=%d\n",m);
return 0;
}​

我们来分析一下:其实这题比较简单大家只需要认真计算即可,我们只需要注意随着判断式的改变静茹的循环不一样,进行的式子也会不同,但是不要忘记了验算一下。

运行看看:

5.题5(首先输入要输入的整数个数 n ,然后输入 n 个整数。输出为 n 个整数中负数的个数,和所有正整数的平均值,
结果保留一位小数。)

 

#include<stdlib.h>
#include<stdio.h>
#include<assert.h>
int main()
{int n, contu1 = 0;int contu2 = 0;float sum = 0;scanf("%d ", &n);int* pt = (int*)malloc(n * sizeof(int));assert(pt);for (int i = 0; i < n; i++){scanf("%d", &pt[i]);}for (int i = 0; i < n; i++){if (*pt < 0){contu1++;}else if (*pt > 0){sum += *pt;contu2++;}pt++;}printf("%d %.1f", contu1,sum/contu2);free(pt);pt = NULL;return 0;
}

大家可以动手尝试一下,当然这不是唯一的结果。也期待收到大家的私信,和我交流一下。

谢谢

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

HTML5新婚、年会、各种聚会的现场抽奖活动(附源码)

文章目录 1.抽奖平台设计来源1.1 主界面效果1.2 抽奖效果1.3 中奖效果 2.效果和源码配置2.1 动态效果2.2 人员信息配置2.3 奖品信息配置2.4 抽奖音效配置2.5 源代码 源码下载 作者&#xff1a;xcLeigh 文章地址&#xff1a;https://blog.csdn.net/weixin_43151418/article/deta…

智能运维都有哪些工作?智能运维哪些领域好

智能运维领域包含的各项工作内容包括&#xff1a; 数据采集与管理&#xff1a;该工作内容涉及从各种设备和系统中收集数据&#xff0c;如性能数据、日志数据等&#xff0c;并对这些数据进行清洗、转换和整合。数据采集与管理为后续的分析和决策提供了可靠的数据基础。 分析与诊…

函数栈帧的创建及销毁(超详解)

目录 1.预备知识 1.1内存区的划分 1.2认识相关寄存器和汇编指令 1.2.1寄存器 1.2.2相关汇编指令 2.测试前 2.1测试代码及环境 2.2 main函数也是被其他函数调用的 3.函数栈帧的创建 4.进入函数内部 5.形参与实参 6.call/jump add函数 7.函数栈帧的销毁 7.1保存…

Nginx -2

接着上文写 5.4.7 验证模块 需要输入用户名和密码 模块名称&#xff1a;ngx_http_auth_basic_module 访问控制基于模块 ngx_http_auth_basic_module 实现&#xff0c;可以通过匹配客户端资源进行限制 语法&#xff1a; Syntax: auth_basic string | off; Default: auth_ba…

【STC8A8K64D4开发板】第2-13讲:SPI总线的应用

第2-13讲&#xff1a;SPI总线的应用 学习目的了解SPI总线的结构、特点以及4种通信模式。掌握通过SPI读、写和擦除SPI Flash W25Q128的方法以及代码编写。掌握通过SPI读、写铁电存储器FM25CL64B的方法以及代码编写。 SPI总线原理 SPI是串行外设接口(Serial Peripheral Interfa…

2024-02-23(Spark)

1.RDD的数据是过程数据 RDD之间进行相互迭代计算&#xff08;Transaction的转换&#xff09;&#xff0c;当执行开启后&#xff0c;代表老RDD的消失 RDD的数据是过程数据&#xff0c;只在处理的过程中存在&#xff0c;一旦处理完成&#xff0c;就不见了。 这个特性可以最大化…

力扣随笔之按奇偶排序数组(简单905)

思路1&#xff1a;根据双指针对撞指针的思路&#xff0c;定义一个左指针从数组前端开始遍历&#xff0c;定义一个右指针从后端开始遍历&#xff0c;这时候有四种情况 左奇右偶&#xff1a;这种情况需要将其位置交换&#xff0c;将偶数提前&#xff0c;奇数后移左奇右奇&#xf…

vue 导出,下载错误提示、blob与json数据转换

一、成功/失败 - 页面展示 失败 成功 二、成功/失败 - 接口请求/响应展示成功 2. 失败 三、解决 // 导出列表exportReceivedExcel() {if (this.tableCheckedValue) {this.form.ids this.tableCheckedValue.map(v > {return v.id || null})}this.loadingReceivedExcel …

xhell链接虚拟机失败,只需检查以下三步配置

配置一个静态ip地址 然后很重要的一步&#xff1a;修改起始地址&#xff0c;范围要包括你选定机器的地址。 成功啦

文件上传漏洞--Upload-labs--Pass10--双写绕过

一、什么是双写绕过 顾名思义&#xff0c;双写绕过就是双写文件后缀名来进行绕过&#xff0c;如&#xff1a;test.php 双写后为 test.pphphp。通常情况下双写绕过用于绕过源代码中的 str_ireplace()函数。 二、双写绕过原理 1、首先进行代码审计&#xff0c;源代码中有黑名单…

【EI会议征稿通知】第十届机械工程、材料和自动化技术国际会议(MMEAT 2024)

2024年第十届机械工程、材料和自动化技术国际会议(MMEAT 2024) 2024 10th International Conference on Mechanical Engineering,Materials and Automation Technology 2024年第十届机械工程、材料和自动化技术国际会议( MMEAT 2024) 将于2024年06月21-23日在中国武汉举行。MM…

EBR开山之作:Embedding-based Retrieval in Facebook Search

目录 简介1 模型2 特征3 索引4 全链路优化 简介 个人的随笔&#xff0c;读者需要基本了解IR领域的基本知识和概念&#xff0c;本文主要记录了我觉得该工作一些重要的点。和大家共勉。 1 模型 标准的双塔结构 1.1 损失函数 搜索相关性以pair-wise的形式进行建模&#xff0c;…

【K8s】- 查看某台宿主机的负载和运行的 pods

命令&#xff1a;$ kubectl describe node 宿主机英文名称 举例&#xff1a;$ kubectl describe node cn-beijing.127.11.1.125

基于机器学习、遥感和Penman-Monteith方程的农田蒸散发混合模型研究_刘燕_2022

基于机器学习、遥感和Penman-Monteith方程的农田蒸散发混合模型研究_刘燕_2022 摘要关键词 1 绪论2 数据与方法2.1 数据2.2 机器学习算法2.3 Penman-Monteith方程2.4 Medlyn公式2.5 模型性能评估 3 基于机器学习算法的混合模型估算农田蒸散量的评价与比较4 利用人工神经网络算法…

ico图片怎么制作(图片怎么变成ico格式)

ico图片一般命名为favicon.ico&#xff0c;主要用于作为缩略的网站标志&#xff0c;显示在浏览器的地址栏或者在标签中&#xff0c;一般用网站logo来制作。那么ico图片怎么制作&#xff1f;Logo图片怎么变成ico格式&#xff1f;下面boke112百科就跟大家说一说ico图片制作步骤&a…

spring框架介绍

spring 1.优点 1&#xff09;针对接口编程&#xff0c;解耦合 2&#xff09;aop&#xff1a;变向切面编程&#xff0c;动态增加功能 3&#xff09;方便集成框架&#xff0c;mybatis,hibernate,strust等 4&#xff09;降低j2ee接口的使用难度 2.spring是干什么的 管理bean及bean…

C语言每日一题(61)盛最多水的容器

题目链接 力扣 11 盛最多水的容器 题目描述 给定一个长度为 n 的整数数组 height 。有 n 条垂线&#xff0c;第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线&#xff0c;使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水…

性能测试的几个指标范围(CPU,内存,IO,网络)

性能测试中&#xff0c;对服务端的指标监控也是很重要的一个环节。通过对各项服务器性能指标的监控分析&#xff0c;可以定位到性能瓶颈。 后端性能指标有 CPU&#xff0c;内存&#xff0c;网络&#xff0c;jvm&#xff0c;I/O 等等 分析思路 整体系统 CPU 利用率 内存利用…

大模型综述总结--第一部分

1 目录 本文是学习https://github.com/le-wei/LLMSurvey/blob/main/assets/LLM_Survey_Chinese.pdf的总结&#xff0c;仅供学习&#xff0c;侵权联系就删 目录如下图 本次只总结一部分&#xff0c;刚学习有错请指出&#xff0c;VX关注晓理紫&#xff0c;关注后续。 2、概述…

Unicode转换 [ASIS 2019]Unicorn shop1

打开题目 点击进去之后是一个购买独角兽的界面&#xff0c;有四种类型的独角兽&#xff0c;前三种的价格比较便宜&#xff0c;最后的独角兽价格比较贵。 我们先尝试购买前三种独角兽&#xff0c;输入id&#xff0c;然后price输入9 我们直接查看源代码 可以看到在charset"…