
C语言作业
文章平均质量分 54
C语言作业题:选择题、编程题
小wanga
须知少时凌云志,曾许人间第一流
展开
-
中断的输入和悬起行为
当中断输入脚(通常是低电平有效或高电平有效)被assert(即变为有效电平)时,如果中断使能位是设置的,中断控制器会将该中断请求标记为悬起状态。如果中断的悬起状态在中断服务例程开始执行之前被清除,那么中断请求将不再被处理,相当于中断被取消。中断服务例程在执行过程中,可以通过软件操作来重新设置中断的悬起位,从而实现中断的重新悬起。解析:中断的输入和悬起行为是中断处理中重要的概念。B. 如果在某个中断得到响应之前,其悬起状态被清除了,则中断取消。B、如果在某个中断得到响应之前,其悬起状态被清除了,则中断取消。原创 2024-06-22 21:24:18 · 1382 阅读 · 1 评论 -
【C语言】字符串逆序:写一个函数,可以逆序一个字符串的内容
【代码】【C语言】字符串逆序:写一个函数,可以逆序一个字符串的内容。原创 2024-06-11 13:34:43 · 559 阅读 · 0 评论 -
【C语言】写一个宏,可以将一个整数的二进制位的奇数位和偶数位交换
(3)则将(1)步骤得到的00000000000000000000000000000000左移一位,此时因为奇数被保留,所以我们左移一位那么奇数位就变成偶数位,得到00000000000000000000000000000000。步骤(2)的偶数位保留,奇数位变为0只需要按位与(&)上10101010101010101010101010101010转成16进制就是:0xaaaaaaaa。(2)将00000000000000000000000000001010的偶数位保留,奇数位变为0。原创 2024-06-10 16:14:56 · 659 阅读 · 0 评论 -
【C语言】宏offsetof的模拟实现(计算结构体中某变量相对于首地址的偏移)
我们假设结构体起始地址就是0,这样其成员的地址取出来再强制类型转换为int便可以表示结构体中某个成员相对于起始位置的偏移量,这是一种很巧妙的思考方式,即可实现宏 offsetof 的模拟实现。首先我们应该特别留意 : offsetof 是一个宏,并非是一个函数!参数:第一个是结构体类型名称,第二个是结构体成员名。引用的头文件:<stddef.h>返回类型:size_t无符号整形。原创 2024-06-10 14:59:14 · 1440 阅读 · 0 评论 -
2024-06-04_翻译环境等_作业
需要注意的是,链接阶段只会链接调用了的函数/全局变量,如果存在一个不存在实体的声明(函数声明、全局变量的外部声明),但没有被调用,依然是可以正常编译执行的。经过预处理,会产生一个没有头文件(都已经被展开了)、宏定义(都已经替换了),没有条件编译指令(该屏蔽的都屏蔽掉了),没有特殊符号的输出文件,这个文件的含义同原本的文件无异,只是内容上有所不同。#define执行查找替换,#if可以区分是否编译,#undef可以反定义,也就是取消#define宏定义的东西,#end并没有这玩意,只有#endif,故选D。原创 2024-06-05 14:46:17 · 421 阅读 · 0 评论 -
2024-06-02_scanf/printf、fscanf/fprintf、sscanf/spintf对比等_作业
使用所学文件操作,在当前目录下放一个文件data.txt,写一个程序,将data.txt文件拷贝一份,生成data_copy.txt文件。说明:feof函数是在文件读取结束后,判断文件读取结束的原因的,是读取失败结束,还是遇到文件尾结束。D选项中,sprintf是把格式化的数据写到字符串中,与输出流无关。B.feof函数是在文件读取结束的时候,检测是否是因为遇到了文件结束标志EOF,而读取结束。从data.txt中读取数据存放到data_copy.txt文件中,直到文件结束。3.作业标题(2809)原创 2024-06-04 21:19:38 · 327 阅读 · 1 评论 -
2024-05-27_枚举作业
AB是函数的基本功能,C选项比较特殊,malloc(0)是允许的,也会返回一个指针,只是没有空间所以不可使用而已。而位顺序类似小端,低地址在低处,所以39是低地址,在低位,38在高位,所以是3839,故选A。D:枚举是一种类型,有类型检查,但是#define定义的符号没有类型检查,就是简单的替换,使用虽然方便,但是也很容易导致问题,所以更加推荐使用枚举常量。解析:选择B项,枚举默认从0开始,所以X1是0,故Y1是1,给了数字后会根据数字向后推,那么Z1是255,A1是256,所以B1是257,故选B。原创 2024-06-02 16:50:24 · 1249 阅读 · 0 评论 -
2024-05-29_二进制文件和文本文件作业
f系列的输入输出函数都是作用于所有流的的,所以AC没问题,D的表述也没问题,fread做的就是二进制的活。B选项中,文件名可以不包含后缀名。程序只通过只读方式打开了一个文件,所以A排除,文中使用的fgetc,且没有’ ‘和’\n’相关的统计,所以排除CD,直接选B。C.将内存中的数据转化成ASCII码值的形式,并以ASCII码值的形式存储的文件就是文本文件。B.fopen打开文件的方式是"w",如果文件不存在,则创建该文件,打开成功。A.fopen打开文件的方式是"r",如果文件不存在,则打开文件失败。原创 2024-06-01 10:04:22 · 2031 阅读 · 0 评论 -
扫雷游戏(数组+函数深度结合)
使用控制台实现扫雷游戏;实现菜单和是否进行游戏的函数;棋盘大小:9*9个格子;随机布雷:10个;排查雷:如果该位置不是雷,就显示周围八个格子的雷的数量;如果该位置是雷,则炸死,游戏结束;如果把除了雷之外的其他格子全部找到,则游戏结束。原创 2024-04-21 11:44:50 · 352 阅读 · 2 评论 -
(C语言)最简单方法-求最大公约数
求最大公约数:最暴力无脑的方法:直接暴力枚举,直到出现一个能同时整除两数的值。 原创 2024-04-09 22:20:34 · 346 阅读 · 1 评论