200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > c语言上机报告之水仙花数 C语言上机报告之水仙花数..doc

c语言上机报告之水仙花数 C语言上机报告之水仙花数..doc

时间:2020-07-15 17:39:54

相关推荐

c语言上机报告之水仙花数 C语言上机报告之水仙花数..doc

C语言上机报告之水仙花数.

C语言程序设计

上机报告

课题名称:水仙花数的算法

院 (系):工程学院

专业班 级: 052126

学生姓名: 喻培

学 号: 1004040

指导教师: 熊慕舟

11月24日

C语言上机报告之水仙花数

上机目的:1.了解c语言和程序设计

2.学习怎样实现算法,怎样实现水仙花数的输出

上机作业:判断是否是水仙花数。

—水仙花数是指一个n位数(n>=3),它的每个位上数字n次幂之和等于它本身。

要求:

—用scanf输入的数字为任意位数字

—要求进行错误检查

—判断该数是否为水仙花数

—对判断结果进行输出

程序设计

1、NS流程图:

输入n0→sum,1→i,0→c,n→h,h→jn/10不小于1

是 否n/10→n,i+1→i跳出循环 直到n/10不小于1c

是 否h%10→b,h/10→h,sum+b的i次幂→sum,c+1→c 跳出循环直到c>=isum=j

是 否输出n“是水仙花数”输出n“不是水仙花数”

2、算法:

首先将0赋值给sum,1赋值给i,0赋值给c,n赋值给h,h赋值给j,再输入任意一位数n,对它取10的商,用该商与1比较。若不小于1,则将该商赋值给n,i+1赋值给i,再进行判断,重复以上步骤,直到n/10不小于1,跳出循环体,记住此时i的值,执行下一步。判断c是否小于i。若是,则将h取10的余数赋值给b,h除以10的商赋值给h,sum+b的i次幂赋值给sum,c+1赋值给c,再进行判断,重复以上步骤,直到c不小于i,跳出循环体,执行下一步。最后判断sum=i,若是,则输出n“是水仙花数”;若不是,则输出n“不是水仙花数”。

3、程序代码:

# include //预处理指令

# include //定义一个函数

int main() //函数首部

{

int n,b,h,j; //定义变量

sum=0; //对变量sum赋值

c=0; //对变量c赋值

i=1; //对变量i赋值

printf("please enter a number,n=?"); //输出语句

scanf("%d",&n); //输入任意数n

h=n; //对变量h赋值

while(n/10>=1) //循环结构的开始

{

n=n/10; //对变量n赋值

i=i+1; //对变量i赋值

} //第一层循环结

j=h; //对变量j赋值

while(c

开始

{

b=h%10; //对变量b赋值

h=h/10; //对变量h赋值

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。