c語言程式不知道哪錯了,一個C語言程式的修改。不知道錯在哪了。

2021-03-22 03:09:14 字數 3098 閱讀 3648

1樓:匿名使用者

不能這樣賦值。

你可以#include"stdio.h"

struct student

s[2]=,};

int main()

另外 注意只有2個元素。

2樓:匿名使用者

你新建了s[2],然後這兩個陣列元素應該是s[0]和s[1]啊,不是s[1]和s[2]。

後面for迴圈y也應該是i < 2。

看了樓下回答我想說說我的想法:

首先《**簡潔之道》推薦的寫法是把結構體的定義與宣告放在一起寫,因為這樣能迅速定位結構體成員的元素;其次,主函式不是一定要寫return 0;的,即使不寫,程式會自動返回0給作業系統,只有主函式可以這樣,寫上return 0;只是為了讓**格式統一;最後,由於c語言裡,int main()表示對引數形式預設(可以是void,也可以是int argc, char * argv),而且學習物件導向程式語言之後,你會發現對引數預設更好,所以建議還是寫int main()。

你的**應該是:

#include

struct student

s[2] =, };

int main()

其中,只要讀入成功就會列印「succeeded.」,就不用for迴圈檢查元素了。

3樓:匿名使用者

第一個:結構體定義與申明建議不要寫一起。

第二個:結構體的初始化,注意型別。int num型別初始化成字串,char name初始化成字串。

第三個:陣列的下標從0開始引用。

第四個:主函式沒有返回或呼叫exit(0)第五個:struct結構初始化錯誤;

第六個:scanf,可變引數要傳地址

正確的寫法如下:

#include /*標準庫的標頭檔案必須這麼寫,帶雙引號的是自己定義的標頭檔案*/

#include /*可以使用exit()函式*//*語言中儘量不要使用幻數,看不出代表什麼內容,因此*/#define bufsize 2

struct student ;

/*主函式或入口函式推薦這樣寫*/

int main(void) ,};

for(i=0;i < bufsize; i++) \n",i,

std[i].num,

std[i].name,

std[i].grade);}

/*0代表未出錯返回,下面兩種方式二選其一*/exit(0);

/*return 0;*/}

一個c語言程式的修改。不知道錯在哪了。

4樓:風之岸

e:\xp\shiyan.cpp(7) : error c2632: 'long' followed by 'long' is illegal

第7行 錯誤,重複關鍵字了

正確應是 long d = 100000000000;

5樓:匿名使用者

vc的編譯器不認識型別 「long long」 ,vc裡應該是int64

6樓:五雷轟頂的雷神

因為vc++6.0的編譯器並不是很符合c++11的標準,建議下一個mingw

一個c語言程式,不知道哪兒錯了

7樓:匿名使用者

基本上都是些語法錯誤

給你修改了下,下面是改好的:

#include

#include

#include

int menu()

void test(int sum)

else

if(c!=a+b)

else

break;

case 1:if(a

printf("%d:%d-%d=",i,a,b);

scanf("%d",&c);

if(c!=a-b)

else

break;

default:break; }}

printf("%d errors!\n",error);

printf("your mark is %d.\n",(sum-error)*100/sum);

} void main() }

8樓:匿名使用者

編譯的時候會告訴你哪錯了啊.是不是沒有編譯環境在紙上寫的啊?

c語言程式錯在哪?

9樓:匿名使用者

#include

int main()

printf("%.2f\n",sum);

}return 0;}

一個c語言程式不知道哪錯了求解

10樓:匿名使用者

#include

#include

int main()//

11樓:馮虛御風

你想開方嗎?

將c=squrt(a*a+b*b);改為:

c=sqrt(a*a+b*b);試試

12樓:

c=squrt(a*a+b*b); 這句中的函式名寫錯了。求平方根的函式應該是sqr吧。

13樓:葉雪渡夜

3)'squrt' : undeclared identifier。。。單詞寫錯啦。多了個u

然後這麼一改問題四就不存在了

14樓:匿名使用者

初學c語言吧?您的程式**本身沒有什麼錯誤。這個錯誤應該是由於缺少.

h標頭檔案對應的.lib導致的。這通常是由於編譯器的配置引發的,沒有能給編譯器提供.

h與.lib的正確位置,會導致此類問題發生。

建議你用turbo c學習c語言,通常的教材也大多基於這個軟體進行教學的。當然,除此以外,也還有其他的一些c語言工具。visual c++本身主要用於windows平臺下的c++程式開發,就學習c語言而言,它太大,也太複雜了。

15樓:絕情—離慶

#include

#include

main()

c語言錯誤,不知道是什麼,c語言一個錯誤,不知道是什麼

給程式修改如下兩處即可 將 search函式的定義放在main函式前或者將 search函式在main函式前要進行宣告 main函式中float search p 用法不對,float search 是一個完全無意義 錯誤的用法,其不是一個變數,不用定義,改語句直接修改為 float p即可。修改後...

C語言程式,一個C語言程式

while後面為什麼要有分號?這是一個只有控制條件而沒有控制體的迴圈。這樣的迴圈其實將控制體的內容放在了控制條件內,這樣是完全可以的。至於是前 還是後 把這個程式這樣拆分一下,就能看來了 while x 0 這樣兩個問題就都清楚了,其實那一句要表達的意思就是這麼個意思。這道題的考點就是判斷跳出後x的...

c語言程式的問題,一個c語言程式的問題

r fun x y x y z 是呼叫你定義的函式 x y x y 對應函式裡的第一個引數 括號裡面是三個表示式 由於c語言的運算是從右向左結合 因此有效引數為x y 13 z 對應函式裡的第二個引數 z 是先將自身的值傳進函式 再進行自減運算 即傳進去的第二個引數為8 r fun 意思是r的值引用...