c语言求余

作者&投稿:宋纯 (若有异议请与网页底部的电邮联系)
C语言里面%求余是怎么运算的?~

运算符%的运算结果就是左操作数除以右操作数后所得的余数。

下面举一个通例来说明:
a%b 假设a/b=c(余数为d)
对于上面的例子,左操作数为a,右操作数为b,那么a%b后的结果为d。

值得注意的是运算符%的左右操作数必须都为int型。

运算符%最基本的应用就是判断奇偶性(a%2),还有就是用在循环链表和循环队列中,用于判断节点的位置。

很简单,只需要一步,也就是只需要一张图:C语言提供了一个取余数的运算符%,称之为“模”运算符。只有两个整数之间才可以进行模运算!a % b 表示 用b来整除a,商整数,得到余数。如:5%3 = 2、4%3 =1、3%3 =0。

扩展资料C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局为C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。目前2011年12月8日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准是C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。
C语言是一门面向过程的计算机编程语言,与C++,Java等面向对象的编程语言有所不同。
其编译器主要有Clang、GCC、WIN-TC、SUBLIME、MSVC、Turbo C等。
参考资料:百度百科-c语言

这涉及到强制转换的问题,但碰到%又行不通了.这里我提供一种方法:
int main()
{
flout m,n;
long s;
s=90657;
m=100000*int((float)s*(float)s/100000);
n=(float)s*(float)s-m
printf("%d",n);
}

注意到了90657已经超过了int型的范围,所以我改了long定义s.
再就是强制转换(float),可把后面跟的变量值转换为相应类型.

最后利用到了求余数的方法.先把a转换为实型,一个数a对另一个数b取余后,余数等于a-b*float(a/b).再把最后的值转化为整型表示即可,若整数部分太大不能转也没关系,因为只是后面多了一些0.
printf("%d",n); 改回为printf("%f",n); 也没关系的.

对于long 的问题,我想说这是计算的问题;90657*90657/100000,计算机得先计算90657*90657,而这已经超出了long的范围.虽然整个值看起来没超过,但90657*90657就已经不能通过.

二楼说错了吧!s%100000=s不是吗?你那样做有意思吗,不还是那样……楼上两位说用long是吧,long是32位的哦,不够的,虽然最终结果没有超范围,但是90657的平方已经超过了4294967295.也就是说这里的问题溢出是因为计算机的存储不够。应该考虑用别的来存储。但是如果用别的来存,计算怎么计算呢?这个要是自己写就复杂了。
楼主注意到了吧。呵呵,这个s的平方太大,溢出了,即使定义成unsigned,结果也是错的

都不记得了...
你的意思我也不太明白
你意思是编写对任意数求余的C程序吗?
void main()
{
int n,s;
printf("输入要求余的数\n");
scanf("%d",&n);
printf("输入除数\s");
scanf("%d",&s);
printf("余数是%d\n",n%s);
}
是不是这样?

用 long long 定义三

就是说 long long n,s;
s=90657
n=s*s%100000;
printf...

我郁闷你哦是 long long
是两个long
不是一个
一个long 是32位
long long 是64位的

。。 我试过的

可以分开求余了
n=s*s%100000; <=> n=(s%100000)*(s%100000)%100000;
在32位机下
long 和int是一个样的
楼上说的也可以。定义成long long


在C语言中 取整 , 求余的符号各是什么?
如果操作数是整数,那么就是整除,否则就是浮点除,求余的符号是%。1、通常情况下取模运算(mod)和求余(rem)运算被混为一谈,因为在大多数的编程语言里,都用'%'符号表示取模或者求余运算。在这里要提醒大家要十分注意当前环境下'%'运算符的具体意义,因为在有负数存在的情况下,两者的结果是不一...

C语言中取余…
就是取余数运算,也就是模运算(mod)。10\/3在C语言里是整除的意思,结果是3 10%3是求余,结果是余数1 10.0\/3会转换为两个double型的数相除,答案是3.3333 C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要...

C语言里面%求余是怎么运算的?
“%”是对数进行求余。如10%3=1 因为10\/3=3×3+1;所有的自然数a%2=0或1,如:-3%2==-(3%2)==-1;“%”两边必须为整数,运算结果与符号左边保持一致,数值以绝对值计算。如:-10%3=-(10%3)=-1,10%-3=1。C语言起源 C语言是1972年由美国的Dennis Ritchie设计发明的,并首次在...

C语言怎么求余数
1、首先,我们需要打开任意编程软件,小编使用的是Dev c++ 2、然后,我们需要新建一个源代码, 如下图所示 3、然后我们需要输入代码 include <stdio.h>int main(){int i=0;scanf("%d",&i);int j;j=i%2;printf("%d",j);return 0;}表示取输入的数除以二的 余数 。4、最后,我们编译测试...

