簡單C語言,可以幫我看看這個程式錯誤在哪嗎?為什麼執行不了呢

2022-12-04 04:46:16 字數 1713 閱讀 3921

1樓:匿名使用者

#include

int main() { int n,max=0,min=0,i,j,k;

scanf("%d",&n);  i=0;

while ( n!=0 ) {

k=n%10;

if ( i==0 ) min=max=k;

else if ( maxk ) min=k;

i++; n/=10;

printf("%d %d %d\n",i,max,min);

哪個位大神可以幫我看下這個c語言的程式設計錯在**了嗎?為什麼執行不了??如圖

2樓:硪丨曖戀

當然錯了b並不是十位數,應該寫成b=i%100-a*10,還有最前面的scanf沒用可以刪去

參考:#include

main()

3樓:匿名使用者

你已經輸入了一個i了,為什麼for裡面還要賦值一個100給他

簡單的c語言程式,請幫我看看這段程式為什麼就是執行不了。

4樓:匿名使用者

確實沒有辦法執行,因為陣列v沒有定義

5樓:匿名使用者

可能是指標沒有初始化、陣列下標越界等原因引起的。scanf("%c%c",gamer);改為scanf("%c",&gamer);試試。

c語言,麻煩幫我看看這個程式**不對?可以執行,但結果不對

6樓:月下憶嬌娘

第一:既然不用day 為什麼要宣告該陣列?

第二:既然copy的長度不到20,為什麼要輸出month[20]?

第三:由於copy 的長度不夠,列印出的字元值必然是一個隨機值或者『\0』

第四: 顯然你的目的應該是printf("%s\n", month);

7樓:

printf("%c\n",month[20]);這句話有問題,陣列不僅越界了,而且輸出的只是一個字元,但你複製的字元又沒有那麼長,應該改成這樣printf("%s\n",month);。

一個簡單的c語言程式,求各位大佬幫忙看看為什麼報這麼多的錯誤??

8樓:匿名使用者

第二行和第三行行末的分號去掉

巨集不是語句,不需要分號結尾

9樓:

eof好像只能在讀檔案中使用,讀取鍵盤輸入應該不能用吧?還有巨集定義不能用分號結尾。

c語言的簡單程式設計問題 有沒有人能幫我看看我編的錯在哪了?

10樓:匿名使用者

錯誤在於這一句:

if (p[i+j]!='*') a[i++]=p[i+j]事實上,用於對陣列a順序寫入字元的下標i,和對陣列p遍歷使用的下標i+j 兩者不應該相互影響,而你的程式中,卻對i做了自增,導致後面的p[i+j]沒有正常的挨個遍歷,而是跳過了一些字元。

正確的做法是應該對陣列a的處理另外使用一個下標。

void fun(char *a)

n = i;  //n表示前導*號結束的位置,也是實際有效字母開始的位置

for(j=0;p[i+j] != '\0';j++)}a[n]='\0';  //在陣列a的結束位置寫入\0字元結束}

進來看看這段C語言程式哪錯了,C語言程式 進來看看

你的程式達不到你要求的目的,只是帶著陣列裡的元素跑了一圈而已,輸出結果應該和你輸入時的次序一樣。既然是從小到大排列,那肯定得有大小的比較,而在你的fun 函式裡只有數值的交換,而沒有大小的比較。建議修改你的fun 函式以實現你所說的排序功能。這個就是 t fan x 這個函式沒有返回值,不用int型...

C語言,幫我解釋下這個小程式

scanf在遇到空格時就結束了,所以你輸入的how are you其實只有how被讀進去了。所以長度就是3了。你之前用memset函式的時候,就把a 3 置成0了,然後你輸入的又只有how被讀入,所以此時a 3 還是0嘛。空格是不是就結束了?因為從鍵盤輸入時,scanf遇到空格就認為輸入結束了,所以...

c語言看程式寫結果,C語言高手來看看,看程式寫結果,告訴我步驟

這麼基本的問題。static int a表示這個a是一個靜態變數具有靜態儲存時期 內部連線 塊作用域,因此呢它和自動變數不同,每次函式結束自動變數會被刪除但是這個a不會,所以 n fun3 k 會改變一次a的值,使a等於5n fun3 m 接著上次的改變繼續改變a,所以這裡的a就成了6至於下面這題更...