2 therightoforange Therightoforange 于 2015.06.23 18:55 提问

看了不下十遍,看不出语法错误在哪 C语言,在VS2013中运行

#include
//主函数
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;
}
//求两个整数中的较大者的max函数
int max(int x, int y)
{
int z;
if (x > y)z = x;
else z = y;
return(z);
}

17个回答

d323641onlydk
d323641onlydk   2015.06.23 19:03

把Max的声明提到main外面

d323641onlydk
d323641onlydk 回复Therightoforange: #include <stdio.h>
大约 3 年之前 回复
king_lu
king_lu c 标准不允许在函数体内声明其他函数。但是 gcc扩展中支持在函数内定义另一个函数,但是该函数只能在该函数内被调用。
大约 3 年之前 回复
Therightoforange
Therightoforange 可以的话你运行看看吧,我一直弄不好
大约 3 年之前 回复
weixin_29252521
weixin_29252521   2015.06.23 19:00

include 啥?

Therightoforange
Therightoforange   2015.06.23 19:02

#include
//主函数
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;
}
//求两个整数中的较大者的max函数
int max(int x, int y)
{
int z;
if (x > y)z = x;
else z = y;
return(z);
}

Arvin_ghost
Arvin_ghost   2015.06.23 19:05

include什么?报什么错了?是不是提示函数不安全?

Arvin_ghost
Arvin_ghost 函数声明应该放到main外面吧
大约 3 年之前 回复
Therightoforange
Therightoforange 未定义标识符
大约 3 年之前 回复
q286989429
q286989429   2015.06.23 19:11

#include <stdio.h.
函数声明 在int main之前比较好

Therightoforange
Therightoforange 这是这是教科书里的
大约 3 年之前 回复
zhangweilst
zhangweilst   2015.06.23 19:12

应该是函数声明的问题,不要放在main里面。为什么要把max声明放在main里,故意的?

Therightoforange
Therightoforange 我刚学没几天,你能不能把代码改下然后发上来
大约 3 年之前 回复
u013806582
u013806582   2015.06.23 19:24

// main(){} 尽量少写函数。
// 遵守良好的编码规范从细微养成。****

u011042188
u011042188   2015.06.23 19:34
 int max(int x, int y);
 int main()

把函数声明放在外面

qq_29253369
qq_29253369   2015.06.23 19:51

#include “stdio.h”//你包含的头文件没说明

//求两个整数中的较大者的max函数
int max(int x, int y) //一般来说被调函数写前面。

if(x<y)
return y;
else
return x;

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

bullzerone
bullzerone   2015.06.23 20:01

在c和c++中,一个函数的定义不能完全包含于另一个函数中,主函数也不行。或者说,一个函数可以在其内部调用其他函数,但是不能含有其他函数
的完整声明和实现。
常用的形式就是先先声明,后实现,

#include

int max(int x,int y);//提前声明max(),在主函数之后实现。这样主函数知道有max(),然后回去后面找到max()的实现部分
//或者你直接把max()函数的声明和定义都放在主函数之前。
//主函数
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;
}
//求两个整数中的较大者的max函数
int max(int x, int y)
{
int z;
if (x > y)z = x;
else z = y;
return(z);
}

共17条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
VS2012编译运行VS2013的程序以及VS中运行C语言
AVS程序是在VS2013中编译的工程,用VS2012运行是老是提示错误 提示无法打开一个文件,无法找到“V120”,这时候可以右键工程,属性通常,平台设置(Platset)为v110, VS2012 v110 VS2013 v120 VS2010 v100
c语言一行写不下该怎么换行
c语言一行写不下该怎么换行    参考答案   用连接符 \   比如   char a[]={A,B,A,B,A,B,A,B,A,B,A,B,A,B, \   C}
初学者使用vs2013编译c语言程序遇到问题及解决办法。
初学者用vs2013编译c语言程序遇到问题以及解决办法。
利用VS2013编译C语言程序
利用VS2013编译C语言程序
查找c语言程序中基本的语法错误
/*思路寻找是否比配 1寻找的方法是什么 2.是什么时候寻找 3是找的对不对*/ #include int brace=0,brack=0,paren=0; void in_quote(int c); void in_comment(void); void search(int c); int main(void) { extern int brace,brack,paren; int
C语言中的语法错误和语义错误
C语言中语法错误和语义错误的区别
如何使用VisualStudio2013编写和调试c语言程序
觉得很多基础学习者对VS不太熟悉,我就转一篇觉得还不错的。转自:http://jingyan.baidu.com/article/f3ad7d0fe7ca0d09c3345b84.html 现在大多数同学用的电脑都是Windows 8和8.1,使用VC6.0存在兼容性问题,对于初学者来说是一件很麻烦的事情。而Visual Studio 2013 是一个很强大的工具,很多同学选择了vs2013
【VS2013】C语言调用Python脚本环境搭建、函数调用和调用demo.py脚本an
1、环境配置: 1)安装VS2013(注意语言包一定要正确安装) 如果提示--MS VS 检测到已安装的语言资源版本不匹配。则如下处理: 建立vs_langpack.exe的快捷方式,然后修改路径,后面加上“空格 /Uninstall” 例如:(“E:\Downloads\vs_langpack.exe /Uninstall”) 然后修复安装即可 2)安装PTVS 2.2 VS 2
查找C语言中的基本语法错误,如圆括号,左括号,花括号不匹配等
版本一:#include <stdio.h>#define MAXLINE 1000 /* max input line size */ char line[MAXLINE]; /*current input line*/int getline(void); /* taken from the KnR book. */ int main() { int len=0; int t=0;
语法错误 : 缺少“;”(在“类型”的前面)”—— C语言标准
1、发现问题最近用VS2010处理一段C代码时发现这样一类错误,源程序如下:#include <stdio.h> #include <stdlib.h>int main(int argc, char **argv){ fprintf(stdout, "Hello C\n"); for (int i = 0; i < 10; i++){ fprintf(stdout,