CodeBlocks C编程错误

时间:2019-02-10 16:12:01

标签: c codeblocks

我的程序有什么问题? <?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),而是进入了无限循环!

1 个答案:

答案 0 :(得分:1)

您忘记了coshyper函数的花括号。函数主体必须包含在定义范围的花括号中。

这就是为什么说expect declaration specifiers before 'i','for' and 'return'

您忘记了coshyper函数的花括号。函数主体必须包含在定义范围的花括号中。

这就是为什么说expect declaration specifiers before 'i','for' and 'return'

其他需要注意的严重错误:

  1. 不包括math.h库并使用pow
  2. 在循环中不更新i的值: for(i= 1; i<= n-1; i>= n+1)
    应该是:for (i= 1; i<= n-1; i++)
  3. 从主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');