我用c语言把何同学的代码跑起来了

  • 原版代码
  • 代码分析
  • 代码实现
  • 代码执行结果

免责声明:仅供娱乐,只是展示这段代码在理论上是可行的。

原版代码

首先,先来看下视频中何同学的这两段代码:

代码分析

首先呢,根据图片中的这两段代码,我猜测他可能是想获取数组中第0,1,5,6,10,51,56,58,64号下标的值。

了解到这个目的后,就可以根据这个需求进行代码编写了。

 forceCon[whichKey - 1] = force
void littleFingerForce(void) {powerCon(1 | 2 | 6 | 7 | 11 | 52 | 57 | 58 | 65, 10);
}

代码实现

  • 这段代码是根据B站up主:内田补水彩 的视频实现的
  • c++实现:可看B站up主:摸鱼摸摸鱼鱼
#include <stdio.h>
#include <stdlib.h>#define u8 unsigned char
#define forceConLength 128               //数组长度u8 forceCon[forceConLength] = {0};       //SaiBoDingZhen数组
u8 forceCon_tmp[forceConLength] = {0};  //临时缓存数组
u8 indextable[forceConLength] = {0};    //索引数组u8 r = 0;
u8 q = 0, p = 0, cnt = 0;/* 从字符串中提取数组,并包含数字索引信息 函数返回值作为powerCon函数输入值
*/
int string2nums(char *nums) {while(1) {while(nums[r] && (nums[r] < '0' || nums[r] > '9')) {r++;}if(nums[r]) {p  = r;q = r + 1;indextable[cnt] = nums[r] - '0';while(nums[q] >= '0' && nums[q] <= '9') {indextable[cnt] = 10 * indextable[cnt] + (nums[q] - '0');q++;}r = q;cnt++;} else {break;}}return 0;
}void powerCon(u8 whichKey, u8 force) {if(whichKey) forceCon[whichKey - 1] = force;else for(u8 i = 0; i < 68; i++)forceCon[i] = force;
}#define powerCon(nums, force) powerCon(string2nums(#nums), force)void littleFingerForce(void) {powerCon(1 | 2 | 6 | 7 | 11 | 52 | 57 | 58 | 65, 10);
}int main() {printf("I am SaiBoDingZhen!\n");littleFingerForce();/* 向索引位置赋值,其他位置为0 */for(u8 k = 0; k < cnt; k++) {forceCon_tmp[indextable[k]] = forceCon[indextable[k]];}/* 向原数组赋值,并打印输出 */for(u8 j = 0; j < forceConLength; j++) {forceCon[j] = forceCon_tmp[j];printf("%d -> %d\n", j, forceCon[j]);}system("pause");
}

代码执行结果

可以看出,数组的第0,1,5,6,10,51,56,58,64号位置输出结果为10,其他位置为0。

我用c语言把何同学的代码跑起来了相关推荐

  1. C语言学习——班级同学教材金额列表打印

    C语言学习--班级同学教材金额列表打印 今天学习了二维数组,恰逢班内要进行教材费用清算,所以编学了一个C语言程序来对班上各同学应该缴纳的教材费用进行计算并列表输出. 首先程序所实现的功能为:由用户输入 ...

  2. php连接数据库语言,PHP语言连接MYSQL数据库实例代码

    本文主要向大家介绍了PHP语言连接MYSQL数据库实例代码,通过具体的内容向大家展示,希望对大家学习php语言有所帮助. 现在做的项目需要php连接mysql数据库,虽然之前学过,但是现在基本上都给忘 ...

  3. java二叉树代码_JAVA语言实现二叉树生成的代码教程

    本文主要向大家介绍了JAVA语言实现二叉树生成的代码教程,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助. 给定某二叉树三序遍历中的两个,我们即可以通过生成该二叉树,并遍历的方法,求出剩 ...

  4. c语言程序2000行代码,C语言教务管理系统2000行代码

    <C语言教务管理系统2000行代码>由会员分享,可在线阅读,更多相关<C语言教务管理系统2000行代码(56页珍藏版)>请在读根文库上搜索. 1.C语言教务管理系统一.程序结构 ...

  5. 教你C语言实现通讯录的详细代码

    本文详细讲解了C语言实现通讯录的方法,文中通过示例代码介绍的非常详细.对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下 (一)实现思路 1.通讯录功能 添加好友,删除好友,查找好友,修改 ...

  6. 动图图解C语言插入排序算法,含代码分析

    C语言文章更新目录 C语言学习资源汇总,史上最全面总结,没有之一 C/C++学习资源(百度云盘链接) 计算机二级资料(过级专用) C语言学习路线(从入门到实战) 编写C语言程序的7个步骤和编程机制 C ...

  7. c语言中如何让诊断代码右移_如何检测和诊断生产中的慢代码

    c语言中如何让诊断代码右移 开发人员面临的更困难的任务之一是查找和诊断生产中运行缓慢的代码. 首先,您如何监控生产代码而不放慢速度? 当然,您无法通过分析器运行生产代码. 即使您有计时代码的机制,那么 ...

  8. Java语言使用注解处理器生成代码——第二部分:注解处理器

    原文作者:deors 原文地址:https://deors.wordpress.com/2011/10/08/annotation-processors/ 译文作者:Jianan - qinxiand ...

  9. 易语言服务器取cookie,易语言取设COOKIES的代码

    易语言取设COOKIES的代码 开发WEB软件不可以缺少的源码,不管是WEB填表还是HTTP协议,都可以使用. .版本 2 .局部变量 cookie, 文本型 .局部变量 len ' 登录成功以后进行 ...

最新文章

  1. 【python数据挖掘课程】二十二.Basemap地图包安装入门及基础知识讲解
  2. C++学习笔记-----函数调用时的决议:名字查找,重载决议,可访问性检测
  3. 分支管理---解决冲突
  4. google四件套之Dagger2
  5. MessagePack Java Jackson Dataformat 在 Map 中不使用 String 为 Key 的序列化
  6. r720支持多少频率的内存吗_电脑基础知识:内存条知识大全,看完小学生都了解...
  7. html列表逆序输出,JS实现倒序输出的几种常用方法示例
  8. 开源网站管理工具—Altman
  9. 小米 android 7.0下载地址,小米4安卓7.0
  10. wireshark 安装失败报错,缺少kb2999226补丁的解决方案
  11. JESD204B调试笔记(实用版)
  12. 五年了,我在 CSDN 的两个一百万。
  13. JAVA 学习第三天 Scanner顺序\选择\循环结构!
  14. C# 控件透明背景(winform)
  15. BAT面试经验分享(机器学习算法岗)
  16. vue input手机号验证
  17. 水星路由器wan口ip显示0_路由器WAN口获取不到IP地址怎么办?
  18. Linux常用工具使用手册——文件MD5的验证方法
  19. React ref的基本使用
  20. Android Q (十四)ANGLE

热门文章

  1. java/php/net/python医院血库管理系统
  2. Ubuntu16.04 anaconda3安装及其配置
  3. 计算机网络 知识点总结
  4. 【STM32学习5】STM32使用printf函数 打印到电脑串口助手
  5. 关于java的冷笑话_有哪些用代码写的冷笑话?
  6. 自然语言处理:计算机学习人类语言的新方法
  7. Lillian Shao用十年经验解读中国“公有云”落地为什么这么难?
  8. 齿轮故障诊断技术研究
  9. matlab电池故障诊断,功率谱细化matlab实现——齿轮箱故障诊断
  10. Hadoop技术内幕:深入解析MapReduce架构设计与实现原理