| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 876 人关注过本帖
标题:[求助]c語言新手上路遇到3到難題請求幫助!
只看楼主 加入收藏
xueweiwei
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-3-6
收藏
 问题点数:0 回复次数:14 
[求助]c語言新手上路遇到3到難題請求幫助!

1 c語言输入一个数,求这个数的阶乘。
2.显示出
*
***
*****
*******
3.输入两个数m,n.如果n=2的m次方,则输出m,n,否则继续

請求各位ggjj指點一下~感謝不已~

搜索更多相关主题的帖子: 新手上路 
2006-03-06 21:44
cxwl3sxl
Rank: 3Rank: 3
等 级:论坛游侠
威 望:1
帖 子:495
专家分:129
注 册:2005-11-12
收藏
得分:0 
(1)for(a=1,i=1;i<=n;i++) a=a*i;
(2)最简单的就是直接输出
(3)可以调用数学函数(翻翻书就解决了)

努力,哈哈,总有一天会变成高手~~~~~~因为我相信:没有办不到,只有想不到!http://t..cn/fpress
2006-03-06 21:51
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
这个应该不用考虑溢出。

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-03-06 21:54
xiaoppi
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2006-2-22
收藏
得分:0 
问题1的n有多大
如果n很大的话
1楼的那个方法程序什么时候
才出循环啊

2006-03-06 22:59
梦想中国
Rank: 2
等 级:新手上路
威 望:5
帖 子:539
专家分:0
注 册:2006-2-26
收藏
得分:0 
2题简单的方法是用4个PRINTF()函数

2006-03-06 23:24
zhangjuan
Rank: 1
等 级:新手上路
帖 子:992
专家分:0
注 册:2006-1-19
收藏
得分:0 

楼上的:
如果图形不是4行,而是100行,那不是用100个printf语句吗


2006-03-06 23:41
稻草人吃米线
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2006-3-7
收藏
得分:0 
以下是引用梦想中国在2006-3-6 23:24:00的发言:
2题简单的方法是用4个PRINTF()函数

同意!!


2006-03-07 00:56
setupcopy
Rank: 1
等 级:新手上路
帖 子:50
专家分:0
注 册:2005-11-22
收藏
得分:0 

2.显示

#include"stdio.h"

main()
{
int i,j,k;
for(i=1;i<=4;i++)
{
for(k=1;k<=4-i;k++)
{
printf(" ");
}

for(j=1;j<=2*i-1;j++)
{
printf("*");
}
printf("\n");
}


getch();

}

2006-03-07 14:09
sneeze
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2006-2-24
收藏
得分:0 

阶乘 转帖

#include<stdio.h>
#include<conio.h>
#include<malloc.h>
void cal(unsigned int *s,int n)
{
unsigned long p,k=0;
int i;

static int m=1,b=0;
for(i=b;i<m;i++)
{
p=(long)s[i]*(long)n+k;
k=p/10000;
s[i]=p-k*10000;
}

if(!s[b])
{
b++;
}

if(k){
s[m++]=k;
}
}

int main(void)
{
unsigned int *s;
int i;
int n;
scanf("%d",&n);
s=(unsigned int *)malloc(n*sizeof(s));

for(i=1;i<n;i++)
{
s[i]=0;
}
s[0]=1;

for(i=2;i<=n;i++)
{
cal(s,i);
}

printf("\n%d!=\n",n);

n--;
while(!s[n])
{
n--;
}
printf("%d",s[n--]);

for(i=n;i>=0;i--)
{
printf("%04d",s[i]);
}
printf("\n");
free(s);

getch();
return 0;

}

显示

#include <stdio.h>
#define line 19
main()
{ char a[line][line]={' '};
int i=0,j=0,k=0;
scanf("%d",&k);
for (j=0;j<k;j++)

for (i=0;i<k;i++)
{
if (i<=j) a[i][j]='*';
else a[i][j]=' ';
}

for (j=0;j<k-1;j++)

for (i=0;i<k;i++)
{
if (i<=j) a[i][k*2-2-j]='*';
else a[i][k*2-2-j]=' ';
}
for (i=k-1;i>=0;i--)
{printf("\n");
for (j=0;j<2*k-1;j++)
printf("%c",a[i][j]);
}
printf("\n");
}

2006-03-07 17:54
ヤ順祺冄繎ヤ
Rank: 8Rank: 8
等 级:贵宾
威 望:42
帖 子:3032
专家分:0
注 册:2005-11-9
收藏
得分:0 
以下是引用梦想中国在2006-3-6 23:24:00的发言:
2题简单的方法是用4个PRINTF()函数

好聪明这么简单的方法就想到..我首先想到就是用循环来...

2006-03-07 18:01
快速回复:[求助]c語言新手上路遇到3到難題請求幫助!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012048 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved