當前位置:首頁 » 編程語言 » c語言沒錯為什麼運行不了
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

c語言沒錯為什麼運行不了

發布時間: 2022-10-16 14:11:15

⑴ 簡單c語言,程序顯示沒錯誤,但是總是運行不出來,為什麼呢

你只定義了6個數組,可是你用了7個元素,已經越界溢出了。你把循環改成這樣就OK了。
for(i=1;i<6;i++)
C/C++語言定義的數組是不包括本身元素,而且是從零元素開始,即你定義的應該是:
num[0],num[1],num[2],num[3],num[4],num[5];
並不包括num[6]。因此,你就會出錯。
編譯器只能檢測你的語法有沒有問題,並不能檢測隱藏的問題。所以學C語言要非常小心。

⑵ C語言編程調試後沒有錯誤但是卻無法運行是怎麼回事

無法運行可能遇到的問題:
1.
編譯沒錯,但是運行後彈出內存相關報錯------》有邏輯錯誤,或者內存調用錯誤
2.
運行直接閃退---------------》有可能該程序無任何執行結果輸出語句,或者使用編譯器(or
IDE)與操作系統不兼容
暫時只能想起這么多了。

⑶ 我的c語言程序為什麼會執行不了

程序語法上沒有問題。如果你的編譯器不支持漢字編碼,則用 英文 ASCII 字元為好。
另外,注意輸入數據 的 格式,格式不對會執行不了。
假定用英文:
#include <stdio.h>
int main(void)
{
char cType=0,dType=0;
float amount=0,rate=0;
printf("input c f c\n");
scanf("%c %f %c",&cType,&amount,&dType);
switch(dType)
{ case '1': rate = 1.5; break;
case '2': rate = 2; break;
case '3': rate = 3; break;
case '4': rate = 3.2; break;
case '5': rate = 3.5; break;
default: printf("no such dType\n"); return -1;
}
if(cType=='V') rate = rate *1.1;
if(amount>=100000) rate = rate *1.2;
printf("rate:%.2f%%\n",rate);
return 0;
}
輸入: V 12345 3
輸出: rate:3.30%
輸入: 3 12345 3
輸出: rate:3.00%

⑷ 編譯的C語言程序沒有錯誤就是運行不了怎麼回事

這個太多情況了,程序能編譯只能證明程序沒語法錯,程序有問題(如下標溢出,表達式不正確)可能導致程序無法運行或結果不正確的

⑸ C語言程序沒有錯誤,但是運行不了。

你的代碼是錯了,所以才會這樣。錯誤的地點在輸出上,也就是
最後一句
printf("%d %c %s", ss.age, ss.name, ss.sex);你定義的name是字元串,而sex是字元。所以應該改成
printf("%d %s %c", ss.age, ss.name, ss.sex);

⑹ 為什麼c語言無法運行。

代碼沒問題,可能是有的編譯器或IDE不支持編譯單個源文件。這樣的話,你需先建立一個控制台項目,然後將源文件添加到項目後,再編譯這個項目才行。

⑺ 為什麼C語言程序編譯正確但不能執行

  • 因為你的c沒有初值,while循環無法進行。另外你的演算法也有問題,while循環可改為while (m % n != 0),循環結束後最小公約數時n。

⑻ c語言的編程為什麼不能運行

首先你要明白是語言的一個整體的框架,如果你整體的框架是沒有構建好的話,那麼他是不能夠運行的,如果他裡面存在了一些錯誤,他就會導致無法運行,或者是讓你重新修改。

⑼ 為什麼我的c語言程序檢查無誤,但是運行不了

你這個是外部函數,你是不是沒有引用包含這個函數的文件(.c文件),這種情況編譯是ok的,但是運行時就沒法找到這個函數的外部定義。

⑽ c語言中輸入一個程序後顯示無錯誤,為什麼不能運行

因為編譯器所能檢測到的錯誤信息是有限的,它能檢測C語言的語法錯誤和語義錯誤,而邏輯錯誤一般是檢測不出來的. 當你輸入的程序語法和語義都沒有出錯但是邏輯出錯時,編譯會通過,但是運行的時候就通不過了,你需要重新檢查你的代碼,找出錯誤改正過來.