c语言每日一练(15)

前言:
每日一练系列,每一期都包含5道选择题,2道编程题,博主会尽可能详细地进行讲解,令初学者也能听的清晰。每日一练系列会持续更新,上学期间将看学业情况更新。

 五道选择题:

1、程序运行的结果为()

#include<stdio.h>
int main()
{
int pad = 0; int pAd = 0;
int sum = 5;
pad = 5;
pAd = (sum++,pAd++, ++pAd);
printf("%d %d\n", pAd,pad);
}

A、1,5      B、2,5      C、1,6     D、2,6

解析:首先定义sum和pad为5,接着是一串逗号表达式,从左往右进行,最后的值为最后一个表达式,我们可以走一下,sum++,令sum为6,pAd++,令pAd=1(注意:这里不用什么前置后置,你可以把逗号表达式之间的表达式看作一个单独的区块,计算机会执行完这个区块的内容才去执行别的),最后一步可以看作pAd=(++pAd),独立区块++pAd先执行,令pAd为2,,pad一直为5,所以最后打印出来的结果为,2,5,选B

前置后置结果一致 ,证明可以看作独立区块

 

 2、程序运行的结果为()

#include <stdio.h>
int sum(int a)
{int c = 0;static int b = 3;c += 1;b += 2;return (a + b + c);
}
int main()
{int i;int a = 2;for (i = 0; i < 5; i++) { printf("%d ", sum(a)); } 
} 

A、8 8 8 8 8 8                                                                                                                                    B、 9 11 13 15 17                                                                                                                              C、10 12 14 16 18 20                                                                                                                        D、8 10 12 14 16 18

解析:观察sum可以发现,它返回的值为a+b+c的和,而sum没有对a进行额外操作,所以每次a都是2;c每次进来都会被重定义为0,再c+=1,所以c每次都为1,再说下b,b是static类型的变量,也就是说b的生命域是全局的且它只会被定义一次,第一次b被定义为3,接着b+=2令b为5,第二次b+=2,令b为7,第三次,b为9,第四次b为11,第五次b为13,而a+c始终为3,所以最后打印的结果为8 10 12 14 16 18,选D

 

3、关于if语句说法正确是( )
A、if语句后面只能跟一条语句
B、if语句中0表示假,1表示真,其他无意义
C、if语句时一种分支语句,可以实现单分支,也可以实现多分支
D、else语句总是和它的对其的if语句匹配 

解析:A选项错误,if后面可以根很多条语句,有{}即可。B选项错误,太片面了,c语言中非0的语句均为真。C选项正确,else if就是多分支。D选项错误,没有括号的情况默认和最近的匹配。

4、程序运行的结果为()

#include<stdio.h>
int func(int a)
{int b;switch (a){case 1: b = 30;case 2: b = 20;case 3: b = 16;default: b = 0;}return b;
}
int main()
{int x=3printf("%d",func(x));
}

A、 30    B、20    C、16    D、0

解析:switch中要如果没有break中止就会顺着走下去,这道题就是这样,它的case语句中均没有break,那么它就会顺着走下去,一直走到最后的b=0,所以最后返回的值也是0,选D

 5、程序运行的结果为()

#include <stdio.h>
int main()
{int a = 0, b = 0;// for循环将a和b的初始值均设置为1for (a = 1, b = 1; a <= 100; a++){if (b >= 20) break;if (b % 3 == 1){b = b + 3;continue;}b = b-5;}printf("%d\n", a);return 0;
}

A、7   B、8   C、22   D、死循环 

解析:观察代码可以发现主体部分是个循环,目标是打印出a的值,而a的值只会在循环结束时才会++,那么不难看出,完整进行循环的次数+1(为什么+1,因为跳出循环前a先++之后才执行break)就是a的值,b>=20会跳出循环,而b若%3==1就会增3,那么b就会一直加3知道>=20,可以看出加7次3,b就会>=20,所以完整的循环进行了7次,所以最后a为8,选B 

 

编程题1:

单词分析 - 蓝桥云课 (lanqiao.cn)

思路:只需判断小写字母且一共有26个字母,所以创建一个长度为26的整型数组来储存每个字母出现的次数,接着比较得出最大即可,需要注意的一点就是记得储存对应的下标 

int main(int argc, char *argv[])
//这个参数不用看它,你就把它当作没有即可
{
int count[26]={0};
//分别储存26个字母的出现次数
char ch=0;
while((ch=getchar())!='\n')
{count[ch-'a']++;//对应字母-'a'可以得到对应的下标
}
int i=0;int max=0;int max_i=0;
for(i=0;i<26;i++)
{if(count[i]>max){max=count[i];//储存最多出现次数max_i=i;//下标也储存}
}
printf("%c\n%d",max_i+'a',max);
}

编程题2: 

门牌制作 - 蓝桥云课 (lanqiao.cn)

 

提示:%10操作可以将数的最后一位取出,/10操作可以把数的最后一位删除 

#include <stdio.h>
int main()
{int i=0;int count=0;for(i=1;i<=2020;i++){int number=i;while(number){if(number%10==2){count++;}number/=10;}}printf("%d",count);return 0;
}

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

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

相关文章

【python绘图—colorbar操作学习】

文章目录 Colorbar的作用Colorbar的操作截取cmap拼接cmap双刻度列colorbar 引用 Colorbar的作用 Colorbar&#xff08;颜色条&#xff09;在绘图中的作用非常重要&#xff0c;它主要用于以下几个方面&#xff1a; 表示数据范围&#xff1a; Colorbar可以显示图中的颜色映射范围…

嵌入式Linux驱动开发(I2C专题)(五)

I2C系统驱动程序模型 参考资料&#xff1a; Linux内核文档: Documentation\i2c\instantiating-devices.rstDocumentation\i2c\writing-clients.rst Linux内核驱动程序示例: drivers/eeprom/at24.c 1. I2C驱动程序的层次 I2C Core就是I2C核心层&#xff0c;它的作用&#xf…

一同走进Linux的“基操”世界

一同走进Linux的“基操”世界 众所周知&#xff0c;Linux是一个开源、免费的操作系统&#xff0c;其稳定性、安全性、处理多并发能力已经得到业界的认可&#xff0c;可以说&#xff0c;Linux现在就像是一个“当红明星”&#xff0c;其实力赢得了大多数人的赞同&#xff0c;流量…

C++红黑树

&#x1f4df;作者主页&#xff1a;慢热的陕西人 &#x1f334;专栏链接&#xff1a;C &#x1f4e3;欢迎各位大佬&#x1f44d;点赞&#x1f525;关注&#x1f693;收藏&#xff0c;&#x1f349;留言 本博客主要内容讲解了红黑树并且使用红黑树模拟实现set和map 文章目录 红黑…

嵌入式学习笔记(25)串口通信的基本原理

三根通信线&#xff1a;Tx Rx GND &#xff08;1&#xff09;任何通信都要有信息作为传输载体&#xff0c;或者有线的或则无线的。 &#xff08;2&#xff09;串口通信时有线通信&#xff0c;是通过串口线来通信的。 &#xff08;3&#xff09;串口通信最少需要2根&#xff…

基于人体呼出气体的电子鼻系统的设计与实现

基于人体呼出气体的电子鼻系统的设计与实现 摘要 电子鼻技术是通过模式识别技术对传感器采集的人体呼出气体进行分类训练的方法。本文研究实现的电子鼻系统包括下面几个部分:首先搭建以Arduino为控制核心的气路采集装置&#xff0c;包括MOS传感器和双阀储气袋构建的传感器阵列和…

在网站标题中使用可以让搜索引擎更容易(识别网站的主要内容)

随着互联网的飞速发展&#xff0c;越来越多的企业开始重视网站的优化。优化网站排名不仅可以增加曝光率和点击率&#xff0c;也可以提高品牌知名度和销售额。本文将从关键字优化方案入手&#xff0c;为大家详细介绍如何提升网站排名。 什么是关键字&#xff1f; 关键字是指用…

如何在Windows 10/11中重置网络,以及重置后的注意事项有哪些

本文介绍如何在Windows 10和Windows 11中重置网络设置。 如何重置Windows 10网络设置 在Windows10中使用网络重置实用程序相当简单。 一、进入“开始”菜单>“设置”,然后选择“网络和Internet”。 二、在左侧导航窗格中,选择“状态”以确保你正在查看网络状态窗口。然…

深入解析 Nginx 代理配置:从 server 块到上游服务器的全面指南

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f405;&#x1f43e;猫头虎建议程序员必备技术栈一览表&#x1f4d6;&#xff1a; &#x1f6e0;️ 全栈技术 Full Stack: &#x1f4da…

使用CFimagehost源码搭建免费的PHP图片托管私人图床,无需数据库支持

文章目录 1.前言2. CFImagehost网站搭建2.1 CFImagehost下载和安装2.2 CFImagehost网页测试2.3 cpolar的安装和注册 3.本地网页发布3.1 Cpolar临时数据隧道3.2 Cpolar稳定隧道&#xff08;云端设置&#xff09;3.3.Cpolar稳定隧道&#xff08;本地设置&#xff09; 4.公网访问测…

Kubernetes(K8S)集群部署

目录 一、创建3台虚拟机 二、为每台虚拟机安装Docker 三、安装kubelet 3.1 安装要求 3.2 为每台服务器完成前置设置 3.3 为每台服务器安装kubelet、kubeadm、kubectl 四、使用kubeadm引导集群 4.1 master服务器 4.2 node1、node2服务器 4.3 初始化主节点 4.4 work节…

学习视觉SLAM需要会些什么?

前言 SLAM是现阶段很多研究生的研究方向&#xff0c;我也是作为一个即将步入视觉SLAM的研究生&#xff0c;网上对于SLAM的介绍很多&#xff0c;但很少有人完整系统的告诉你学习视觉SLAM该有那些基础&#xff0c;那么此贴将告诉你学习SLAM你要有那些方面的基础。 文章目录 前言…

【AI】机器学习——线性模型(线性回归)

线性模型既能体现出重要的基本思想&#xff0c;又能构造出功能更加强大的非线性模型 参考&#xff1a;唐宇迪机器学习课程 文章目录 3.1 线性模型3.1.1 数据3.1.2 目标/应用 3.2 线性回归3.2.1 回归模型历史3.2.2 回归分析研究内容回归分析步骤 3.2.3 回归分析分类3.2.4 回归模…

Codeforces Round 895 (Div. 3) A ~ F

Dashboard - Codeforces Round 895 (Div. 3) - Codeforces A 问多少次能使a 和 b相等&#xff0c;就是abs(a - b) / 2除c向上取整&#xff0c;也就是abs(a - b)除2c向上取整。 #include<bits/stdc.h> #define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); #de…

学习网络编程No.6【将服务器日志和守护进程化】

引言&#xff1a; 北京时间&#xff1a;2023/9/1/21:15&#xff0c;下午刚更新完博客&#xff0c;同理再接再厉&#xff0c;这样整天不需要干什么&#xff0c;除了玩手机的日子不多了&#xff0c;马上就要开学&#xff0c;每天需要签到签退的日子就要来临&#xff0c;烦躁&…

浅谈STL|STL函数对象篇

一.函数对象概念 概念: 重载函数调用操作符的类&#xff0c;其对象常称为函数对象 函数对象使用重载的()时&#xff0c;行为类似函数调用&#xff0c;也叫仿函数 本质: 函数对象(仿函数)是一个类&#xff0c;不是一个函数 特点 函数对象在使用时&#xff0c;可以像普通函数那…

Linux提权

shell分本地shell 和 webshell 有些提权方式只能本地shell使用 常见内核漏洞查找脚本以及利用 环境变量提权 suid https://www.cnblogs.com/banglook/archive/2022/03/17/16019354.html linux特殊命令https://www.secrss.com/articles/28493 什么是suid SUID (Set UID)是Li…

「中秋来袭」没想到,用OpenCV竟能画出这么漂亮的月饼「附源码」

一、前言 中秋佳节即将来临&#xff0c;作为传统的中国节日之一&#xff0c;人们除了品尝美味的月饼、赏月外&#xff0c;还喜欢通过绘画来表达对这个节日的喜悦和祝福。而如今&#xff0c;随着科技的不断发展&#xff0c;竟然可以借助计算机视觉库OpenCV来绘制精美的月饼和可…

Redis的数据持久化方案

目录 前言 RDB方式 概述&#xff1a; 1.RDB手动 &#xff12;.RDB自动 RDB优缺点 AOF方式 概述 AOF写数据的三种策略 AOF相关配置 AOF重写 AOF重写方式 手动重写 bgrewriteaof 自动重写 总结 前言 Redis是一个内存型数据库&#xff0c;也就是说如果不将内存中的…

被删除并且被回收站清空的文件如何找回

文件的意外删除和回收站清空是许多用户面临的普遍问题。这种情况下&#xff0c;很多人会感到无助和焦虑&#xff0c;担心自己的重要文件永远丢失。然而&#xff0c;幸运的是&#xff0c;依然存在一些有效的方法能够帮助我们找回被删除并且被回收站清空的文件。 ▌被删除文件在…