其他分享
首页 > 其他分享> > 数据类型课后习题

数据类型课后习题

作者:互联网

数据类型

1. 我们说 printf() 是一个用于格式化打印的函数,那 sizeof() 是一个函数吗?
答:sizeof()不是一个函数,而是一个特殊的操作符,是一个运算符。

2. 如有 int i = 123; 请指出下边错误的语句?
A. sizeof i;
B. sizeof 123;
C. sizeof(i);
D. sizeof(123);
E. sizeof int;
F. size of (int);

答:有错误的是E。

3. 问题:求 1^2 + 2^3 + 3^4 + 4^5 + 5^6 的值?
答:代码如下:

#include <stdio.h>
#include <math.h>
int main()
{
    int result;
    result = pow(1,2) + pow(2,3) +pow(3,4) + pow(4,5) + pow(5,6);    
    printf("1^2+2^3+3^4+4^5+5^6 = %d\n",result);
    return 0;
}

4. 舍罕王的失算
相传国际象棋是古印度舍罕王的宰相达依尔发明的。舍罕王十分喜爱象棋,决定让宰相自己选择何种赏赐。这位聪明的宰相指着 8 * 8 共 64 格的象棋说:“陛下,请您赏给我一些麦子吧。就在棋盘的第 1 格放 1 粒,第 2 格放 2 粒,第三格放 4 粒,以后每一格都比前一格增加一倍,依此放完棋盘 64 格,我就感激不尽了。”。舍罕王听了达依尔这个“小小”的要求,想都没想就满口答应下来。结果在给达依尔麦子时舍罕惊奇地发现要给的麦子比自己想象的要多得多,于是他进行了计算,结果令他大惊失色。请问,舍罕王要兑现他的许诺共要多少粒麦子赏赐他的宰相?如果每25000粒麦子重1kg,那么舍罕王应该给予达依尔多少公斤麦子?

答:代码如下:

#include <stdio.h>
#include <math.h>
int main()
{
    unsigned long long sum=0,i,temp;
    for(i=0;i<64;i++)
    {
        temp = pow(2,i);
        sum = sum + temp;
    }
    printf("total = %llu粒,total = %llu公斤\n",sum,(sum/25000));
    return 0;
}

标签:麦子,int,pow,sum,数据类型,课后,习题,sizeof,舍罕王
来源: https://blog.csdn.net/weixin_43412722/article/details/112425835