c语言的一些题(2024_1_7)

变种水仙花数

复制代码
#include <stdio.h>

int main() {
    int a = 10000;

    for (; a < 100000; a++)
    {
        if ((a / 10000) * (a % 10000) + (a / 1000) * (a % 1000) + (a / 100) * (a % 100) + (a / 10) * (a % 10) == a)
            printf("%d ", a);
    }
    return 0;
}
//变种水仙花数 - Lily Number:把任意的数字,从中间拆分成两个数字,比如1461 可以拆分成(1和461), (14和61), (146和1), 如果所有拆分后的乘积之和等于自身,则是一个Lily Number。
//
//例如:
//
//655 = 6 * 55 + 65 * 5
//
//1461 = 1 * 461 + 14 * 61 + 146 * 1
//
//求出 5位数中的所有 Lily Number。

该题太简单,不叙述,展示下代码就行。

序列中删除指定数字

复制代码
#include <stdio.h>

int main() {
    int arr[50] = { 0 };
    int a;
    scanf("%d", &a);
    for (int b = 0; b < a; b++)
    {
        scanf("%d", &arr[b]);
    }
    int c = 0;
    scanf("%d", &c);
    for (int b = 0; b < 50; b++) {
        if (arr[b] == c)
            arr[b] = 0;
    }
    for (int b = 0; b < 50; b++)
    {
        if (arr[b] != 0)
            printf("%d ", arr[b]);
    }
    return 0;
}
//有一个整数序列(可能有重复的整数),现删除指定的某一个整数,输出删除指定数字之后的序列,序列中未被删除数字的前后位置没有发生改变。
//
//数据范围:序列长度和序列中的值都满足 1≤n≤50
//输入描述:
//第一行输入一个整数(0≤N≤50)。
//
//第二行输入N个整数,输入用空格分隔的N个整数。
//
//第三行输入想要进行删除的一个整数。
//
//输出描述:
//输出为一行,删除指定数字之后的序列。

其过程较简单,不叙述,就展示代码。

联合体判断大小端

复制代码
union act{
	short a;
	char  b;
}c = {0};

int main() {
	c.a = 1;
	printf("%d", c.b);//小端就是1,大端就是0

}

其过程较简单,不叙述,就展示代码

我们用的是vs系统,所以vs系统是小端存储模式(大部分系统都是小端存储模式)

求结构体内存 (define的认知引发错误)

这题之所以错误是对#define认知的不清楚,define执行的是查找替换,并不会计算2+3,单纯是把2+3换成max_size,而不是max_size为5.所以在最后计算时max_size换回原来的2+3就变为3*2+3=9,答案为D.

该题struct为位段类型,其中的:和数字之所以没显示其实是把 :8隐藏了。(之前一篇文章结构体位段中讲过)

数据在内存中的存储(位段题)

其中涉及了位段,但重点不是这,是当我们将位段中的数修改为其他数时,要注意一个字节内部的比特位永远是高进制在左边,低进制在右边。所以在修改时方向不要弄反,高进制比特位本该在左边,却在右边,所以一个字节内部比特位顺序一定不能变(两个字节之间顺序可以改变)

对于这个知识点,之前在结构体文章中的数据在内存中的存放额外知识点里讲过(更详细)。

对于这个求结果其实挺简单的,上面有解析,就不说了

枚举的题

在之前枚举的知识点中讲过 在枚举常量赋完初值后它的下一个枚举常量的值则是以上一个枚举常量的值为基础加一的。(切记要记住) 所以答案应该为 1,257.

相关推荐
Rabitebla6 分钟前
【Linux】 权限篇(三):深入理解 umask 位运算与粘滞位的设计思想
java·linux·服务器·c++·笔记·学习
Pin_Qing29 分钟前
缓存能活多久,现在是个要算的参数
java·大数据·开发语言·人工智能·程序人生
jyOverQ33 分钟前
从零开始学 RocketMQ(四):集群部署、消息存储与高可用【保姆级教程】
java·rocketmq·java-rocketmq
Cccp.12336 分钟前
【leetcode】(十四)从暴力递归到动态规划
数据结构·算法·leetcode·动态规划
小裕哥略帅39 分钟前
行级数据权限控制@DataPermission
java·开发语言
ManageEngineITSM1 小时前
ITSM系统如何与企业微信、钉钉、飞书集成?提升工单处理效率的方法
java·大数据·开发语言·钉钉·企业微信·变更管理
旖旎夜光1 小时前
LeetCode 215: 数组中的第K个最大元素 (快速排序) —— 题解
c++·学习·算法·leetcode·力控
技术胖1 小时前
奎爷巡演 AIGC 视频教程 文档
算法
德彪稳坐倒骑驴2 小时前
Leetcode力扣刷题记录与题解
算法·leetcode·职场和发展
lzhdim8 小时前
AI的分类
人工智能·算法·机器学习·分类·数据挖掘