C语言取余符号怎么用?比如:1%12以及3%8结果是多少
C语言的取余运算符 的用法:将操作数放在取余符号的两边,例如:include<stdio.h> int main(){ int a,b;a=1%12;b=3%8;printf("%d\\n%d",a,b);return 0;} 1%12=1 ,3%8=3。

c语言里%是什么运算符?
C语言中,算术运算符“%”代表模(取余)运算,“++”代表变量自增运算,“--”代表变量自减运算。1、模运算“%”“模”是“Mod”的音译,模运算多应用于程序编写中。 Mod的含义为求余。模运算在数论和程序设计中都有着广泛的应用,从奇偶数的判别到素数的判别,从模幂运算到最大公约数的求法,...

C语言 运算符%是怎么运算的
1、%是求余运算符,也叫模除运算符,用于求余数。2、%要求两个操作数均为整数(或可以隐式转换成整数的类型),%是求余数的运算,例如7%2=1。3、举例:include<stdio.h> void main(){ int i=7;i=i%2;printf("%d\\n",i);} 运行结果如下图:4、%是运算符的一种其他运算符:(1)...

c语言中的求余符号(%)是什么意思对%一点
是求余运算符,也叫模除运算符,用于求余数;要求两个操作数均为整数(或可以隐式转换成整数的类型)。标准规定:如果%左边的操作数为负数时,则模除的结果为负数或者0;如果%左边的操作数为正数时,则模除的结构为正数或者0。“c”为字符类型,其235对应二进制位0xFD,也就是-3的补码...

c语言中求余怎么算 例如5%6
5%6=5 5除以6,不够除,余5 例如:8%6=2

为什么计算机语言要用百分号来表示求余?
在计算机编程中,百分号有代表求余数的意思,也就是取余运算。如7%4=3。百分号:表示分数的分母是100的符号(%),如32%表示一百分之三十二,相当于小数的0.32。在计算机领域中:百分号表示分数的分母是100的符号(%),如32%表示一百分之三十二,相当于小数的0.32。通配符包括星号(*)、问号 (?)...

潼关县14798444985: c语言中怎样取余数? -
童萍孚悦: 1、首先请打开Visual C++ 6.0,(本文使用Visual C++ 6.0软件操作,也可使用Visual Studio或其他C/C++编程软件.),打开成功后如图所示. 2、点击左上角“文件”菜单按钮,并点击“新建”按钮.在弹出的窗口中首先选择“文件”选项...

潼关县14798444985: C语言中取余… -
童萍孚悦: %就是取余数运算,也就是模运算(mod).10/3在C语言里是整除的意思,结果是3 10%3是求余,结果是余数1 10.0/3会转换为两个double型的数相除,答案是3.3333 C语言是一门通用计算机编程语言,应用广泛.C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言. 尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台.

潼关县14798444985: c语言中求余怎么算 例如5%6 -
童萍孚悦: 5%6=5 5除以6,不够除,余5 例如:8%6=2

潼关县14798444985: 请教C语言中的求余运算 -
童萍孚悦: 小的数对大的数求余,得数就是小的数 如:2%5=2 5%9=5

潼关县14798444985: C语言取余问题 -
童萍孚悦: % 1000 只能得 0 到 999 范围里的数. 程序: #includeint main() { int z,x,n,i; z=1; printf("input x and n\n"); // x 是这个数,n 是多少次方 scanf("%d %d",&x,&n); for (i=0;iprintf("%d",z); return 0; }

潼关县14798444985: c语言怎样输出取余表达式 -
童萍孚悦: i%j=m;(m为余值) printf("%d/%d的余数为%d",i,j,m);

潼关县14798444985: 在 C语言中 取整 , 求余的符号各是什么? -
童萍孚悦:[答案] 没有取整符号,你说的可能是整除吧,是/,如果操作数是整数,那么就是整除,否则就是浮点除,求余的符号是%

潼关县14798444985: c语言编程除与求余运算 -
童萍孚悦: 因为你首先定义了a=26 ,b=10 所以a%b=26%10=26÷10=2……6 13%5=13% 5=13÷ 5=2……3 a/b的意思是26÷10=2……6,舍去余数留商

潼关县14798444985: C语言编程取余 -
童萍孚悦: int a,b;scanf("%d%d",&a,&b);switch(b>a){case true: printf("b/a余数是%d",b%a);break; case false: printf("a/b余数是%d",a%b);break;}

潼关县14798444985: c语言中的求余符号(%)是什么意思对%一点 -
童萍孚悦: 是求余运算符,也叫模除运算符,用于求余数; %要求两个操作数均为整数(或可以隐式转换成整数的类型). 标准规定: 如果%左边的操作数为负数时,则模除的结果为负数或者0; 如果%左边的操作数为正数时,则模除的结构为正数或者0...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网