我的程序有什么问题?
<?php
if (isset($_POST['submit'])) {
$attid = $this->input->post('emid');
$date = date("d-m-Y");
$time = date("h:s:i A");
$eventid = $events->id;
$tm = count($attid);
for($i=0;$i<$tm;$i++) {
$at = $i+1;
$attended = $_POST[$at];
$attr = array(
"user_id" => $attid[$i],
"attended" => $attended,
"attendance_date" => $date,
"attendance_time" => $time,
"event_id" => $eventid,
);
}
}
?>
代码为:
expect declaration specifiers before 'i','for' and 'return'?
错误消息如下:
| 20 |错误:“ for”之前的预期声明说明符|
| 20 |错误:“ i”之前的预期声明说明符|
| 20 |错误:预期的声明说明符之前
编辑:将函数括在花括号中后,出现无限循环。该程序没有给出返回答案(它不是在计算answer1),而是进入了无限循环!
答案 0 :(得分:1)
您忘记了coshyper
函数的花括号。函数主体必须包含在定义范围的花括号中。
这就是为什么说expect declaration specifiers before 'i','for' and 'return'
您忘记了coshyper
函数的花括号。函数主体必须包含在定义范围的花括号中。
这就是为什么说expect declaration specifiers before 'i','for' and 'return'
其他需要注意的严重错误:
math.h
库并使用pow
i
的值:
for(i= 1; i<= n-1; i>= n+1)
for (i= 1; i<= n-1; i++)
从主as long as n is greater than 0
开始的无限循环,它将要求输入x和n值。
您只能使用一个循环,如下所示:
>
do {
printf("\nPlease enter a real value for x ");
scanf("%lf",&x);
printf("\nHow many terms to use:");
scanf("%d",&n);
answer = coshyper(x,n);
printf("\ncosh of %f is %f",x, answer);
fflush(stdin);
printf("\nDo you wish to quit (y/n)? ");
scanf(" %c",&r);
} while(r == 'n');