c语言中不使用操作符实现两个数相加

原创 2012年03月25日 17:33:47
不用操作符实现两个数相加,代码如下:

    int main()

    {

    int a=9;

    int b=3;

    printf("%d\n",printf("%*s%*s",a,"",b,""));

    return 0;

    }

    结果在这里:

    http://ideone.com/YlBhO

    神奇啊!

    printf函数中的*操作符用来指定输出的个数,这个值由printf后面的第一个参数指定

    所以printf("%*s%*s",a,"",b,"")可以分解为printf("%*s",a,"")输出a个空格,同理printf("%*s",b,"")是输出b个空格,这种写法好处是是a,b都是变量,可以在外部进行修改。

    printf("%*s%*s",a,"",b,"")其实就是输出了a+b个空格,在这里就是12个了,而printf的返回值是总共输出的字符个数,所以上面的语句输出是

    12

    12个空格加上12这个数字。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

c语言中如何不使用加号,完成两个数字相加

c语言中如何不使用加号,完成两个数字相加 在c语言中,我们经常求两个数字加和的时候,通常会使用+ ,来将两数相加得出相加结果。 例如:#include "stdio.h" int main() {...

程序猿之---C语言细节7(检测两个整型相加是否溢出)

主要内容:检测两个整型相加是否溢出 #include #include int main(int argc, char *argv[]) { /* * a和b为非负整型变量,检测a+b是...

实现一个Add函数,让两个数相加,但是不能使用四则运算,也不能用++、--等

这个问题,普遍解法是用位运算。 首先我们需要知道位运算中能用到的基本符号 and运算 &   and运算通常用于二进制的取位操作,例如一个数 and 1的结果就是取二进制的最末位。这可以用来判断一个整...

C语言来实现链表的相加基本操作 桂林电子科技大学 大二实验

C语言实现链表的基本操作 基本描述:用c语言来实现链表的基本操作,包括插入,删除,排列,两个链表的相加减 代码: 里面都有详细的解析了 #include #include #include #i...

C语言实现多项式的相加(链表)

#include #include struct node { int coef; //系数 int index; //指数 struct...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)