[c/c++] programming之路(8)、汇编、求模、自增自减
一、插入汇编
#include<stdio.h>
void main(){
int num=;
num=num+;
//插入汇编语言
_asm{
mov eax,num;//eax是一个存储器,将num的值移动到eax
add eax, //eax值+5
mov num,eax //eax值赋给num
}
printf("%d",num);
getchar();
}
二、求模运算,颠覆数
#include<stdio.h>
#include<stdlib.h> void main1(){
//int num=5%9.0;//报错,求模运算只能是整数
//int num='A'%3;//65%3=2
printf("%d",%);//3=0*5+3
printf("\n%d",%);//5=1*3+2
printf("\n%d",%-);//3=1*-5+3
printf("\n%d",-%-);//-3=0*-5-3
printf("\n%d",-%);//-3=0*5-3
printf("\n%d",%-);//5=-1*-3+2
getchar();
}
//面试题:不准用求模运算
/*
120%19->6=120-120/19*19
100%40->20=100-100/40*40
x%y=x-x/y*y
*/
void main2(){
int x,y;
scanf("%d%d",&x,&y);
printf("x=%d,y=%d",x,y);
//printf("\n%d",x%y);
printf("\n%d",x-x/y*y); system("pause");
}
//颠覆数 123->321 456->654
void main(){
int num,ge,shi,bai;
scanf("%d",&num); ge=num%;
shi=num/%;
bai=num/; printf("%d",ge*+shi*+bai);
system("pause");
}
练习:四位数颠覆,不允许使用求模运算
#include<stdio.h>
#include<stdlib.h>
void main(){
int num,ge,shi,bai,qian;
scanf("%d",&num); ge=num-num/*;
shi=num/-num/*;
bai=num/-num/*;
qian=num/; printf("%d",ge*+shi*+bai*+qian);
system("pause");
}
三、自增自减
#include<stdio.h>
#include<stdlib.h> void main2(){
//++--高于乘除,乘除高于+-
int num=;
printf("%d",-num++);//-3
printf("\n%d",num);//
system("pause");
}
void main(){
int a=;
int b=;
int num=;
printf("%d",a+++b);//->(a++)+b
printf("\n%d",a);//4 //printf("\n%d",(10*num)++);//报错,“++”需要左值(表达式不能用++--)
printf("\n%d",*num++);//
system("pause");
}
[c/c++] programming之路(8)、汇编、求模、自增自减的更多相关文章
- 【C语言学习趣事】_33_关于C语言和C++语言中的取余数(求模)的计算_有符号和无符号数的相互转换问题
最近再次复习C++语言,用的教材是<C++ Primer>这本教材, 看到第二章的时候,里面有个问题困扰了我. 于是想上网查查怎么回事, 结果看了很久都没有得到一个满意的答案. 书上有这么 ...
- 求余VS求模--C语言中表述
之前看帖子,发现许多时候基本上大家都把求模和求余混为一谈了.但实际上二者的概念是有区别的 1. 求余 在C语言中,求余对应的操作符是%,且a%b求余的最后结果总是与a符号相同,最后的数值为|a|% ...
- eq相等 ne、neq不相等, gt大于, lt小于 gte、ge大于等于 lte、le 小于等于 not非 mod求模 等
eq相等 ne.neq不相等, gt大于, lt小于 gte.ge大于等于 lte.le 小于等于 not非 mod求模 is [not] div by是否能被某数整除 i ...
- NYOJ-102 次方求模 AC 分类: NYOJ 2014-02-06 18:53 184人阅读 评论(0) 收藏
地址:http://acm.nyist.net/JudgeOnline/problem.php?pid=102 //a^b mod c=(a mod c)^b mod c很容易设计出一个基于二分的递归 ...
- 大数求模 sicily 1020
Search
- UVA 11174 Stand in a Line (组合+除法的求模)
题意:村子里有n个人,给出父亲和儿子的关系,有多少种方式可以把他们排成一列,使得没人会排在他父亲的前面 思路:设f[i]表示以i为根的子树有f[i]种排法,节点i的各个子树的根节点,即它的儿子为c1, ...
- 【转】C/C++求模求余运算符——2013-08-20
http://blog.csdn.net/whealker/article/details/6203629 求模运算符(%),或称求余运算符,也就是数学上所谓的除法中的余数,%两侧均应为整数, |小| ...
- HDOJ1021题 Fibonacci Again 应用求模公式
Problem Description There are another kind of Fibonacci numbers: F(0) = 7, F(1) = 11, F(n) = F(n-1) ...
- nyoj 102 次方求模【快速幂】
次方求模 时间限制:1000 ms | 内存限制:65535 KB 难度:3 描述 求a的b次方对c取余的值 输入 第一行输入一个整数n表示测试数据的组数(n<100)每组测试只有一 ...
随机推荐
- kdevelp 导入makefile工程
比如upx工程,将upx/src/makefile中makefile改为makefile.am,自用kdevelop导入工程找到makefile.am,生成工程后去掉.am,这样就可以像vs一样调试程 ...
- 关于微信分享的一些心得之recommend.js(直接复制就行)
// import $ from 'jquery'import Vue from 'vue'export default function (type,title,con,img,url,) { / ...
- 用URLRewriter重写url
用url重新一般都是使用URLRewriter库,基本上都是一些配置,在webconfig中 首先配置configuration节点 <configSections> <sectio ...
- 安装Esxi 6.5
最详细安装Esxi 6.5 Exsi 是一款虚拟化系统,与VMware,VirtualBox不同,它不需要安装在其他操作系统上,直接运行在裸机上:占用系统资源很小,易于管理,所以被大多数中小型 ...
- Python记录6:函数2,函数参数
# 一. 函数参数分为两大类 # 形参:在函数定义阶段括号定义的参数(变量名),称之为形式参数 #因为函数定义阶段只是用一个符号表示表示一个参数,并没有具体的值,所以称之为形式参数,形 ...
- Hotfix
http://group.jobbole.com/6311/ http://www.jianshu.com/p/6f0ae1e364d9 http://www.mamicode.com/info-de ...
- 在lnmp1.3布置的web服务器上运行thinkphp3.2.3项目pathinfo路径模式
通过我的经历希望能给大家带来一些帮助: 我是在Linux系统上通过https://lnmp.org/install.html设置Nginx服务器,使用的是lnmp1.3版本,之后将一个thinkphp ...
- Python全栈-day6-day7-字符编码和文件处理
一.字符编码 1.编码基础 定义:人在使用计算机时,使用的是人类能够读懂的字符,使用者必须通过一张字符和数字间的相对应关系表实现人机交互,这一系列标准称为字符编码 Python应用中解决核心字符串乱码 ...
- uvalive 4960 Sensor Network
题意: 给出一个无向图,求一个生成树使得这个生成树的最大边与最小边之差最小,输出这个最小的差值.n的最大值为350. 思路: 这题不看题解想破头也不知道怎么写Orz. 暴力的做法是可以从大到小枚举边作 ...
- MVC中的Ajax与增删改查(一)
自入手新项目以来,一直处于加班状态,博客也有两周没更,刚刚完成项目的两个模组,稍有喘息之机,写写关于项目中 的增删改查,这算是一个老生常谈的问题了,就连基本的教材书上都有.刚看书的时候,以为 没什么可 ...