找回密码
 加入后院

QQ登录

只需一步,快速开始

搜索
查看: 3975|回复: 6

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

[复制链接]
发表于 2008-6-5 08:49 | 显示全部楼层 |阅读模式
1.用C语言编程:一个数N的阶乘(N为无穷大)
2 g' r: N* I% k8 F; y2.用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 发表
2 M6 W0 O9 e! v0 S太简单了,我晕
5 A  V) n5 j. d* v" u( T
4 S1 q2 C' ~. F# @* g6 e' X
兄弟,你就用程序做一下这题:
3 O5 t. _6 U$ w8 A( E" }1.用C语言编程:一个数N的阶乘(N为无穷大)
) y) L* F0 ]4 N' J% u  l: N1 C7 {; U! I- g  a( W. q) i. W
你用程序算一下10000!,看结果等于多少~' F. ~$ J" n' R: H$ c3 }# p" d
9 O+ k8 o$ X( F0 ?: X0 n6 r0 g/ a
[ 本帖最后由 gzzcun 于 2008-6-5 10:28 编辑 ]
回复 顶 踩

使用道具 举报

发表于 2008-6-5 10:44 | 显示全部楼层
编一个圆心为(X,Y),半径为R的圆形
/ e( K  t% g- l. t( _9 q" V2 h  z2 o1 u, b7 k" o+ M' F7 f
什么意思? 画一个圆吗?- [% |: _5 t4 u* L" v4 l

: o9 r- x  J8 s9 s7 }第一个问题有点难,因为要无穷% W- }$ X" F2 }' p1 O* {" U

$ A1 E( p: {% T' p, h如果是1000!还好办 自己写乘法 用字符串储存 不过就是速度慢了点
回复 顶 踩

使用道具 举报

发表于 2008-6-5 13:29 | 显示全部楼层
#include<stdio.h>
1 u2 w# k6 Q7 T2 e, _) f( S#define N 1000    //要计算的N
$ h& L6 r7 r9 C9 g1 v7 d) b( Elong s[N]={1,1},n=N,t=2,a=1,b=0,p=10000;
! V3 X* b, t) r% l- _int main()//雨中飞燕之作
2 G- d$ _2 i6 N{1 Y, C, P+ d" u& z4 W2 N! U
    for(;a<=*s||(++t<=n?(b=0,a=1):0);(*s==a++&&b)?(*s)++:0)9 [; B. H  W, Q1 L0 }7 u
        s[a]=(b+=s[a]*t)%p,b/=p;
/ _3 V; G- l0 v    for(printf("%d",s[*s]);--*s>0;)printf("%04d",s[*s]);
% Y9 B/ g! L3 c5 M6 |: |$ N    return 0;
: O2 U  l9 o, u+ I% R9 {}
$ w( N& g/ q- U. ]1 U  C! ~2 K  |. h* S4 H# [" y- f/ [
PS. 搜索的,不是我写的
7 G! g5 j) q) @0 |2 ^* t
/ @7 Q$ o+ D. S6 w0 t1 w( ~! @[ 本帖最后由 sort_0010 于 2008-6-5 13:30 编辑 ]
回复 顶 踩

使用道具 举报

发表于 2008-6-6 00:09 | 显示全部楼层
大数乘法很BT的说............
$ N# h( c' ]2 J+ e0 x" D用字符型存数据得算到什么时候........
+ `+ _* l, l6 J: Z7 D; m% I个人觉得得用长整形+指针来做,不过编程太复杂了
回复 顶 踩

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-11-3 21:45

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

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