我的c語言題不對,c語言沒錯但是結果錯了

本文目錄一覽:

c語言這題老是不對。

void fun(int *shu , int *t0);

這個不用定義指針,沒必要,直接定義

void fun(int shu , int t0);

就可以

fun(int shu,int t0)

{

char a[100000];

int flag=0;

int i=0,j;

if(shu0)

{

shu=abs(shu);

flag=1; //flag標記shu是否為正數,正數為0負數為1

}

while(shu) //取出各個位

{

a[i]=shu%t0; //取餘數

shu/=t0;

i++;

}

for(j=0;ji;j++) //轉換為字符串,i就是轉換的長度

if(a[i]10) //小於10的轉換為0~9的ascii

a[i]+=48;

else //否則轉換為A~F

a[i]+=55;

if(flag==1) //這裡是看是否為負數,是負數加上一個負號,長度再加一位

{

a[i]=’-‘;

i++;

}

a[i]=’\0′;

strrev(a); //兩個函數就是反序和輸出,要是不讓用,可以寫代碼

puts(a); //其實很簡單就可以實現,反序用for循環一半交換,輸出用循環輸出就可以

}

c語言題目鋪地毯,為什麼我的不對?急。

程序沒有錯。

可能的問題是:不清楚地毯鋪設的最大坐標。若是超過了1999,你的程序就數組越界了。

第二,這程序的時間複雜度稍大了些。

可以把這些數據放入一個4*n的二維數組中,全部讀入數據後,從n往回檢查,若坐標位於一個地毯的覆蓋範圍之內,就結束查找,輸出該數據的編號;否則全部查找失敗後,仍未找到的則輸出-1。

C語言,這道題我寫的哪裡不對?

1、scanf用錯了,應該是scanf(“%c”,ch);

2、換行符\n的ascii是10,你寫ch=255那就是死循環了

3、按題目要求做就行了,沒必要去判斷不在這個範圍內的東西

4、c里字符和數字是可以自動轉換的,不需要你去記ascii碼

#includestdio.h

int main() {

char ch;

int a=0,n=0,b=0,t=0;

while((ch=getchar())!=’\n’) {

if(ch=’0′ ch=’9′) n++;

else if(ch=’a’ ch=’z’ || ch=’A’ ch=’Z’) a++;

else if(ch==’ ‘) b++;

else t++;

}

printf(“char:%d number:%d blank:%d other:%d”,a,n,b,t);

}

我的這個關於c語言的題不對,幫忙看看

合併雙鏈表是錯誤的!!!我給你理清思路,你自己去改!

你這的這條語句:r=(struct node*)malloc(sizeof(struct node *)*8);

效果是,在內存中開闢8個單元的空間,每個單元是(struct node *)類型

即:每個單元是一個指針,指向一個struct node 結構體。

而r是該開闢空間的首地址,也是第一個內存單元的指針。

所以,當你寫p=La-next ; r-next = p ;的時候

就是用了錯誤的內存,因為 r 本身就是一個指針,其本身沒有next指針

所以當它還沒有指向某個結構體的時候,r – next 是不存在的東西,是野指針。

你使用 r – next的的話,事實上是不知道操作了哪個結構體的next指針的。

如果你用 r = La-next 的話是可以的,那r – next 就是La-next-next了

即指向了La表中的第二個元素。

上述是語法錯誤。

再則,合併表的思路也是錯誤的。

假如,你讓 r 指向了La鏈表的第一個元素

OK,這是沒錯的。

按照你的想法,應該是繼續讓第二個單元的next指針指向Lb表的第一個元素.

然後依次 第三個單元指向La的第二個元素,四單元指向Lb的第二元素…………

* 但是 *重點:r = r-next 操作之後,r指向的是開闢的8空間中得第二個內存單元嗎?

NO,當你使 r = La -next 之後,r-next 指向的是la-next-next了

即是La表的第二個元素,而不是第二個內存單元。

所以其實後面你寫的r = r-next 操作的不是r[1],是La表。

懂了么?所以你上面的寫發是達不到目的的。內存很複雜,學習需細心。

C語言題目,為什麼我的程序不對啊

是學校的系統吧,看起來應該不是acm,學校最煩的一點就是輸出格式的問題,或者也有可能他用多種數組來測試你這個程序,對於其他數組你的程序不匹配

C語言的題目,我怎麼做都不對,求教高手啊!!

#include stdio.h

int main()

{

int score,sum=0,i=0;

double d;

while(scanf(“%d”,score)!=EOF)//這個EOF的用法,你可以自己查資料了解一下

{ //scanf(“%d”, score);

if(-1 == score){//當輸入-1的時候停止

break;

}

else

{

sum+=score;

i++;

d=sum/i;

}

}

if(i==0) printf(“0\n”);//如果僅輸入了-1,則輸出0

else printf(“%.1f\n”, d);//得到計算的平均數的值

return 0;

}

原創文章,作者:IIZXF,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/315725.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
IIZXF的頭像IIZXF
上一篇 2025-01-09 12:14
下一篇 2025-01-09 12:14

相關推薦

  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28
  • Python作為中心語言,在編程中取代C語言的優勢和挑戰

    Python一直以其簡單易懂的語法和高效的編碼環境而著名。然而,它最近的發展趨勢表明Python的使用範圍已經從腳本語言擴展到了從Web應用到機器學習等廣泛的開發領域。與此同時,C…

    編程 2025-04-28
  • Python基礎語言

    Python作為一種高級編程語言擁有簡潔優雅的語法。在本文中,我們將從多個方面探究Python基礎語言的特點以及使用技巧。 一、數據類型 Python基礎數據類型包括整數、浮點數、…

    編程 2025-04-28

發表回復

登錄後才能評論