Llllln 发表于 2020-6-28 20:54:07

printf与scanf未定义

int max(int x, int y)
{
        int z;
        z = x > y ? x : y;
        return z;
}
void main()
{
        int max(int x, int y);
        int a, b, c;
        scanf("%d%d", &a, &b);
        c = max(a, b);
        printf("max=%d", c);
}


大佬们,这个程序是哪出现错误了呀?VS说错误有:1、使用未初始化的内存a和b   2、printf与scanf未定义,假设外部返回为int,3、无法解析的外部符号printf与scanf

永恒的蓝色梦想 发表于 2020-6-28 20:56:46

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>

int max(int x, int y)
{
    int z;
    z = x > y ? x : y;
    return z;
}

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

小甲鱼的铁粉 发表于 2020-6-28 20:57:16

int max(int x, int y);
这里不需要这一句,另外程序需要头文件
正确代码
#include<stdio.h>

int max(int x, int y)
{
      int z;
      z = x > y ? x : y;
      return z;
}
void main()
{
      int a, b, c;
      scanf("%d%d", &a, &b);
      c = max(a, b);
      printf("max=%d", c);
}

小甲鱼的铁粉 发表于 2020-6-28 20:58:30

vs的话再加一个#include<stdlib.h>
return 0 前面加一个system(“pause");

永恒的蓝色梦想 发表于 2020-6-28 20:59:21

小甲鱼的铁粉 发表于 2020-6-28 20:58
vs的话再加一个#include
return 0 前面加一个system(“pause");

直接 CTRL+F5,并不需要

小甲鱼的铁粉 发表于 2020-6-28 20:59:33

小甲鱼的铁粉 发表于 2020-6-28 20:58
vs的话再加一个#include
return 0 前面加一个system(“pause");

我说错了,在main函数结尾加,没有return 0;{:10_297:}

小甲鱼的铁粉 发表于 2020-6-28 21:00:10

永恒的蓝色梦想 发表于 2020-6-28 20:59
直接 CTRL+F5,并不需要

{:10_275:}好的,学到了

Llllln 发表于 2020-6-28 21:02:13

永恒的蓝色梦想 发表于 2020-6-28 20:56


啊啊啊啊我明白了,竟然忘了头文件,谢谢~

Llllln 发表于 2020-6-28 21:02:55

小甲鱼的铁粉 发表于 2020-6-28 20:57
这里不需要这一句,另外程序需要头文件
正确代码

明白了,竟然忘了头文件!!!谢谢~

小甲鱼的铁粉 发表于 2020-6-28 21:03:43

Llllln 发表于 2020-6-28 21:02
明白了,竟然忘了头文件!!!谢谢~

不客气{:10_256:}
页: [1]
查看完整版本: printf与scanf未定义