#27550: 哪裡有問題?


poqqq.tw@gmail.com (YH Wang)

學校 : 不指定學校
編號 : 170610
來源 : [163.27.231.246]
最後登入時間 :
2023-05-06 13:45:17
a001. 哈囉 -- Brian Kernighan | From: [36.233.84.142] | 發表日期 : 2021-10-11 18:06

#include <stdio.h>

 

int main()

 

{ int a;

 printf("A=> ");

 scanf("&d",&a);

 printf("hello,%d\n","a");

 

 return 0;

 

}

 
#27551: Re:哪裡有問題?


cges30901 (cges30901)

學校 : 不指定學校
編號 : 30877
來源 : [101.136.203.77]
最後登入時間 :
2024-04-07 15:34:14
a001. 哈囉 -- Brian Kernighan | From: [180.217.112.205] | 發表日期 : 2021-10-11 19:17

#include

 

int main()

 

{ int a;

 printf("A=> ");

 scanf("&d",&a);

 printf("hello,%d\n","a");

 

 return 0;

 

}


你寫這什麼鬼...

1. printf("A=> ") 這什麼東西...沒叫你輸出不要亂輸出

2. 為什麼要int a?明明是輸入字串

3. &d是什麼東西...

4. 逗號之後要空格

 
#27553: Re:哪裡有問題?


s0943020@gm.ncue.edu.tw (Cuesta)

學校 : 國立彰化師範大學附屬高級工業職業學校
編號 : 155291
來源 : [210.66.247.92]
最後登入時間 :
2022-05-15 12:16:28
a001. 哈囉 -- Brian Kernighan | From: [118.233.31.226] | 發表日期 : 2021-10-12 01:08

scanf()裡面有兩個參數,就是用逗點隔開的"&d"跟&a。表示將"數字格式"的輸入,掃入名為a的變數。
不過這裡有個小錯誤,"&d"應該是"%d"才對。
看起來會是這樣:
scanf("%d", &a);

再來是printf()這個函式,一樣,有兩個參數,並用逗點隔開。
分別為"hello,%d\n"還有"a"。
不過一樣有些小失誤。
首先是第二個參數,這個位置應該是要放入'名為a的變數',這樣電腦才能去使用放在a裡面的值,也就是剛才透過scanf()掃描進去的值。
而不是放入"a"這個字串,注意,"a"就跟"lzusehfasdukvhh"一樣,對電腦來說是'字串',而不是變數。
只要是加上了雙引號就會變成是字串。
所以回到剛才所說的,printf()的第二個參數應該要放入的是變數,而不是字串。
看起來會是這樣:
printf("hello,%d\n", a)

應該是對於字串的觀念還不清楚,建議可以自己先找相關資料,並在印出東西時想想"如果加上雙引號會發生什麼事,那如果不加上呢"。
 
ZeroJudge Forum