鱼C论坛

 找回密码
 立即注册
查看: 1756|回复: 6

[已解决]求问这段代码有什么问题 感觉进入未知领域了

[复制链接]
发表于 2017-11-5 12:28:02 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
/*本程序为辗转相除法的运算*/

#include <stdio.h>
extern int a,b,c,d;
int main()
{
        int change(int a,int b);
        scanf("%d %d",&a,&b);
        if (a<b);
        {
                 change(a,b);
        }
         while (d!=0);
         {
                 c=a/b;
        d=a-b*c;
                 a=b;
        b=d;
         }
         printf("公约数为%d",b);
}
int change(int a,int b)
{
        int temp;
        temp=a;
    a=b;
    b=temp;
        return 0;
最佳答案
2017-11-5 13:20:57
本帖最后由 丶忘却的年少o 于 2017-11-5 13:23 编辑

你指的未知领域是什么?好像除了代码有点缺陷和错误运行起来没发现什么不对。
1. if判断后面加了“;”,相当于这个语句就废了!!!!
2.change函数返回的0根本没作用,所以直接定义void类型就好了,不要返回了。
3.全局变量的d一开始就是0呀,而且你没给它赋值,那么while( d != 0 )这个循环肯定不会进去!
4.while语句后面也加了“;”所以,这句也废了!没有循环条件的判断就直接进去执行内部的操作了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-11-5 12:35:32 | 显示全部楼层
int change(int a,int b)
{
        int temp;
        temp=a;
    a=b;
    b=temp;
        return 0;
这个并没有改变实参的值啊。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-5 12:43:04 | 显示全部楼层
闪电猫网络 发表于 2017-11-5 12:35
int change(int a,int b)
{
        int temp;

全局变量这里不会跟着变吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-11-5 13:20:57 | 显示全部楼层    本楼为最佳答案   
本帖最后由 丶忘却的年少o 于 2017-11-5 13:23 编辑

你指的未知领域是什么?好像除了代码有点缺陷和错误运行起来没发现什么不对。
1. if判断后面加了“;”,相当于这个语句就废了!!!!
2.change函数返回的0根本没作用,所以直接定义void类型就好了,不要返回了。
3.全局变量的d一开始就是0呀,而且你没给它赋值,那么while( d != 0 )这个循环肯定不会进去!
4.while语句后面也加了“;”所以,这句也废了!没有循环条件的判断就直接进去执行内部的操作了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-11-5 13:25:54 | 显示全部楼层
丶忘却的年少o 发表于 2017-11-5 13:20
你指的未知领域是什么?好像除了代码有点缺陷和错误运行起来没发现什么不对。
1. if判断后面加了“;”, ...

好久没写c程序 出了一堆语法错误 谢谢指点
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-11-5 13:30:38 | 显示全部楼层
nodust 发表于 2017-11-5 13:25
好久没写c程序 出了一堆语法错误 谢谢指点

客气客气
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-11-5 14:08:05 | 显示全部楼层
nodust 发表于 2017-11-5 12:43
全局变量这里不会跟着变吗

不会的,传指针或者直接使用引用才能更改。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-19 00:12

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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