c语言经典测试题5

news2025/1/17 3:47:07

1.题1

t=0;
while(printf("*"))
{
t++;
if (t<3)
break;
}

关于上述代码描述正确的是?

A: 其中循环控制表达式与0等价 B: 其中循环控制表达式与'0'等价

C: 其中循环控制表达式是不合法的     D: 以上说法都不对

我们来分析一下:printf的返回值为正确打印的字符数,为一个整数,如果输出错误则返回一个负数。我们看上述while循环语句中的判断式它的返回值应该为1,因为打印了一个字符,我们来看选项,A选项说与0等价,如果判断式为0的话,则不会进入while循环。B选项中等价为‘0’,我们知道字符‘0’的ASCLL码值为48,将会使代码进入死循环,和1的效果相同,所以B选项正确。注意这里说的死循环只是想说明判断式恒正。

2.题2

#include <stdio.h>
int main()
{
	char ch;
	while ((ch = getchar()) != '\n')
	{
		if (ch % 2 != 0 && (ch >= 'a' && ch <= 'z'))
			ch = ch - 'a' + 'A';
		putchar(ch);
	}
	printf("\n");
	return 0;
}

如果我们输入1abcedf2df<回车>,那么结果会是啥呢?

我们来分析一下:这个代码的while循环的判断式是getchar输入的一个字符不为‘\n’就将其值赋给ch。if条件是ch%2后不等于0,且ch为大写字母,我们就会将其改写为小写字母,这个%2不等于0其实就是说字符得ASCLL码值是奇数。所以我们可以得到,a、c、e会被更改为大写。我们来运行看看:

3.题3

A: 只能在循环体内和switch语句体内使用break语句

B: 当break出现在循环体中的switch语句体内时,其作用是跳出该switch语句体,并中止循环体的执行

C: continue语句的作用是:在执行完本次循环体中剩余语句后,中止循环

D: 在while语句和do-while语句中无法使用continue语句

上述描述正确的是?

A是正确的,B中的break只能跳出switch语句,并不能终止循环语句,如果想达到B选项所描述的结果,我们可以使用return来结束程序。continue的作用是跳过下面的语句,直接来到该循环的判断部分。continue在三种循环中都可以使用,如果大家不太了解可以去看我之前的篇章《循环语句》。

4.题4

for(int i = 0 ; i || i++ < 5;);

上述代码会循环多少次呢?

可能大家在看到这道题的时候会有点懵,没关系我们先来分析一下:for循环直接进入后,第一次i为0,然后进入调整部分,我们发现该for循环没有调整部分,就会直接进入判断部分,这里有一个逻辑或运算符,如果前项为真,后项就不再计算,如果前项为假就计算后项,结果就为整个表达式的结果。我们发现i为0时为假,执行i++,i变为1为整个表达式的结果,此时判断式就更改为1<5恒成立了,有些人就会问了那i++就不会执行了吗?确实是的,因为没有调整,只有判断式,而且判断式的结果已经定下。所以该循环会陷入死循环。

5.题5

集合 s 包含从 1 到 n 的整数。不幸的是,因为数据错误,导致集合里面某一个数字复制了成了集合里面的另外一个数字的值,导致集合 丢失了一个数字 并且 有一个数字重复 。给定一个数组 nums 代表了集合 S 发生错误后的结果。请你找出重复出现的整数,再找到丢失的整数,将它们以数组的形式返回。

int* findErrorNums(int n, int* arr,int *returnnums)
{
	
	int* arr1 = arr;
	int* arr2 = arr+1;
	while (*arr2)
	{
		if (*arr1 == *arr2)
		{
			*arr2 += 1;
			break;
		}
		arr1++;
		arr2++;
	}
	for (int i = 0; i < 2; i++)
	{
		returnnums[i] = *arr1;
		arr1++;
	}
	return returnnums;
}
#include<stdlib.h>
int main()
{
	int n = 0;
	scanf("%d", &n);
	int* arr = (int*)calloc(n + 1, sizeof(int));
	int* pu = (int*)malloc(2 * sizeof(int));
	for (int i = 0; i < n; i++)
	{
		scanf("%d",&arr[i]);
	}
	
	int*ret=findErrorNums(n,arr,pu);
	for (int i = 0; i < 2; i++)
	{
		printf("%d ", ret[i]);
	}
	return 0;
}

