| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1640 人关注过本帖
标题:求助C语言程序,急!!!!!在线等!!!!
取消只看楼主 加入收藏
misty0311
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-1
收藏
 问题点数:0 回复次数:10 
求助C语言程序,急!!!!!在线等!!!!
自然数列1,2,3……N,擦去其中一个数K,其余的数的平均值为A又B分之C((A*B+C)/B) 求K。

#include <stdio.h>
fun(n,a,b,c)
{int k;
for(k=0;k<n;k++)
{if(k==n*(n+1)/2-((n-1)*(a*b+c)/b))
return k;
}}
main()
{int a,b,c,k,n;
scanf("%d %d %d",&a,&b,&c);
for(n=1;;n++)
{
k=fun(n,a,b,c);
if(k)
break;
}
printf("%d",k);
}

那里出错了?求各位大大帮忙 课程设计 后天就要交了的,急啊!
搜索更多相关主题的帖子: C语言 fun int 
2008-07-01 17:06
misty0311
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-1
收藏
得分:0 
是结果错了啊   主函数中FOR循环N不知道到范围 所以是当FUN中出现K时BREAK
但K貌似始终输出的都是A的值
2008-07-01 17:20
misty0311
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-1
收藏
得分:0 
回复 2# himpo 的帖子
是结果错了啊   主函数中FOR循环N不知道到范围 所以是当FUN中出现K时BREAK
但K貌似始终输出的都是A的值
2008-07-01 17:22
misty0311
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-1
收藏
得分:0 
回复 5# himpo 的帖子
1,2,3……69     A=35 B=17 C=7  算出来擦去的数就是7
2008-07-01 18:06
misty0311
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-1
收藏
得分:0 
回复 6# cosdos 的帖子
DIVID ERROR!
2008-07-01 18:12
misty0311
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-1
收藏
得分:0 
回复 7# cosdos 的帖子
还是不对的呀
2008-07-01 18:33
misty0311
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-1
收藏
得分:0 
回复 10# cosdos 的帖子
恩 对了 多谢啦
2008-07-01 19:11
misty0311
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-1
收藏
得分:0 
回复 15# cosdos 的帖子
哎呀 又要碰到麻烦了 要麻烦你了
题目要求输出格式是
输入:文件中的第一行只有一个数M,表明随后的M行每行为一个问题的描述信息。每行都有3个数,分别为A,B,C。
输出:依次输出各个问题中的K。每行输出一个问题的解。
示例:
3
35 17  7
1  2   1
2  2   1
输出:
7
3
1
#include <stdio.h>
int fun(int n,double a[],double b[],double c[])
{int k;
double sum;
for(k=1;k<=n;k++)
{
sum=(double)((n+1)*n)/2.0;
sum-=k;
sum/=n-1;
sum-=(a*b+c)/b;
if(sum>-0.000001&&sum<0.000001)
return k;
}
return 0;
}
find(double a[],double b[],double c[])
{
int n,k;
while(getchar()!='\n');
for(n=2;;n++)
{
k=fun(n,a,b,c);
if(k!=0)
break;
return k;
}
getchar();
return 0;
}
main()
{int i,m,k[80];
double a[80],b[80],c[80];
scanf("%d",&m);
for(i=0;i<m;i++)
{scanf("%d %d %d",&a[i],&b[i],&c[i]);
k[i]=find(a,b,c);
printf("%d\n",k[i]);
}}

数组之见不能用*号乘的呀 有语法问题 应该怎么改呢?
2008-07-01 20:02
misty0311
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-1
收藏
得分:0 
回复 18# cosdos 的帖子
#include <stdio.h>
int fun(int n,double m1,double m2,double m3)
{int k;
double sum;
for(k=1;k<=n;k++)
{
sum=(double)((n+1)*n)/2.0;
sum-=k;
sum/=n-1;
sum-=(m1*m2+m3)/m2;
if(sum>-0.000001&&sum<0.000001)
return k;
}
return 0;
}
find(double m1,double m2,double m3)
{
int n,k;
for(n=2;n>0;n++)
{
k=fun(n,m1,m2,m3);
if(k!=0)
return k;
}
return 0;
}
main()
{
int i,m,k[80];
double a[80],b[80],c[80],m1,m2,m3;
do{
i=scanf("%d",&m);
while(getchar() != '\n');
}while(i!=1||m>80);
for(i=0;i<m;i++)
{
scanf("%lf%lf%lf",&a[i],&b[i],&c[i]);
m1=a[i];
m2=b[i];
m3=c[i];
k[i]=find(m1,m2,m3);
}
for(i=0;i<m;i++)
{
printf("%d\n", k);
}
}

还是不对的  FIND函数里的FOR循环 怎么是N>0?
2008-07-01 21:58
misty0311
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2008-7-1
收藏
得分:0 
回复 20# cosdos 的帖子
那N循环到什么时候结束呢 ? 没有调出循环语句啊  N一只要加到32767才跳出循环?
2008-07-01 22:30
快速回复:求助C语言程序,急!!!!!在线等!!!!
数据加载中...
 
   



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

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