| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1757 人关注过本帖
标题:代码是栈溢出问题(用循环也溢出了),求教。
取消只看楼主 加入收藏
宁缺T
Rank: 1
等 级:新手上路
帖 子:21
专家分:8
注 册:2019-9-12
结帖率:87.5%
收藏
已结贴  问题点数:20 回复次数:1 
代码是栈溢出问题(用循环也溢出了),求教。
程序代码:
#include<stdio.h>
float f(float *a1,float *c1,int n1){
    int k=0;
    int j=n1;
    if(j==1)
      return a1[1]=(a1[0]+a1[2])/2-c1[1];
    else
        a1[j]=(a1[j-1]+a1[j+1])/2-c1[j];
        f(a1,c1,n1-1);
   

}
int main(){
    int n,i;
    float d;
    float c[1000]={0.0};
    float a[1000]={0.0};
    scanf("%d",&n);
    scanf("%f%f",a,a+n);
    for(i=0;i<n;i++)
        scanf("%f",c[i]);
    d=f(a,c,n);
    printf("%f",d);
    return 0;
}
这是递归的
---------------
程序代码:
#include<stdio.h>
float f(float *a1,float *c1,int n1){
    int k=0;
    int j=n1-1;
    while(j>=1)
    {
        a1[j]=(a1[j-1]+a1[j+1])/2-c1[j];
        j--;
    }
    return a1[1];
}
int main(){
    int n,i;
    float d;
    float c[100]={0.0};
    float a[100]={0.0};
    scanf("%d",&n);
    scanf("%f%f",a,a+n+1);
    for(i=0;i<n;i++)
        scanf("%f",c[i]);
    d=f(a,c,n+1);
    printf("%f",d);
    return 0;
}
这是循环的
-------------
以下是问题
图片附件: 游客没有浏览图片的权限,请 登录注册
图片附件: 游客没有浏览图片的权限,请 登录注册

搜索更多相关主题的帖子: scanf return int float 溢出 
2019-10-19 20:50
宁缺T
Rank: 1
等 级:新手上路
帖 子:21
专家分:8
注 册:2019-9-12
收藏
得分:0 
回复 2楼 纯蓝之刃
感谢大佬抽空来看我的代码,但是我有点问题想请教一下大佬
1.你的代码中的f(a1,c1,n1)他是如何递归到能使j==1的?

2.scanf('%f',c[i]),编译器为什么不报错呢?
希望大佬的不吝赐教。


Stay hungry,Stay foolish.
2019-10-20 20:36
快速回复:代码是栈溢出问题(用循环也溢出了),求教。
数据加载中...
 
   



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

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