大家可以多动手试试,我这个代码其实不太好,因为我设计的时候没有将输入放在函数中,而是将其放在main函数中。所以期待大家的改进。

 

谢谢

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

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

相关文章

一个具有强大PDF处理能力的.Net开源项目

PDF具有跨平台、可读性强、不可修改性、无需特定阅读软件、内容安全等好处&#xff0c;在工作中经常都会用到。 所以&#xff0c;我们在项目开发中&#xff0c;经常需要生成PDF的文件&#xff0c;或者把Html、Xml等文件转化为PDF格式。 今天给大家推荐一个具有PDF处理能力的.…

消息队列-RabbitMQ:延迟队列、rabbitmq 插件方式实现延迟队列、整合SpringBoot

十六、延迟队列 1、延迟队列概念 延时队列内部是有序的&#xff0c;最重要的特性就体现在它的延时属性上&#xff0c;延时队列中的元素是希望在指定时间到了以后或之前取出和处理&#xff0c;简单来说&#xff0c;延时队列就是用来存放需要在指定时间被处理的元素的队列。 延…

20240113----重返学习-`nginx/conf/nginx.conf`的https证书配置说明

20240113----重返学习-nginx/conf/nginx.conf的https证书配置说明 文件说明 不同域名的多虚拟主机配置 server {listen 443 ssl;#在443端口上监听SSL/TLS流量;server_name localhost;#指定服务器名称&#xff0c;应该与域名匹配;ssl_certificate fangchaoduan.com.pem;#指定SS…

数据安全之路:深入了解MySQL的行锁与表锁机制

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 数据安全之路&#xff1a;深入了解MySQL的行锁与表锁机制 前言基础innodb中锁与索引的关系如何避免表锁 前言 在当今数据密集的应用中&#xff0c;数据库锁成为了确保数据一致性和并发操作的关键工具…

Java 拦截器深入了解学习

Java 拦截器深入了解学习 命运总是不如愿。 但往往是在无数的痛苦中&#xff0c;在重重的矛盾和艰难中&#xff0c;才使人成熟起来&#xff0c;坚强起来;虽然这些东西在实际感受中给人带来的并不都是欢乐。 ————路遥《平凡的世界》 什么是拦截器&#xff08;Interceptor&am…

【C++】C++对C语言的关系,拓展及命名空间的使用

文章目录 &#x1f4dd;C简述C融合了3种不同的编程方式&#xff1a;C和C语言关系是啥呢&#xff1f;C标准 &#x1f320;C应用&#x1f320;C语言优点第一个C程序 &#x1f320;命名空间&#x1f320;命名空间的使用命名空间的定义 &#x1f320;怎么使用命名空间中的内容呢&am…

强化学习入门到不想放弃-3

第三节我们主要讲一下SARSA模型 上节课的链接:强化学习入门到不想放弃-2 (qq.com) 有模型的概念:简单理解,上节课我讲的就是有模型,就是可以开上帝视角,知道全局地图 无模型的概念: 打CS,但是看不到地图的情况,全凭自己探索 今天的讲解环境还是和上节课一样,如下…

Movelt使用笔记-Movelt Setup Assistant

目录 Setup Assistant配置1 Start 加载urdf模型3 Virtual joints 虚拟关节5 Robot Poses 机器人位姿7 Passive Joints 被动关节8 Controllers 控制器9 Simulation 仿真10 3D Perception 3D感知11 Author Information 作者信息12 Configuration Files 配置文件启动MoveIt!Setup…

【Python笔记-设计模式】前端控制器模式

一、说明 常作为MVC&#xff08;Model-View-Controller&#xff09;模式的一部分&#xff0c;用来处理用户请求并将其分发给相应的处理程序&#xff08;即路由匹配&#xff09;。 (一) 解决问题 将请求的处理流程集中管理&#xff0c;统一处理所有的请求 (二) 使用场景 需…

学习或从事鸿蒙开发工作,有学历要求吗?

目前安卓有2,000万的开发者。本科及以上学历占比为35%&#xff1b;iOS有2,400万开发者&#xff0c;本科及以上学历占比为40% 绝大多数的前端开发者都是大专及以下学历&#xff0c;在2023年华为开发者大会上余承东透露华为的开发者目前有200万&#xff0c;但鸿蒙开发者统计的数据…

3.WEB渗透测试-前置基础知识-快速搭建渗透环境(上)

上一个内容&#xff1a;2.WEB渗透测试-前置基础知识-web基础知识和操作系统-CSDN博客 1.安装虚拟机系统 linux Kali官网下载地址&#xff1a; https://www.kali.org/get-kali/#kali-bare-metal Centos官网下载地址&#xff1a; https://www.centos.org/download/ Deepin官网下…

每个学计算机同学都应该有个创业梦

推荐计算机专业必看的两部电影 经典记录片电影《社交网络》推荐理由豆瓣评分电影简介 德国犯罪喜剧《如何在网上卖迷幻药》推荐理由剧情简介 两部电影主角对比 经典记录片电影《社交网络》 纪录扎克伯格&#xff0c;7年时间&#xff0c;从一名大学生摇身变成亿万富翁的故事 推荐…

解读OpenAI Sora文生视频技术原理

OpenAI Sora文生视频&#xff08;图像看作单帧视频&#xff09;一放出就炸翻整个AI 圈&#xff0c;也是ChatGPT掀起GenAI热潮时隔一年后&#xff0c;OpenAI再次史诗级的更新。OpenAI 随后公布的技术综述[文献1]&#xff0c;难掩其勃勃雄心&#xff1a;视频生成模型作为世界模拟…

Matlab自学笔记二十七:详解格式化文本sprintf各参数设置方法

1.一个程序引例 上篇文章已经介绍了格式化文本的初步应用&#xff0c;程序示例如下&#xff1a; sprintf(|%f\n|%.2f\n|%8.2f,pi*ones(1,3)) 2.格式化操作符各字段的含义解析 格式化操作符可以有六个字段&#xff0c;只有主字符%和转换格式是必需的&#xff0c;其他都是可选…

CSS3中盒子居中

&#xff08;1&#xff09;利用定位&#xff08;子绝父相&#xff09;、margin-left、和margin-top实现 &#xff08;2&#xff09;利用定位&#xff08;子绝父相&#xff09;、transfrom属性实现 &#xff08;3&#xff09;利用flex布局实现盒子居中

中科大计网学习记录笔记(十五):可靠数据传输的原理

前前言&#xff1a;看过本节的朋友应该都知道本节长度长的吓人&#xff0c;但其实内容含量和之前的差不多&#xff0c;老师在本节课举的例子和解释比较多&#xff0c;所以大家坚持看完是一定可以理解透彻的。本节课大部分是在提出问题和解决问题&#xff0c;先明确出现的问题是…

Ubuntu22.04和Windows10双系统安装

概要 本篇演示Ubuntu22.04和Windows10双系统的安装。先安装Ubuntu22.04&#xff0c;再安装Windows10。 一、说明 1、电脑 笔者的电脑品牌是acer(宏碁/宏基) 电脑开机按F2进入BIOS 电脑开机按F12进入Boot Manager 2、U盘启动盘 需要用到两个U盘启动盘 &#xff08;1&a…

IO进程线程day7作业

使用消息队列完成两个进程间相互通信 代码&#xff1a; msgsnd.c #include<myhead.h>//定义消息类型 struct msgbuf {long mtype;char mtext[1024]; };//宏表示消息正文大小 #define MSGSIZE sizeof(struct msgbuf)-sizeof(long)int main(int argc, const char *argv[…

【Java程序员面试专栏 数据结构】四 高频面试算法题:哈希表

一轮的算法训练完成后,对相关的题目有了一个初步理解了,接下来进行专题训练,以下这些题目就是汇总的高频题目,一个O(1)查找的利器哈希表,所以放到一篇Blog中集中练习 题目关键字解题思路时间空间两数之和辅助哈希使用map存储出现过的值,key为值大小,value为下标位置,…

C++-带你走进多态(1)

1. 多态的概念 1.1 概念 多态的概念&#xff1a;通俗来说&#xff0c;就是多种形态&#xff0c;具体点就是去完成某个行为&#xff0c;当不同的对象去完成时会产生出不同的状态。 举个栗子&#xff1a;比如买票这个行为&#xff0c;当普通人买票时&#xff0c;是全价买票&am…