鱼C论坛

 找回密码
 立即注册
查看: 1075|回复: 4

[已解决]题目要求输出较大的数,但我写的代码他只输出a的值

[复制链接]
发表于 2023-10-12 17:36:03 | 显示全部楼层 |阅读模式

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

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

x
题目要求输出较大的数,但我写的代码他只输出a的值,求路过的大佬帮我看看


#include<stdio.h>

int main()
{
        int max(int x,int y);
        int a,b,c;
       
        scanf("%d,%d",&a,&b);
        c = max(a,b);
       
        printf("max =%d\n",c);
       
        return 0;
}
int max(int x,int y)
{
        int z;
        if(x > y)z = x;
        else z = y;
        return (z);
}

最佳答案
2023-10-12 17:36:09
这段代码中只输出了变量a的值,这可能是因为在输入时使用了逗号分隔符,而不是空格。修改scanf语句中的逗号为空格,即可正确输入两个变量的值。

修改后的代码如下:
#include <stdio.h>

int max(int x, int y);

int main() {
    int a, b, c;
    scanf("%d %d", &a, &b);
    c = max(a, b);
    printf("max = %d\n", c);
    return 0;
}

int max(int x, int y) {
    int z;
    if (x > y) {
        z = x;
    } else {
        z = y;
    }
    return z;
}

另外,建议在if语句中加上花括号,以增加代码的可读性和可维护性。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-10-12 17:36:09 | 显示全部楼层    本楼为最佳答案   
这段代码中只输出了变量a的值,这可能是因为在输入时使用了逗号分隔符,而不是空格。修改scanf语句中的逗号为空格,即可正确输入两个变量的值。

修改后的代码如下:
#include <stdio.h>

int max(int x, int y);

int main() {
    int a, b, c;
    scanf("%d %d", &a, &b);
    c = max(a, b);
    printf("max = %d\n", c);
    return 0;
}

int max(int x, int y) {
    int z;
    if (x > y) {
        z = x;
    } else {
        z = y;
    }
    return z;
}

另外,建议在if语句中加上花括号,以增加代码的可读性和可维护性。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-10-12 17:37:17 | 显示全部楼层
你好!根据你提供的代码,我注意到你在输入数据时使用了%d,%d作为格式化字符串来读取两个整数。这是不正确的格式化字符串,应该只使用%d来读取整数。

以下是修正后的代码:
#include <stdio.h>int max(int x, int y) {    int z;    if (x > y)        z = x;    else        z = y;    return z;}int main() {    int a, b, c;    scanf("%d%d", &a, &b);    c = max(a, b);    printf("max = %d\n", c);    return 0;}
请注意,我将scanf语句中的%d,%d改为了%d%d,这样就可以正确地读取两个整数。另外,我将原来的printf语句中的输出格式修改为max = %d\n,以保证输出的结果符合题目要求。

希望能帮到你!如果你有其他问题,请随时提问。

球一个最佳答案谢谢啦!这对我非常重要!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-10-12 21:15:22 | 显示全部楼层
Mike_python小 发表于 2023-10-12 17:37
你好!根据你提供的代码,我注意到你在输入数据时使用了%d,%d作为格式化字符串来读取两个整数。这是不正确 ...

谢谢大佬 但是报错了 贴不了照片 所以我直接搬报错信息过来了

Error: Invalid type ' int' in declaration of 'a,b,c'
错误文件路径(error file path):/var/mobile/Containers/Data/Application/E1E9F8B6-7560-494A-B186-4B76850B29F6/Documents/KepData/
script/4.cpp
哪行出错(wrong line):11
Error: Symbol int abc is not defined in current scope
错误文件路径(error file path):/var/mobile/Containers/Data/Application/E1E9F8B6-7560-494A-B186-4B76850B29F6/Documents/KeepData.
script/4.cpp
哪行出错(wrong line):11
!!! return from main() function
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-10-12 21:16:11 | 显示全部楼层
isdkz 发表于 2023-10-12 17:36
这段代码中只输出了变量a的值,这可能是因为在输入时使用了逗号分隔符,而不是空格。修改scanf语句中的逗号 ...

谢谢大佬指点 你的代码真好看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-10-7 07:24

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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