如果我輸入 abc def enter,為什麼輸出是 def def 而不是 abc abc?

發布 科技 2024-06-13
13個回答
  1. 匿名使用者2024-01-29

    scanf("%s%s",p,q);

    這句話的意思是這樣:

    輸入乙個字串並將其放入 p 指向 abc 的記憶體單元中,然後輸入乙個字串並將其儲存在 q 指向的記憶體單元中,因為 p 和 q 指向同乙個記憶體單元,因此 def 替換了 abc。

    所以 printf("%s%s",p,q);因此,如果要實現 abc def,可以使用以下程式。

    #include

    #include

    #include

    void main()

    char *p,*q;

    p=(char*)malloc(sizeof(char)*20);

    q=p;scanf("%s%s",p,q+strlen(p));

    printf("%s",p);

  2. 匿名使用者2024-01-28

    p=(char*)malloc(sizeof(char)*20);

    這會為 p 分配空間,但 q=p; 使 q 指向 p 的第乙個位址。

    scanf("%s%s",p,q);首先為 p 賦值,然後再為 q 賦值,因為它們是相同的位址,因此 q 的值會覆蓋 p 的值。

    如果你像這樣改變它,你就不會。

    scanf("%s%s",q,p);

  3. 匿名使用者2024-01-27

    如果您從鍵盤輸入 abc def “Enter”,輸出將:d ef def

  4. 匿名使用者2024-01-26

    選擇 def def

    p 和 q 指向同乙個記憶體塊,因此它們的結果相同。

    您的輸入語句 scanf("%s%s",p,q);

    這相當於兩次寫入相同的記憶體塊,第二次覆蓋第乙個記憶體塊。

    結果是後面輸入的結果。

  5. 匿名使用者2024-01-25

    a、 def def

    p 和 q 指向同乙個位址,因此 p 和 q 指向的字串始終相同。

    通過scanf函式讀取鍵盤輸入時,最後乙個字串將覆蓋前面的字串。 所以就是這個結果。

  6. 匿名使用者2024-01-24

    a. def def 因為 p 和 q 是同乙個資料,所以在輸入資料時,先輸入 p,先輸入 q,然後寫入 def,所以輸出 p 和 q 得到 def def

  7. 匿名使用者2024-01-23

    結果是ABCDEF,根據程式的意思,當ch為z時,執行“ch=ch-32”,在ASCII碼中,大寫和小寫字母的差值是32,所以實際上這個語句執行的結果是小寫到大寫。 當 ch 不是 z 時,該值不會更改,因此結果為 abcdef。 滿意請領養,不懂請詢問。

  8. 匿名使用者2024-01-22

    此問題的輸出是 [abcdef]。 該程式的功能是將您在鍵盤上鍵入的小寫字母轉換為大寫字母,而原始大小寫保持不變。 在字元的 asc 中,大小寫字母之間的差值正好是 32,因此結果是 abcdef。

  9. 匿名使用者2024-01-21

    如果從鍵盤輸入,abcdef “Enter”,輸出為 abcdef

  10. 匿名使用者2024-01-20

    你似乎只輸出了乙個字元。

  11. 匿名使用者2024-01-19

    輸出:abcdef

    每次回車都像使用者輸入了字元字段一樣完成。

  12. 匿名使用者2024-01-18

    p=(char *)malloc(sizeof(char)* 20);為 p 請求 20 個位元組的空間。

    q=p;將 Q 指標指向 P 指標,即上面請求的空間在這裡,P 和 Q 都指向同一塊記憶體,這樣就是上面應用的 20 個位元組,然後輸入 abc def

    scanf("%s%s",p,q);首先,接受 abc 到 p,並將 abc 分配給 p 指向的空間; 然後接受 def 並將 def 分配給 q 指向的空間,因為 p 和 q 指向同乙個記憶體,def 也會覆蓋 abc。

    因此,最終輸出也是 def

    您嘗試輸入 def abc enter,則輸出為 abc abc。 同樣,ABC 會覆蓋 def。

  13. 匿名使用者2024-01-17

    因為 q=p

    Q 和 P 指向同一位址。

    將 def 分配給 q 指向的位址後。

    就是這樣。

相關回答
16個回答2024-06-13

你的 + 和我也沒有手動輸入。

int i, j; >>>More

8個回答2024-06-13

URL(統一資源定位器)是 www 網頁的位址,就像城市地圖上的街道一樣。 URL 使用數字、行、大小和字母按特定順序排列,以確定位址。 >>>More

7個回答2024-06-13

不可以,你的電腦連線網際網絡,一般是動態IP位址,開機一次,換一次。 如果要使用拆解LP**軟體,先**安裝乙個**軟體,雙擊圖示開啟你當前的網路連線,在顯示時間的地方右下角,開啟後可以檢視當前IP位址,填寫**軟體,然後開啟瀏覽器,會顯示**位址。 >>>More

3個回答2024-06-13

Windows 密碼丟失(已修改)。

雖然可以使用ERD Commander等工具開始修改密碼,但是**這些龐然大物需要很長時間,而且使用其他方法也太麻煩了,所以可以用Dreampackpl生成的dll來解決! >>>More

7個回答2024-06-13

檢視鍵盤是否未正確連線。