【程式設計題庫】行動電話通話費率

問題描述 :

種花電信行動通話費共有186 386 586 986四種月租費率,月租費可以抵通話費,通信費計算如下:

1.通話費若未超過月租費則以月租費繳。

2.若超過月租費則有折扣,折扣方式如下表。

月租費折扣表

月租費 通話費率 超過月租費 1 倍以內 ( 含 1 倍 ) 之折扣 超過月租費 1 倍以上之折扣
186  0.09 元 / 秒 9  8 折
386 元 0.08 元 / 秒 8 折 7 折
586 元 0.07 元 / 秒 7 折 6 折
986 元 0.06 元 / 秒 6 折 5 折

請撰寫一個程式來計算要繳納的費用,使用者輸入月租費的型式及通話時間秒數,程式輸出該繳納之費用(單位:元)。

提示:將月租費型式、月租費折扣方案用兩個不同陣列儲存,藉由SWITCH或IF ELSE作選擇判斷。

輸入說明 :

386,36000 第一個數表示我們是386月租費型式,36000為通話秒數,通話費是2880超過386月租費,因此再打7折,通話費計算為2016元。

輸出範例 :

輸入例: 輸出例:
386, 36000 2016元

【C#-題庫】函式與程序

出處:http://www.indiabix.com/c-sharp-programming/functions-and-subroutines/

底下程式輸出為何?

namespace IndiabixConsoleApplication
{ 
    class SampleProgram
    {
        static void Main(string[] args)
        { 
            int num = 1;
            funcv(num); 
            Console.Write(num + ", "); 
            funcr(ref num); 
            Console.Write(num + ", ");
        }
        static void funcv(int num)
        { 
            num = num + 10; Console.Write(num + ", ");
        }
        static void funcr (ref int num)
        { 
            num = num + 10; Console.Write(num + ", ");
        } 
    } 
}

A. 1, 1, 1, 1,
B. 11, 1, 11, 11,
C. 11, 11, 11, 11,
D. 11, 11, 21, 11,
E. 11, 11, 21, 21,

Answer
B

 Infographic: 資料科學與分析的資料視覺化工具 / Data Visualization Tools For Data scientists & analysts 

Here’s an infographic which displays most commonly used tools for data visualization by data scientists and data analysts for all sort of uses

來源: Infographic: Data Visualization Tools For Data scientists & analysts

【C#-題庫】程式-控制結構

【C#-題庫】程式-控制結構

【C#-題庫】程式-控制結構

1. 輸入3個數字,輸出其中之最大值。

2.輸入3個數字,輸出其中之最小值。

3.輸入2個數字,判斷是否相等。

4.輸入1個數字,判斷是奇數或是偶數。

5.輸入1個數字,判斷是正數或是負數。

6.輸入1個數字,輸出其絕對值。

7.輸入1個age數字,判斷是否能夠投票與否。(20歲始能投票)

8.輸入1個氣溫數字t(浮點數),依據下列條件輸出,(t<=0, 凍僵了!),(0<t<=10,很冷), (10<t<=20: 有點冷),(20<t<=30: 舒適),(30<t<=40: 熱),(t>40,非常熱)

9.輸入1個字母,輸出其為母音(AEIOU)或子音。

10.依據台電夏日電價公式,輸入用電度數,計算出電費。

11.輸入1~7的日期數字,輸出Monday, Tuesday, Weekday, … ,  Sunday。

12.輸入1~12月份數字,輸出其每個月的天數。(注意:不考慮閏年)

13.輸入年及月,輸出其每個月的天數。(注意:考慮閏年)

14.依據下表,輸入成績等級,輸出其等級代表的意思。

Grade Description
E Excellent
V Very Good
G Good
A Average
F Fail

 

迴圈:

15.寫一個迴圈,從1印到100。

16.寫一個迴圈,印出小於100的奇數。

17.寫一個迴圈,印出小於100的偶數。

18.輸入一個整數,判斷其是否為完全數。

19.印出小於9999的完全數。

20.輸入一個數字,計算:sum=1+2+…+n,輸出sum。

21.輸入1個數字,輸出其2進位表示。

22.輸入一個整數,反向輸出此整數。(如:輸入12345,輸出54321)

23.連續輸入整數,一直遇到-9999,輸出這些數字的和。

24.輸入1個字串,輸出每個字元出現的次數。

【C#-題庫】控制結構

【C#-題庫】控制結構

【C#-題庫】控制結構

1.底下的程式碼會印出?

int i = 0, j = 0; 

label:
    i++;
    j+=i;
if (i < 10)
{
    Console.Write(i +" ");
    goto label; 
}

A. 印出1 到 9
B. 印出0 到 8
C. 印出2 到8
D. 印出2 到9
E. 在標籤label處發生編譯錯誤

Answer: Option A

2.下面程式片段輸出為何?

int i = 20 ;
for( ; ; )
{
    Console.Write(i + " "); 
    if (i >= -10)
        i -= 4; 
    else 
        break;
}

A. 20 16 12 84 0 -4 -8
B. 20 16 12 8 4 0
C. 20 16 12 8 4 0 -4 -8 -12
D. 16 12 8 4 0
E. 16 8 0 -8

Answer: Option C

3.底下程式片段輸出為何?

namespace IndiabixConsoleApplication
{
    public enum color
    { red, green, blue };
    
    class SampleProgram
    {
        static void Main (string[ ] args)
        {
            color c = color.blue;
            switch (c)
            {
                case color.red:
                    Console.WriteLine(color.red); 
                    break; 
                
                case color.green: 
                    Console.WriteLine(color.green); 
                    break; 
                
                case color.blue: 
                    Console.WriteLine(color.blue); 
                    break; 
            } 
        } 
    } 
}

A. red
B. blue
C. 0
D. 1
E. 2
Answer: Option B

4.那個程式片段可以得到和下列程式片段一樣的結果?

int i = 0; 
do
{
    Console.WriteLine(i);
    i+ = 1; 
} while (i <= 10);

A.

int i = 0; 
do
{
    Console.WriteLine(i);
} until (i <= 10);

B.

int i;
for (i = 0; i <= 10 ; i++)
    Console.WriteLine(i);

C.

int i = 0; 
while (i <= 11)
{
    Console.WriteLine(i);
    i += 1; 
}

D.

int i = 0;
do while ( i <= 10)
{
    Console.WriteLine(i); 
    i += 1;
}

E.

int i = 0;
do until (i <= 10)
{
    Console.WriteLine(i);
    i+=1; 
}

Answer: Option B

5.底下程式片段輸出為格?

int val;
for (val = -5; val <= 5; val++)
{
    switch (val)
    {
        case 0:
            Console.Write ("India"); 
            break;
    }
    
    if (val > 0)
        Console.Write ("B"); 
    else if (val < 0)
        Console.Write ("X");
}

A. XXXXXIndia
B. IndiaBBBBB
C. XXXXXIndiaBBBBB
D. BBBBBIndiaXXXXX
E. Zero

Answer: Option C

6.底下程式片段輸出為何?

char ch = Convert.ToChar ('a' | 'b' | 'c'); 
switch (ch)
{
    case 'A': 
    case 'a':
    Console.WriteLine ("case A | case a");
    break;
    
    case 'B': 
    case 'b':
    Console.WriteLine ("case B | case b");
    break;
    
    case 'C':
    case 'c':
    case 'D':
    case 'd':
    Console.WriteLine ("case D | case d");
    break;
}

A. case A | case a
B. case B | case b
C. case D | case d
D. Compile Error
E. No output

Answer: Option C

7.底下那個控制結構程式片段是錯的?
A.

