| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 374 人关注过本帖
标题:类型的定义问题
取消只看楼主 加入收藏
小赵q1
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:492
专家分:777
注 册:2011-8-26
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
类型的定义问题
我写了个程序是计算一个数的n次方的,结果的类型不知道该怎么定型
都是整形的话程序是这样:
#include<stdio.h>
int pingfang(int a,int n)
{
 if(n==1) return a;
 else return a*pingfang(a,n-1);
}
void main()
{
 int a,n;
 scanf("%d,%d",&a,&n);
 printf("a=%d,n=%d\n",a,n);
 printf("%d^%d=%d\n",a,n,pingfang(a,n));
}
现在都是整形的,如果我想把里面的a换成double型的n还是整形的,应该改动里面的什么地方呢?改了好多地方都会出错误。
搜索更多相关主题的帖子: 整形 return 
2011-09-24 06:59
小赵q1
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:492
专家分:777
注 册:2011-8-26
收藏
得分:0 
回复 2楼 A13433758072
不好意思,我刚学C没有多长时间,你给我发的两个例子有点看不懂,
我的程序是在TC2.0里运行的,学了一个月做到的也就到把a的n次方写成那样的效果。
可以帮我把里面的int a,换成double a,然后scanf()里的%d应该怎么改呢?是%f吗?
最后输出结果里的%d也换成%f吗?结果是通不过。
2011-09-25 03:19
小赵q1
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:492
专家分:777
注 册:2011-8-26
收藏
得分:0 
回复 4楼 A13433758072
问题解决了,呵呵
我的意思其实是n保持int型不变,把a换成double型,想看下两个类型不一样的情况下,scanf()里面的格式符和printf()里面的格式符应该怎么改,都换成一种类型的话确实好做,不过你的话给了我灵感,谢谢
我只把里面a的格式符全部改为%lf,最后的结果自动转为double了,所以,格式符也是%lf,就出结果了。
2011-09-25 08:41
快速回复:类型的定义问题
数据加载中...
 
   



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

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