大连理工程序设计-第3次上机作业_第1页
大连理工程序设计-第3次上机作业_第2页
大连理工程序设计-第3次上机作业_第3页
大连理工程序设计-第3次上机作业_第4页
大连理工程序设计-第3次上机作业_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

题目描述:编写函数,计算表达式s=2壯ok!的值(n-10)),形参n的值由主程序输入并传递,函数返回值为s.题目分析:主函数用循环语句计算各阶层之和,调用函数factorial(intx),用循坏语句计算每个阶层。流程图:程序代码:#include<stdio.h>voidmain(){intfactorial(intx);ints=0;scanfC%cT&n);for(k=l;k<=n;k++){m=factorial(k);s+=m;}printf("%d\n",s);}intfactorial(intx){intt,i;t=l;for(i=l;i<=x;i++)t*=i;return(t);}程序截屏:2.1题目描述:编写数字加密函数intencrypt(intn).其输入为一个四位数,返回为加密后的数。其加密方法为:(1) 将该数每一位上的数字加9,然后除以10取余,作为该位上的新数字,(2) •将第1位和第3位上的数字互换,第2位和第4位上的数字互换,组成加密后的新

数。题目分析:主函数输入n,并打出结果。调用intencrypt(intn)函数,在intencrypt(intn)函数里用公式将原密码加密,并返回加密后的值。流程图:流程图:程序代码:#include<stdio.h>voidmain(){intencrypt(intn);inta,b;scanf(”%d“,&a);b=encrypt(a);printf(nTheencryptednumberis%d\n",b);intencrypt(intn){inti,Lp,q;i=n%10;j=n%100/10;p=n%1000/100;q=n/1000;i=(i+9)%10;j=(j+9)%10;p=(p+9)%10;q=(q+9)%10;n=j*1000+i*100+q*10+p;returnn;}程序截屏:2.2题目描述: 编写数字加密函数intdecrypt(intn),其输入为一个使用2.1encrypt函数加密后的四位数,返回为解密后的数。题目分析:主函数输入n,并打出结果。调用intdecrypt(intn)函数,在intdecrypt(intn)函数里用公式将原密码解密,并返回解密后的值。流程图:流程图:程序代码:#include<stdio.h>voidmain(){intdecrypt(intn);inta,b;scanf(”%d“,&a);b=decrypt(a);printf(nThedecryptednumberis%d\nnzb);}intdecrypt(intn)intijp,q;i=n%10;j=n%100/10;p=n%1000/100;q=n/1000;i=i+10-9;j=j+10-9;p=p+10-9;q=q+10-9;n=j*1000+i*100+q*10+p;returnn;}程序截屏:3.题目描述:钟面上的时针和分针之间的夹角随着时间的不同而变化。举例来说,在十二点的时候两针之间的夹角为0,而在六点的时候夹角为180度(时针和分针有两个夹角,其中较小的为准)。本题首先要编写函数来计算12:00到11:59之间任意一个时间的时针和分针的夹角,并利用此函数算出在什么时间二者的夹角达到最大(精确到分钟)。计算夹角的函数angle(inthjntm)有两个输入,第一,个数字代表小时(大于0小于等于12),第二个数字代表分(在区间[0,59]上)。其输出为该时刻时针和分针间的最小夹

角。题目分析:主函数为时间的输入,并进行循坏,循环直到输出最大角度。调用angle(inthjntm)函数,运用公式计算角度,返回值到主函数。最后输出结果。流程图:流程图:程序代码:#include<stdio.h>main(){intangle(inth,intm);inta=l,b=O,t;for(a=12;a>=l;a-)for(b=0;b<=59;b++)t=angle(a,b);if(t==180)gotoA;}A:printf(HW针和分针在:%d:%d时夹角最大"其夹角为:%d\rf,abt);}angle(inth」ntm){intt;t=h*30+m/2-m*6;if(t<0)t=o-t;else{if(t>180)t=360-t;}return(t);}程序截屏:if(b==O||d==0){printf("分母不能为0,请重新输入gotoA;}switch(op){case'+':x=a*d+c*b;y=b*d;break;case,J:x=a*d-c*b;y=b*d;break;case'*':x=a*c;y=b*d;break;case,/,:x=a*d;y=b*c;break;}if(x>y

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论