1樓:第一碗羊雜割
你需要把這句。
scanf("%d", weight);
改為scanf("%d", &weight);
因為 scanf 會把讀取到的整數存入 weight 所在的記憶體位址中,所以需要加 & 符號來取得 weight 所佔記憶體的位址。改完以後就可以正常執行了。
2樓:網友
scanf("%d",weight)
改成scanf("%d",&weight)
scanf中變數要加上&,表示取變數的位址。
c語言程式執行後 出現exe停止工作 為什麼呢?
3樓:爤兜
c語言程式執行出現exe停止工作的原因是因為記憶體溢位和編譯器錯誤。
第一種:記憶體溢位。
記憶體溢位(out of memory)通俗理解就是記憶體不夠,程式所需要的記憶體遠遠超出了主機內安裝的記憶體所承受大小,就叫記憶體溢位。系統會提示記憶體溢位,有時候會自動關閉軟體,重啟電腦或者軟體後釋放掉一部分記憶體又可以正常執行該軟體。
第二種:編譯器錯誤。
舉例說明:1、除以零。
2、陣列越界:int a[3]; a[10000000]=10。
3、指標越界:int * p; p=(int *)malloc(5 * sizeof(int));p+1000000)=10。
4、使用已經釋放的空間:int * p; p=(int *)malloc(5 * sizeof(int));free(p); p=10。
5、陣列開得太大,超出了棧的範圍,造成棧溢位:int a[100000000],沒有開闢記憶體 list l=(list)malloc(sizeof(struct lnode))。runtime error (執行時錯誤)就是程式執行到一半,程式就崩潰了。
4樓:網友
這種情況叫做 runtime error (運bai行du
時錯zhi誤)。
在 windows 7 上這樣提dao示:
runtime error (執行時錯誤回)就是程式執行到答一半,程式就崩潰了。
比如說:除以零。
陣列越界:int a[3]; a[10000000]=10;
指標越界:int * p; p=(int *)malloc(5 * sizeof(int));p+1000000)=10;
使用已經釋放的空間:int * p; p=(int *)malloc(5 * sizeof(int));free(p); p=10;
陣列開得太大,超出了棧的範圍,造成棧溢位:int a[100000000]
5樓:電泡泡
a[6][6]下標是a[0~5][0~5]你的下bai面這段**du
for(i=2;i<7;i++)
for(k=1;k<=i-1;k++)
a[i][k]=a[i-1][k]+a[i-1][k-1];
迴圈已經越界了,計算機。
zhi找不到dao指定的區域,自然會跳出程版序,計算機程式設計邊。
6樓:郝在益
a[6][6]是從a[0][0]到a[5][5]的。
for(i=0;i<7;i++)
a[i][0]=1;
這裡你的i可以等於6,超過了範圍,所以就不行咯。
c語言執行停止工作
7樓:學霸要放養
c語言已停止工作的原因:
肯定會停止工作了,你的陣列越界了,你最多能訪問到a[9],你n初始值為9然後又加i直接越界,說白一點,a得下標只能為0到9
8樓:養蘭芝
你定義的c是乙個字元,當然不能儲存乙個字串,而且如果你的c確實表示字串的話,scanf("%s",&c);中的&是不需要的。
9樓:網友
當然不行啦,你怎麼可以用乙個字元來存放乙個字串。可以定義乙個陣列來存放字串。
10樓:花樣_花心
肯定有錯了。第六行,c只是個字元,不能用%s,而要用%c,第7行輸出也得是%c;
11樓:匿名使用者
char c, 字元型的c,佔乙個位元組,只能儲存乙個字元~
你可以這樣定義 : char c[100]; 這樣輸入100個字元之內都不會出問題了~
為什麼執行c語言程式設計時停止工作
12樓:網友
你的scanf語句應該改為scanf("%lf",&n);
這裡有兩個問題,第乙個是n是double型別,對應輸入輸出是%lf的格式,%d是整形輸出。
第二個是輸入語句的「%lf」是輸出格式,&n是輸入對應的變數,中間需要用,分開,不能寫在一起;
其次,你的printf("imul=%d",imul);也要該做%lf,請參考。
c語言exe 已停止工作問題
13樓:網友
肯定會停止工作了,你的陣列越界了,你最多能訪問到a[9],你n初始值為9然後又加i直接越界,說白一點,a得下標只能為0到9
14樓:昝和儲平寧
貼出的**裡沒有關於5呼叫的那部分。一般出現exe停止工作,是因為非法訪問記憶體導致。
C語言編寫簡單的C語言編譯器?急!謝謝大家
不太理解lz說什麼,黑框裡是輸入a的值還是a值還有公式。以下隨便寫的。main 求乙個最簡單的適合初學者的c語言編譯器 c free和vc 都可以,比較推薦c free吧,畢竟是有中文的,vc也有中文,不過是漢化過的,這兩者也沒啥區別,主要是vc不太相容win7和win8,畢竟較老了,而c free...
開發C語言的編譯工具有哪些,各自的有什麼特點
c語言編譯器 還是有的。turbo c這個古老的c語言編譯器還是要給出的,畢竟問題問的是c語言的。像 那些微控制器 和 一些 特殊領域 只能用c 不一定說c 就是者緩好的。c和c 的區別就是效率問題。作為我們平時應用的軟體來說 c 和c 這點效率 可以不用考慮,但是在某些特殊的領域,他們卻更關注漏鉛效...
c語言裡的FOR原理,C語言中巢狀迴圈的執行原理是什麼(詳細點)應注意什麼細節?
親,是for語句迴圈一次就操作一次,因為它是for語句的乙個巢狀語句,功能就是計算1 2 3 100的值。如果改成 for i 1 i 100 i i sum sum i 那麼就是你說的第二種情況了,即迴圈到for結束才把i的值帶入進去給sum賦值,此時for迴圈的語句體為一空語句。望能幫到您啊!對...