if (Condition1) 
{// Some statement}

B.

if (Condition1) {// Some statement} 
else {// Some statement}

C.

if (Condition1) {// Some statement} 
else {// Some statement} 
else if ( Condition2){//Some statement}

D.

if ( Condition1 ) {// Some statement} 
else if ( Condition2 ) {// Some statement} 
else {// Some statement}

E.

if ( Condition1 ) {// Some statement} 
else if ( Condition2 ) {// Some statement} 
else if ( Condition3 ) {// Some statement} 
else {// Some statement}

Answer: Option C

8.底下那個程式片段可以正確地決定出ODD(奇數)或EVEN(偶數)
1.

int a;
String res; 
if (a % 2 == 0)
    res = "Even"; 
else 
    res = "Odd";

2.

int a; 
String res; 
if (a Mod 2 == 0) 
    res = "Even"; 
else
    res = "Odd";

3.

int a;
Console.WriteLine(a Mod 2 == 0 ? "Even": "Odd");

4.

int a;
Console.WriteLine(a Mod 2 == 0 ? "Even": "Odd");

A. 1, 3
B. 1 Only
C. 2, 3
D. 4 Only
E. 以上皆非

Answer: Option B

10. 那一個敘述可以用來結束一個while迴圈,並且將控制權轉移到迴圈外部?

  1. exit while
  2. continue
  3. exit statement
  4. break
  5. goto

A. 1, 3
B. 2, 4
C. 3, 5
D. 4, 5
E. 以上皆非
Answer: Option D

11.底下的程式片段是用來產生何種性質的數值?

int i = 1, j = 1, val;
while (i < 25)
{
    Console.Write(j + " ");
    val = i + j;
    j = i;
    i = val;
}

A. 質數 Prime
B. 費波拿契數列 Fibonacci
C.  迴文數 Palindrome
D. 奇數 Odd
E. 偶數 Even

Answer: Option B

12.底下那個敘述對下面的程式片段是正確的?

if (age > 18 && no < 11)
    a = 25;

1.只在 age > 18 條件評值為True時,條件式 no < 11 將才會被評估。

2.任一條件式為真(true) a = 25才會被執行。

3.只在 age > 18 條件評值為False時,條件式 no < 11 將才會被評估。

4.二個條件式皆為True時, a = 25才會被執行。

5.&& 為眾所週知的最短路徑運算子(short circuiting logical operator)。

A. 1, 3
B. 2, 5
C. 1, 4, 5
D. 3, 4, 5
E. 以上皆非

Answer: Option C

13.底下程式片段輸出為何?

int i = 2, j = i;
if (Convert.ToBoolean((i | j & 5) & (j - 25 * 1)))
    Console.WriteLine(1); 
else
    Console.WriteLine(0);

A. 0
B. 1
C. 編譯錯誤 Compile Error
D. 執行時期錯誤 Run time Error
Answer: Option A

14.那個程式片段可以得到和下列程式片段一樣的結果?

int a = 1, b = 2, c = 0;
if (a < b) c = a;

A.

int a = 1, b = 2, c = 0;
c = a < b ? a : 0;

B.

int a = 1, b = 2, c = 0;
a < b ? c = a : c = 0;

C.

int a = 1, b = 2, c = 0;
a < b ? c = a : c = 0 ? 0 : 0;

D.

int a = 1, b = 2, c = 0;
a < b ? return (c): return (0);

E.

int a = 1, b = 2,c = 0;
c = a < b : a ? 0;

Answer: Option A

15.底下程式片段輸出為何?

int i;
for(i = 0; i<=10; i++)
{
    if(i == 4)
    {
        Console.Write(i + " "); continue;
    }
    else if (i != 4)
        Console.Write(i + " "); else
    break;
}

A. 1 2 3 4 5 6 7 8 9 10
B. 1 2 3 4
C. 0 1 2 3 4 5 6 7 8 9 10
D. 4 5 6 7 8 9 10
E. 4
Answer: Option C

15.那個迴圈片段可以正確地印出底下陣列的元素?

char[ ] arr = new chart[ ] {'k', 'i','C', 'i','t'} ;

A.

do
{
    Console.WriteLine((char) i); 
} 
while (int i = 0; i < arr; i++);

B.

foreach (int i in arr)
{
    Console.WriteLine((char) i);
}

C.

for (int i = 0; i < arr; i++)
{
    Console.WriteLine((char) i);
}

D.

while (int i = 0; i < arr; i++)
{
    Console.WriteLine((char) i);
}

E.

do
{
    Console.WriteLine((char) i); 
} 
until (int i = 0; i < arr; i++);

Answer: Option B

【C#-題庫】程式-基礎

【C#-題庫】程式-基礎

【C#-題庫】程式-基礎

  1. 寫一支程式印出Hello和你的名字 (印在不同行)。
  2. 寫一支程式輸入2個整數,印出2個數字的和。
  3. 寫一支程式輸入2個整數(n1, n2),印出除值(n1/n2)。
  4. 寫一支程式印出底下式子的結果。

測試資料data:

• -1 + 4 * 6
• ( 35+ 5 ) % 7
• 14 + -4 * 6 / 11
• 2 + 15 / 6 * 1 – 7 % 2

  1. 寫一支程式輸入2個整數(n1, n2),交換n1與n2的值,印出n1與n2。
  2. 寫一支程式輸入3個整數,輸出這3個數的乘積。
  3. 寫一支程式輸入2個整數,輸出2數的:加、減、乘、除、餘數。例

測試:

輸入第1個數: 25
輸入第2個數: 4
結果:

25 + 4 = 29
25 – 4 = 21
25 x 4 = 100
25 / 4 = 6
25 mod 4 = 1

  1. 寫一支程式輸入4個整數,輸出其平均值。
  2. 寫一支程式,輸入2個整數,輸入+-*/其中之1,算出2個數的運算,例:

 

測試

輸入第1個數字: 20

輸入運算: –

輸入第2個數字: 12

結果 :20 – 12 = 8

  1. 寫一支程式,輸入2個整數,測試此2個數字同時為偶或奇時,輸出true,否則的話,輸出false。
  2. 寫一支程式,輸入2個整數,測試此2個數字是否相等,是的話,輸出true,否則的話,輸出false。
  3. 寫一支程式,輸入你的體重與身高,計算出BMI(= 體重(公斤) / 身高2(公尺2)),並依據下列條件輸出適當訊息


過重:24≦BMI<27

輕度肥胖:27≦BMI<30

中度肥胖:30≦BMI<35

重度肥胖:BMI≧35