| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1737 人关注过本帖
标题:为什么会提示语法错误??
只看楼主 加入收藏
zqj417
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-2-16
收藏
 问题点数:0 回复次数:21 
为什么会提示语法错误??
/****递归算法:计算年龄****/
/*程序的功能是用递归方法计算五位学生的年龄.
递归公式如下:
|10 (n=1)
age(n)=|
|age(n-1)+2 (n>1)*/
/*-第0步-:包含头文件*/
#include<stdio.h>
main()
{
int num;

scanf("\nn=%d",&num);
printf("\n%d",age(num));
int age(int n) //在这一行提示语法错误,找不出毛病
{ int i,z,f[100]; //这里如果把100换成N可以吗?没调用以前N是未知的
if(n==1)
z=1;
else
{ f[0]=1;
for(i=1;i<=n-1;i++)
f[n]=f[n-1]+2;
z=f[n];
}
return(z);

}
}
搜索更多相关主题的帖子: 语法 提示 
2006-02-23 22:36
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 

没声明


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-02-23 22:41
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
里面问题多,函数定义,函数内部for循环也有问题

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-02-23 22:44
zqj417
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-2-16
收藏
得分:0 
怎么没声明啊
2006-02-23 22:56
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 

递归公式如下:
|10 (n=1)
这里和你的程序都不符合

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-02-23 22:59
URDbest
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2006-1-23
收藏
得分:0 
#include<stdio.h>
int age(int n); /*据说使用函数前有声明,不过我没用这句也能通过编译*/
main()
{int num;
scanf("\nn=%d",&num);
printf("\n%d",age(num));} /*把最后一个花括号提到这里来,函数不能镶嵌定义吧*/
int age(int n)
{int i,z,f[100];
if(n==1)
z=1;
else
{f[0]=1;
for(i=1;i<=n-1;i++)
f[n]=f[n-1]+2;
z=f[n];
}
return(z);
}

2006-02-23 23:00
zqj417
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-2-16
收藏
得分:0 
以下是引用feng1256在2006-2-23 22:59:00的发言:

递归公式如下:
|10 (n=1)
这里和你的程序都不符合

这个 我没注意
但是不影响程序运行啊

2006-02-23 23:01
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
以下是引用URDbest在2006-2-23 23:00:00的发言:
#include<stdio.h>
int age(int n); /*据说使用函数前有声明,不过我没用这句也能通过编译*/
main()
{int num;
scanf("\nn=%d",&num);
printf("\n%d",age(num));} /*把最后一个花括号提到这里来,函数不能镶嵌定义吧*/
int age(int n)
{int i,z,f[100];
if(n==1)
z=1;
else
{f[0]=1;
for(i=1;i<=n-1;i++)
f[n]=f[n-1]+2;
z=f[n];
}
return(z);
}

for 循环还是不对

#include <stdio.h>
#include <conio.h>
int Age(int n);

void main()
{
int num;

scanf("%d",&num);
printf("\n%d\n",Age(num));
getch();
}

int Age(int n)
{
int i,f[100];

f[0]=1;
for(i=1;i<=n-1;i++)
f[i]=f[i-1]+2;
return f[n-1];
}


叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-02-23 23:02
zqj417
Rank: 1
等 级:新手上路
帖 子:55
专家分:0
注 册:2006-2-16
收藏
得分:0 

前面那个IF是多余了但是也不会错啊,运行一闪而过
#include<stdio.h>
main()
{
int num;


scanf("\nn=%d",&num);
printf("\n%d",age(num));}

int age(int n)
{ int i,z,f[100];
if(n==1)
z=1;
else
{ f[0]=1;
for(i=1;i<=n-1;i++)
f[i]=f[i-1]+2;
z=f[n-1];
}
return(z);


}

2006-02-23 23:34
feng1256
Rank: 4
等 级:贵宾
威 望:14
帖 子:2899
专家分:0
注 册:2005-11-24
收藏
得分:0 
getch();

叁蓙大山:工謪、稅務、嗣發 抱歉:不回答女人的问题
2006-02-23 23:38
快速回复:为什么会提示语法错误??
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.086216 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved