谁帮我看看我木耳算粉不这个C程序哪里错了?

谁帮我看看这个C程序哪错了_百度知道
谁帮我看看这个C程序哪错了
#include&stdio.h&#include&math.h&void main(){ int i,s=0,z=1;
float eps,m; scanf(&%f&,&eps); for(i=1;fabs((1/i))&=i=i+4) {
m=pow(-1,z)*(1/i);
i=i+4; } printf(&%f&,s);}
我有更好的答案
#include&stdio.h&#include&math.h&void main(){ int i,s=0,z=1; & &s应该是float类型 & &float eps,m; scanf(&%f&,&eps); for(i=1;fabs((1/i))&=i=i+4) & &1/i 改成 1.0/i { &z=z+1; &m=pow(-1,z)*(1/i); &1/i 改成 1.0/i& & & & s=s+m; &i=i+4; } printf(&%f&,s);}1/i 是整数除法,当i&=2时,这个结果将一直是整数0,而不是一个精确的小数。应该将1/i改成 1.0/i,起到强制类型转换的作用。
采纳率:69%
s的类型不应是 int,而应该是float 或 double。1/i都应改为1.0/i
为您推荐:
其他类似问题
c程序的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。新手园地& & & 硬件问题Linux系统管理Linux网络问题Linux环境编程Linux桌面系统国产LinuxBSD& & & BSD文档中心AIX& & & 新手入门& & & AIX文档中心& & & 资源下载& & & Power高级应用& & & IBM存储AS400Solaris& & & Solaris文档中心HP-UX& & & HP文档中心SCO UNIX& & & SCO文档中心互操作专区IRIXTru64 UNIXMac OS X门户网站运维集群和高可用服务器应用监控和防护虚拟化技术架构设计行业应用和管理服务器及硬件技术& & & 服务器资源下载云计算& & & 云计算文档中心& & & 云计算业界& & & 云计算资源下载存储备份& & & 存储文档中心& & & 存储业界& & & 存储资源下载& & & Symantec技术交流区安全技术网络技术& & & 网络技术文档中心C/C++& & & GUI编程& & & Functional编程内核源码& & & 内核问题移动开发& & & 移动开发技术资料ShellPerlJava& & & Java文档中心PHP& & & php文档中心Python& & & Python文档中心RubyCPU与编译器嵌入式开发驱动开发Web开发VoIP开发技术MySQL& & & MySQL文档中心SybaseOraclePostgreSQLDB2Informix数据仓库与数据挖掘NoSQL技术IT业界新闻与评论IT职业生涯& & & 猎头招聘IT图书与评论& & & CU技术图书大系& & & Linux书友会二手交易下载共享Linux文档专区IT培训与认证& & & 培训交流& & & 认证培训清茶斋投资理财运动地带快乐数码摄影& & & 摄影器材& & & 摄影比赛专区IT爱车族旅游天下站务交流版主会议室博客SNS站务交流区CU活动专区& & & Power活动专区& & & 拍卖交流区频道交流区
白手起家, 积分 16, 距离下一级还需 184 积分
论坛徽章:0
#include &stdio.h&
#include &stdlib.h&
void getmemory(char *p,int num)
& & & & p=malloc(num);
int main()
& & & & char *str=NULL;
& & & & getmemory(str,100);
& & & & strcpy(str,&hello world&);
& & & & printf(str);
& & & & return 0;
论坛徽章:0
黑曼巴snake
str没有得到分配内存的地址值。
内存空间状态:首先申请了四个字节的栈空间,存放str指针,此时str的值为0,存放str的这块内存的地址值为0x0012ff7c。调用函数 GetMemory,指针P入栈,也分配了四个字节的栈空间,P被赋str的值即此时P的值也为0,存放指针P的内存地址是0x0012ff2c。然后将新开辟的100个字节的内存空间地址赋给P,此时P的值为0x00372b70。函数调用结束时str的值仍为0,str并没有得到那块100个字节的内存空间地址值!
稍有积蓄, 积分 290, 距离下一级还需 210 积分
论坛徽章:0
void getmemory(char** p,int num)
& && &&&*p=malloc(num);
白手起家, 积分 15, 距离下一级还需 185 积分
论坛徽章:0
同意上面两楼
丰衣足食, 积分 789, 距离下一级还需 211 积分
论坛徽章:0
lz还需要好好了解下指针!
最近问这种题的比较多,而这种题一般出现在笔试里头,难道最近很多新人找工作吗?
丰衣足食, 积分 729, 距离下一级还需 271 积分
论坛徽章:0
看来pmeroc的工作很有必要,就是要扣字眼,搞清概念!
要搞清楚:指针变量、指针变量的值,传值、传地址、传指针的值。
白手起家, 积分 30, 距离下一级还需 170 积分
论坛徽章:0
#include &stdio.h&
#include &stdlib.h&
#include &string.h&
void getmemory(char **p, int num)
{
& & & & *p = malloc(num);
}
int main(void)
{
& & & & char *str = NULL;
& & & & getmemory(&str, 100);
& & & & strcpy(str, &hello world\n&);
& & & & printf(str);
& & & & return 0;
}
复制代码
丰衣足食, 积分 729, 距离下一级还需 271 积分
论坛徽章:0
本帖最后由 pxbfeiniao 于
09:43 编辑
#include &stdio.h&
#include &stdlib.h&
#include &string.h&
char *getmemory(char *p, int num)
& & & & return (p = malloc(num));
int main(void)
& & & & char *str = NULL;
& & & & str = getmemory(str, 100);
& & & & strcpy(str, &hello world&);
& & & & printf(str);
& && &&&free(str);
& & & & return 0;
白手起家, 积分 16, 距离下一级还需 184 积分
论坛徽章:0
谢谢 各位的解答。。现在明白了。。
北京盛拓优讯信息技术有限公司. 版权所有 京ICP备号 北京市公安局海淀分局网监中心备案编号:22
广播电视节目制作经营许可证(京) 字第1234号
中国互联网协会会员&&联系我们:
感谢所有关心和支持过ChinaUnix的朋友们
转载本站内容请注明原作者名及出处清除回答草稿
&&&您需要以后才能回答,未注册用户请先。

我要回帖

更多关于 帮我看看我的木耳黑么 的文章

 

随机推荐