C語言問題requires l value

2022-08-05 13:57:09 字數 762 閱讀 8340

1樓:脫豆言蓄

1你define的n和下面變數重複了

2定義的陣列a[n]

在n還沒有定義值的時候就定義了

應該先輸入n然後定義a[n]

#include "stdio.h"

//#define n 10000

int main()

pfirst=&a[0];

psecond=&a[0];

for(i=1;i

if(*psecond>a[i])

}printf("%d %d",*pfirst,*psecond);

printf("\n");

return 0;}

2樓:漢安寒厲豪

基本是對的,主要是define部分存在問題// 如果define n

#define n 10000

// 這樣會在預編譯階段,把**中所有的n全部替換為10000,所以在輸入語句

scanf("%d", &n);

// **會變成:

scanf("%d", &10000);

// 顯然是非法的,所以報錯了。

// 要解決的話,可以改成:

#define n 10000 // 這裡修改了的話,定義陣列的部分也要改成n哈~

// 或者是修改底下的變數 n 的名字變成其他的// 另外,輸入三個數的部分,不需要加空格哈~會自動過濾掉的。用下面這句就好了哈~

scanf("%d", &a[i]);

c語言問題,C語言問題

struct student拼寫成struct studnt了。拼寫錯誤 struct studnt沒有定義,所以無法執行sizeof。include typedef struct student int main c語言問題?嗯你的理解是對的,break就是用來跳出的switch,如果沒有brea...

c語言問題,c語言問題

首先你這個程式輸入個數是不可控的,n沒起到作用,因為你控制輸入的迴圈已經規定了i是從0到99,必須要輸入100個。而你這個 自認為統計總人數 的n n i,相當於n 1 2 3 那是不可能的。while xh i scanf d d xh i sg i n i sum sum sg i 用美元符號做...

c語言問題,C語言問題

if判斷句中,x 1 是真命題,所以x被賦值為1,y x,所以y被賦值為1。下一條語句,y y 1,所以y 2。所以x 1,y 2 c語言問題?這句迴圈的bai意義是從索引9開始du 向左遍歷元素,直到i j結束。zhi 整段代dao碼是接收鍵盤輸版入一個值,按大小順序插權入到陣列。第一個迴圈是從陣...