记住学 发表于 2023-3-29 00:19:56

这个编程表示什么意思,用在哪

#include <stdio.h>
int max(int a,int b);
main()
{
    int x,y,z;
    int max(int a,int b);
    printf("input two numbers:\n ");
    scanf("%d%d",&x,&y);
    z=max(x,y);
    printf("maxmum=%d",2);
}
int max(int a,int b)
{
    if(a>b)return a;else return b;
}
运行结果如下:
input two numbers:
88
45
maxmum=2
---------------------------------------------------------
Process exited after 8.098 seconds with return value 0
请按任意键继续. . .

isdkz 发表于 2023-3-29 00:24:35

这段代码是一个用 C 语言编写的简单程序,其目的是找出并输出两个整数中的较大者。然而,程序中存在一个错误,导致输出结果不正确。

先来分析一下代码:


[*]包含头文件 <stdio.h>,用于支持输入输出操作。
[*]定义了一个名为 max 的函数,用于比较两个整数 a 和 b,返回较大者。
[*]主函数 main 中,定义了三个整数变量 x、y 和 z。
[*]通过 printf 提示用户输入两个整数。
[*]使用 scanf 从输入读取两个整数并分别赋值给 x 和 y。
[*]调用 max 函数,将 x 和 y 传递给它,返回结果赋值给 z。
[*]使用 printf 输出结果。但这里存在一个错误,输出结果中的 2 应该替换为变量 z。


要修复这个错误,将代码中的 printf("maxmum=%d",2); 修改为 printf("maxmum=%d",z);。

修复后的代码应如下所示:

#include <stdio.h>
int max(int a,int b);
main()
{
    int x,y,z;
    int max(int a,int b);
    printf("input two numbers:\n ");
    scanf("%d%d",&x,&y);
    z=max(x,y);
    printf("maxmum=%d",z);
}
int max(int a,int b)
{
    if(a>b)return a;else return b;
}


现在,当你运行程序并输入两个整数时,如:88 和 45,输出结果将正确显示为:

input two numbers:
88
45
maxmum=88

记住学 发表于 2023-3-29 00:45:31

isdkz 发表于 2023-3-29 00:24
这段代码是一个用 C 语言编写的简单程序,其目的是找出并输出两个整数中的较大者。然而,程序中存在一个错 ...

谢谢

isdkz 发表于 2023-3-29 00:46:20

记住学 发表于 2023-3-29 00:45
谢谢

如果答案对你有帮助的话,给个最佳呗{:5_92:}

神荼Q 发表于 2023-3-29 07:56:41

我试着运行之后,显示
maxmum=32767main.c:3:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
    3 | main(),这个,这个怎么修改呀?

myd0311 发表于 2023-3-29 08:19:31

{:10_277:}

记住学 发表于 2023-3-29 19:30:17

神荼Q 发表于 2023-3-29 07:56
我试着运行之后,显示
maxmum=32767main.c:3:1: warning: return type defaults to ‘int’ [-Wimplicit- ...

我是新手,不过上边那个程序运行不出main这些吧
页: [1]
查看完整版本: 这个编程表示什么意思,用在哪