萌新第一次使用函数后的一些体会(欢迎同学指正)
来源:互联网 发布:海康威视端口未生效 编辑:程序博客网 时间:2024/06/05 07:18
这个是我们第一次的程序作业中的一道题目,由于基础很差,所以花费时间很长,话不多说,题干要求大致是这样:要求编写一个程序求出所有的阿姆斯特朗数(又称水仙花数);阿姆斯特朗数定义如下
using namespace std;
int main()
{
int i;
int a;//定义a来当作容器装n的值
for(int i=100;i<=999;i++)
{
int m,n;
a=n=i;
int sum=0;
while(a>0)//while语句,当a>0的时候停止循环
{
m=a%10;
sum+=m*m*m;
a/=10;
}
if(sum==n)
cout<<i<<endl;
}
return 0;
}
#include<iostream>
using namespace std;
int interesting(int a);//重新定义了一个函数来对是否是水仙花数判断,再判断水仙花数大小
int main()
{
int i;
for(int i=999;i>=100;i--)
{
if(interesting(i)==1)
cout<<i<<endl;
}
return 0;
}
int interesting(int a)
{
int m;
int n=a;
int sum=0;
while(a>0)
{
m=a%10;
sum+=m*m*m;
a/=10;
}
if(sum==n)
{
return 1;
}
else
{
return 0;
}
}
这个程序相对于双循环程序更为夯长,甚至调用函数的做法没什么必要,就可读性而言,我的理解是在这个题设条件下是没有区别的,二者的运行时间差在一毫秒,但是函数的调用可以使得程序更为清晰,也即是将一个大问题分割为几个小问题逐步解决,相较于双循环程序而言不会把自己给绕进去。
个人总结:函数的使用是将复杂问题简单化的有效方法之一,但是也要合理使用,避免增加不必要的编程复杂性。
(此篇文章在语言表述上存在一些问题,后续还会根据鄙人的学习情况进行一些知识点的理解上的拓展,欢迎关注哦~笔芯)
- 萌新第一次使用函数后的一些体会(欢迎同学指正)
- 热心同学欢迎指正
- [算法] 【一段破代码,对SSL异步编程感兴趣的同学有福了, 欢迎高手指正使用错误】
- 一段破代码,对SSL异步编程感兴趣的同学有福了, 欢迎高手指正使用错误
- [算法] 【一段破代码,对SSL异步编程感兴趣的同学有福了, 欢迎高手指正使用错误】
- 欢迎--CNDN新同学
- sql注入 js脚本注入 html入侵(自己收集的一些解决方案)欢迎指正
- 在大学老师布置的一些题目,欢迎各位大佬指正(1)
- 在大学老师布置的一些题目,欢迎各位大佬指正(2)
- 在大学老师布置的一些题目,欢迎各位大佬指正(3)
- 在大学老师布置的一些题目,欢迎各位大佬指正(4)
- 在大学老师布置的一些题目,欢迎各位大佬指正(5)
- 在大学老师布置的一些题目,欢迎各位大佬指正(6)
- **关于常量折叠,虚函数表的个人实践及一些看法,若有错漏处欢迎各位指正**
- 对象/类,函数/方法 的区分(仅代表个人观点,如有偏差欢迎指正)
- RequisiteWeb的理解,欢迎指正
- 一些会议英语与翻译-欢迎指正
- 使用Vega的一些体会
- tensorflow手写体识别(一)
- java基础—连接MySQL数据库的2种常用方式(传统方式和c3p0连接池)
- 从键盘输入一个正整数n,若能同时被3、5和7整除,则输出“Yes”,否则输出“No”
- k-palindrome
- 集合源码学习(八):HashSet和TreeSet
- 萌新第一次使用函数后的一些体会(欢迎同学指正)
- 微生物组入门必读+宏基因组实操课程=新老司机赶快上车
- 一个有用的东西matio
- 改造QCheckBox,单机内部任意地方都可选中
- 171014 逆向-Reversing.kr(x64 Lotto)
- node.js初识
- (八)ElasticSearch常用查询语法
- angular表单校验-模板驱动表单校验
- 文章标题 Coderforces 343D : Water Tree(dfs序+线段树)