工大后院

 找回密码
 加入后院

扫一扫,访问微社区

QQ登录

只需一步,快速开始

搜索
查看: 3746|回复: 6

[提问] 请教两C语言算法:(面试时碰到的题目)

[复制链接]
发表于 2008-6-5 08:49 | 显示全部楼层 |阅读模式
1.用C语言编程:一个数N的阶乘(N为无穷大)
) |5 |2 U6 \: D* A2.用C语言编一个圆心为(X,Y),半径为R的圆形
发表于 2008-6-5 09:11 | 显示全部楼层
LZ还是不要去面技术的了 呵呵
回复

使用道具 举报

发表于 2008-6-5 09:54 | 显示全部楼层
太简单了,我晕
回复

使用道具 举报

发表于 2008-6-5 10:06 | 显示全部楼层
原帖由 我不是新仔 于 2008-6-5 09:54 发表
% c" I( q+ i0 S/ ^太简单了,我晕
; i7 }) c) m! m9 Z% h

7 b& q6 k  _; f2 m6 O: [4 E兄弟,你就用程序做一下这题:
* L. z6 M+ e3 x0 S  Q) h+ W1.用C语言编程:一个数N的阶乘(N为无穷大)" P7 }0 \% F; r: N

% L" J1 E; y+ r$ S$ W% n& C你用程序算一下10000!,看结果等于多少~/ j, q7 w% p9 ]% q1 R0 _  L

5 ?0 M" Z9 g. T/ `$ z, V4 D4 i[ 本帖最后由 gzzcun 于 2008-6-5 10:28 编辑 ]
回复

使用道具 举报

发表于 2008-6-5 10:44 | 显示全部楼层
编一个圆心为(X,Y),半径为R的圆形
* [# g8 a; j5 ?  F* p% K2 [
. H% t9 B; v& i+ G2 g& X: L什么意思? 画一个圆吗?# U3 c) F# n& T; Q" Q

* N7 h& ~9 I- ~+ a: l第一个问题有点难,因为要无穷  X  p+ i7 C* I& K* ^/ X
4 J+ w- H$ L9 k. j$ r! H
如果是1000!还好办 自己写乘法 用字符串储存 不过就是速度慢了点
回复

使用道具 举报

发表于 2008-6-5 13:29 | 显示全部楼层
#include<stdio.h>
- A$ G$ k. Q8 L; Q#define N 1000    //要计算的N% }7 `3 W7 b7 j
long s[N]={1,1},n=N,t=2,a=1,b=0,p=10000;
4 ]" C. Z! a* ?9 T$ g! Cint main()//雨中飞燕之作3 S9 F: i+ _; }# t% h1 V3 x
{
0 k) W0 O2 X: H% N# f3 k    for(;a<=*s||(++t<=n?(b=0,a=1):0);(*s==a++&&b)?(*s)++:0)5 s0 c' Z( f- D
        s[a]=(b+=s[a]*t)%p,b/=p;
0 w, _/ J5 W1 `% N% l: P    for(printf("%d",s[*s]);--*s>0;)printf("%04d",s[*s]);
; W  S* ~' B9 [% s' g3 B. J* Q    return 0;" R. b+ H; W. `- @
}
5 r& k8 o# s" K5 }8 s5 M# I) x) f/ c
+ o+ s, `, f8 W# V6 Q9 A7 A; d; j: EPS. 搜索的,不是我写的
6 X" b9 E7 f5 w8 P' o2 R" t2 L. P
[ 本帖最后由 sort_0010 于 2008-6-5 13:30 编辑 ]
回复

使用道具 举报

发表于 2008-6-6 00:09 | 显示全部楼层
大数乘法很BT的说............' f5 [7 d. V8 x
用字符型存数据得算到什么时候........
! ?- t9 C, R, [, A: Q/ L* u& O个人觉得得用长整形+指针来做,不过编程太复杂了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 加入后院

本版积分规则

QQ|Archiver|手机版|小黑屋|广告业务Q|工大后院 ( 粤ICP备10013660号 )

GMT+8, 2025-10-22 12:55

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表