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.

相关推荐
吴声子夜歌6 小时前
Java——类、对象及方法(一)
java·开发语言
程序员夏洛6 小时前
Redis 的持久化机制有哪些?
java·数据库·redis
凯尔萨厮7 小时前
Java学习笔记十(注解)
java·笔记·学习
钱栈up7 小时前
VSCode 调试多模块 Maven + Spring Boot 后端:从启动失败到一次跑通
java·spring boot·maven
uoKent7 小时前
c++中new和malloc的区别
java·jvm·c++
十五喵源码网7 小时前
基于springboot2+vue2的疾病防控综合系统
java·毕业设计·springboot·论文笔记
xiaokcehui7 小时前
地球物理大地测量学计算系列之十七局部重力场SRBF逼近及其性能指标测评
人工智能·算法·机器学习
砚底藏山河7 小时前
【量化纯GET实战 #11】移动均线 MA:5 日 20 日 60 日怎么算怎么用
java·python·金融·maven
一只小闪闪7 小时前
easy-trans java数据通用翻译框架v2.3.0
java·后端·架构
2601_962055817 小时前
Spring全部注解
java·后端·spring