初学C语言,今天看了两个案例,照着打了一次,最后老是提示我有一个错误,麻烦帮我看一看。

[复制链接]
查看11 | 回复5 | 2011-9-7 12:28:35 | 显示全部楼层 |阅读模式
这个是求两数最大值。#includestdio.hvoidmain(){intmax(intx,inty);inta,b;scanf(\"%d,%d\",c=max(a,b);printf(\"max=%d\\n\",c);}intmax(intx,inty){intz;if(xy)z=x;elsez=y;return(z);}提示我有一个错误。下面这个是我学了例子后自己打的求三数最大值。求三个最大的数#includestdio.hvoidmain(){intda(intx,inty,intz);inta,b,c;scanf(\"%d,%d,%d\",d=da(a,b,c);printf(\"d=%d\\n\",d);}intda(intx,inty,intz){intg;if(xyz)g=x;if(yxz)g=y;elseg=z;return(g);}还是提示我有一个错误。求指导。。。
回复

使用道具 举报

千问 | 2011-9-7 12:28:35 | 显示全部楼层
第一个程序的C和第二个程序的D接收结果的值没有定义,加上intc;intd;应该就可以了。。。追问嗯,我刚刚就是突然发现了,加上了。第一个没有问题了,但第二个还有一个错误。
回复

使用道具 举报

千问 | 2011-9-7 12:28:35 | 显示全部楼层
错误提示追问在什么地方错了?能不能帮我纠正一下?我看一下。
回复

使用道具 举报

千问 | 2011-9-7 12:28:35 | 显示全部楼层
当然是错的。自定义函数声明要放在所有函数前边,你把声明放在main函数内,当然错了。
回复

使用道具 举报

千问 | 2011-9-7 12:28:35 | 显示全部楼层
自己不了解C语言,但是return(z)是要写成returnz;吧。第二个好像也是这个问题,你去掉括弧试试追问第一个和第二个都有一个同样的问题,我以经找到了,就是在我定义整形变量a,b,c的时候忘记定义答案了(第一个是c第二个是d)。我修改过后,第一个没有问题了,可是第二个还有一个错误。。
回复

使用道具 举报

千问 | 2011-9-7 12:28:35 | 显示全部楼层
第一个程序中c=max(a,b);你使用的变量c没有定义要把inta,b;改为inta,b,c;就可以了第二个程序错在一样的地方是变量d没有定义。要改成inta,b,c,d;就可以了
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行