栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

一些简单练习题的讲解

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

一些简单练习题的讲解

1、下列代码的输出结果是什么

int i;
int main()
{
    i--;
    if (i > sizeof(i))

    {
        printf(">n");
    }
    else
    {
        printf("     }
    return 0;
}
讲解:

2、求Sn = a + aa + aaa + aaaa + aaaaa的前5项之和,其中a是一个数字,
例如:2 + 22 + 222 + 2222 + 22222

讲解:

 这道题的难点就是如何产生a,aa,aaa,aaaa……这样的数字。

我们发现,如果a乘以10在加上a便可以得到下一个数字。起始ret为0,便得到a本身,随后把得到的ret在赋值过去,循环往复,便可以得到前n项数。

最后进行相加得到sum。

3、写一个函数打印arr数组的内容,不使用数组下标,使用指针。arr是一个整形一维数组。

讲解:

运用for循环进行解题,注意题目要求,必须要用指针完成,因此创建int*类型的指针变量p存放arr首元素的地址,然后对地址解引用得到每个元素。

 while循环解法

4、求出0~100000之间的所有“水仙花数”并输出。
“水仙花数”是指一个n位数,其各位数字的n次方之和确好等于该数本身,
如 : 153=1 ^ 3+5 ^ 3+3 ^ 3,则153是一个“水仙花数”。

讲解:“水仙花数”其实是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身。本题意思也就是说在0~100000这些数中找到一个n位数abcd...,其a的n次幂+b的n次幂+c的n次幂+...=abcd...这个数自己。

也就是说得到一个数字 i 后,首先我们要先计算 i 这个数有几位数,然后在将 i 这个数的每一位拿出来求 n 次幂,最后将每一位的 n 次幂求和与 i 进行判断,如果相等则为水仙花数,如果不相等,在对下一位数字进行判断。

在这里要引用一个库函数pow(x,y),函数为计算x的y次幂,头文件为

 之所以创建t变量来进行操作,是因为在真个for循环中,i是一个不断变化并且用来判断循环是否终止的一个变量,如果在程序内部进行i的变换,程序便会出现bug甚至无法停下循环。最终导致结果错误。

结果如图:

 

5、写一个函数,可以逆序一个字符串的内容 

 讲解:

逆序字符串的内容就是对首尾字符进行交换,循环往复。

 运行结果:

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/676784.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号