C语言中,两整数相除,若分母为零,则会出现怎样的结果???

1==首先编译的时候会给出如下warning:warning: division by zero。

然后运行时如果是"3.0 / 0"这样的(floating),会给出inf;

如果是"3 / 0"这样的(integer),会给出Floating point exception。

2==在vc中用F5执行会弹出一个对话框,内容为:
Unhandled exceptiong in xxx.exe:0xC0000094:Integer Divide by Zero
用ctrl+F5执行则会终止执行

3===如果是0一般会有两种情况?
1、如果0是常量,在编译时就会报出异常。如:10/0
2、如果0是变量,则会在运行时出现异常。如:int value = 0; 10/value;//运行时出错

时间: 2024-11-07 15:03:57

C语言中,两整数相除,若分母为零,则会出现怎样的结果???的相关文章

Java两整数相除保留两位小数

在Java中 两个整数相除 会做取整运算,此时如果希望得到运算结果为浮点数 则必须将两整数其一或两者都强制转为为浮点数 例如: int a = 9; int b = 2; System.out.println((float)a/b); System.out.println(a/(float)b); System.out.println((float)a/(float)b); 保留两位小数 DecimalFormat df = new DecimalFormat("0.00"); Str

不使用运算符 /号实现两整数相除

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp2 { class Program { static void Main(string[] args) { Console.WriteLine(div(1888888888,5)); Console.Read(); } ///

【LeetCode每天一题】Divide Two Integers(两整数相除)

Given two integers dividend and divisor, divide two integers without using multiplication, division and mod operator. Return the quotient after dividing dividend by divisor. The integer division should truncate toward zero. Example 1:             Inp

leetCode 29.Divide Two Integers (两整数相除) 解题思路和方法

Divide Two Integers Divide two integers without using multiplication, division and mod operator. If it is overflow, return MAX_INT. 思路:这个题算法上不是很难,但是通过率相当低,只有15%,果然,自己在写完之后,各种出错,而且错误不是算法上的错误,是各种边界值没有考虑到,很多溢出错误等.下面是具体代码,有详细注释. public class Solution { p

C语言中,为什么指针表达式的值+1.对应的地址值却+4?/为什么两个数组元素的地址相减之差不为地址之差?

在C语言中,我们常常用到的一个运算是让某个变量的值+1. 例如 M = M + 1. 而在实际运用中,我们发现 对于指针进行+1运算,算出来的结果是+4. 如下图 图中我们定义的 变量M 和指针Matrix如下: int M = 3; int* Matrix = {1,2,3}; 可以看到,对于M和 Matrix ,+1运算的效果是不同的. 这个差异是因为C语言的标准中规定了 加法与减法运算对于地址的操作和对于值的操作是不同的,如下文中粗体所示: C89 3.3.6 Additive opera

python中两个整数相除得到浮点数的值的方法

/********************************************************************* * Author  : Samson * Date    : 09/19/2014 * Test platform: *              Linux ubuntu 3.2.0-58-generic-pae *              GNU bash, version 4.2.39 * *****************************

【LeetCode-面试算法经典-Java实现】【029-Divide Two Integers(两个整数相除)】

[029-Divide Two Integers(两个整数相除)] [LeetCode-面试算法经典-Java实现][所有题目目录索引] 原题 Divide two integers without using multiplication, division and mod operator. If it is overflow, return MAX_INT. 题目大意 不使用除法,乘法和取余,求两个整数的相除的结果,如果有溢出就返回最大的整数. 解题思路 任何一个整数可以表示成以2的幂为底

java 两个整数相除保留两位小数

java中,当两个整数相除时,由于小数点以后的数字会被截断,运算结果将为整数,此时若希望得到运算结果为浮点数,必须将两整数其一或是两者都强制转换为浮点数. 例如: (float)a/b // 将整数其中一个强制转换为浮点数,再与另一个整数相除 a/(float)b (float)a/(float)b // 将两个整数同时强制转换为浮点数后再相除 float num= (float)2/3; DecimalFormat df = new DecimalFormat("0.00");//格

C#中两个整数相除得到带小数点的结果

有时候需要将两个整数相除,获得带小数点的float类型数.例如一个整数12345,需要变成123.45.常见与串口与硬件通讯,DSP处理浮点型比较麻烦,DSP传递来的温度等数据都以整型的方式传递,串口控件接收到数据后,需要将温度值变成实际的值,就可能采用这种方式了. 例如: int itemp=3706; //实际值37.06℃int iNum=100; float ftemp = itemp/ iNum;那么结果就是37:而需要得到带小数点的结果,有以下几种方法: 1.double dtemp