请教各位老师:这个C程序哪儿有问题?

来源:百度知道 编辑:UC知道 时间:2024/05/14 18:58:22
main()
{
float temper[31];
float sum=0;
int num,day=0;
float *p;
p=temper;
do
{
printf("please enter the temperature for day %d:",day++);
scanf("%f",p);
}
while(*(p++)>0);
p=temper;
num=day-1;
for(day=0;day<num;day++)
sum+=*(p++);
printf("the average is %4.1f\n",sum/num);
}
一运行,系统就提示说floating point formats not linked.
Abnormal program termination
我运行环境是Turbo C2.0
还是不行啊,5555

你的运行环境是什么?这段代码我用tc2.0拷贝过去可以直接运行,而且成功实现预期功能啊。没有你说的问题。

编译该程序出现以下警告:
warning C4508: 'main' : function should return a value; 'void' return type assumed
问题出在main函数的返回类型上!!!!!!
程序经过以下修改已正常运行

#include <stdio.h>

void main() //在main函数前加了一个void
{
float temper[31];
float sum=0;
int num,day=0;
float *p;
p=temper;
do
{
printf("please enter the temperature for day %d:",day++);
scanf("%f",p);
}
while(*(p++)>0);
p=temper;
num=day-1;
for(day=0;day<num;day++)
sum+=*(p++);
printf("the average is %4.1f\n",sum/num);
}

经过测试,代码基本没有问题,只是没有对输入的次数进行限制,第一次我输了35次,程序崩溃了,汗一下。第2次,我输了5个数,结果正常。

是没问题啊...你的tc 有问题吧