C语言编程之大整数加法

1. C语言整数运算C语言的整数类型有:int,short,long 三种,同时可以冠以unsigned,signed来标识无符号整数及有符号整数。针对不同的环境,每种类型的长度不同,因此,在不同的机器上,虽然其表征的数值大小由差异,但都有一个区间,只有在此区间的数值,才能用相应的变量继续表示。如果跨越该数值区间的数据,则系统无法进行运算。如何在C语言中实现大数据的运算,则需要借助其他方法(数据类型)实现。C语言的数据类型主要由两类:数值型、字符(串/数组)型。显然如果数值型不能进行处理,只能借
摘要由CSDN通过智能技术生成

1. C语言整数运算

C语言的整数类型有:
int,short,long 三种,同时可以冠以unsigned,signed来标识无符号整数及有符号整数。
针对不同的环境,每种类型的长度不同,因此,在不同的机器上,虽然其表征的数值大小由差异,但都有一个区间,只有在此区间的数值,才能用相应的变量继续表示。

如果跨越该数值区间的数据,则系统无法进行运算。
如何在C语言中实现大数据的运算,则需要借助其他方法(数据类型)实现。

C语言的数据类型主要由两类:数值型、字符(串/数组)型。显然如果数值型不能进行处理,只能借助字符型类型进行处理。
在C语言中,单个字符采用char ,多个字符则须采用字符串进行处理,C语言中的字符串则是通过字符数组实现的。
为了便于说明,本例只就整数加法进行示例讲解。

2. 字符运算

char ch=’a’;
ch++; // 字符’a’ 的ascii码值加1,变为’b’的 ascii码
此时,字符变量ch中的字符为’b’;

char ch=’8’;
int val;
val=ch – ’0’; // 此时val的数值为8,字符’8’的ascii码值 - ’0’的ascii码值

int val=1;
char ch;
ch= val +’0’; // ch 的ASCII码值 = 1+’0’的ascii码值 =’1’的ascii码值
// 所以ch 为字符’1’

3. 解决方法

#include “stdio.h”
main()
{
   
   int ival=1234;
   char sval=1234;
printf(“val=%d\n”, ival);
printf(“val=%s\n”, sval);
}

上述代码,对于1234,采用两种数据类型进行表征,从数据显示而言,没有区别。
从数据展示及存储上,采用字符数组存放数值字符串是可行的,由于字符串没有基于数值的算术运算,因此我们只需要解决两个数字字符串的算术运算即可。

字符相加
针对两个字符’3’,’4’, 其数值对应加法 3+4 ==》7 ,因此我们需要构造’3’+’4’ ==》’7’ 即可
需要进行 :字符 ==》数值 ,数值相加 &#x

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值