標題:
C# 7 109 字元處理
[打印本頁]
作者:
may
時間:
2024-1-8 21:44
標題:
C# 7 109 字元處理
TQC+ 物件導向程式語言
最新一次更新時間:2024-01-05 11:48:41
1. 題目說明:
請新增一個主控台應用程式,加入C:\ANS.CSF\CS01資料夾中的CSD01.cs進行編寫。依下列題意進行作答:將輸入的字串進行字元修改後再輸出,使輸出值符合題意要求。檔案名稱請另存新檔為CSA01.cs,儲存於C:\ANS.CSF\CS01資料夾,再進行評分。
2. 設計說明:
請撰寫程式,讓使用者輸入一個英、數字的字串。
請修改第一個及最後一個字元後輸出。若字串長度只有一個字元,則修改該字元後並輸出。
字元修改方式為:
a. 英文字:大小寫互換且往後移動一個字母,例如A改為b、B改為c、Z改為{、a改為B,b改為C,z改為[。
b. 數字0-9:往後移動一個字母,並循環,例如0改為1、1改為2、9改為0。
如輸入符號、文字等,導致第一個或最後一個字元無法處理者,顯示【error】。
*提示:0-9的ASCII值為48-57,A-Z的ASCII值為65-90,a-z的ASCII值為97-122。
3. 輸入輸出:
輸入說明
一個字串(英、數字)
輸出說明
修改後結果(輸出最後一行後不自動換行)
範例輸入1
thebookthief
範例輸出1
UhebookthieG
範例輸入2
!!!@@@
範例輸出2
error
範例輸入3
0
範例輸出3
1
4. 評分項目:
(1) 符合設計說明輸出正確格式配分 10
作者:
may
時間:
2024-1-8 23:10
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Drawing;
namespace CSA01
{
class CSA01
{
static void Main(string[] args)
{
try
{
string str = Console.ReadLine();
if (str.Trim() == "") { throw new Exception(); }
if (str.Length == 1)
{
str = encrypt(str[0]).ToString();
}
else
{
str = encrypt(str[0])
+ str.Substring(1, str.Length - 2)
+ encrypt(str[str.Length - 1]);
}
Console.Write(str);
}
catch
{
Console.Write("error");
}
Console.ReadKey();
}
static char encrypt(char ch)
{
if ('0' <= ch && ch <= '8')
{
ch++;
}
else if (ch == '9')
{
ch = '0';
}
else if (Char.IsUpper(ch))
{
ch = (char)(Char.ToLower(ch) + 1);
}
else if (Char.IsLower(ch))
{
ch = (char)(Char.ToUpper(ch) + 1);
}
else
{
throw new Exception("unexpected char: " + ch);
}
return ch;
}
}
}
複製代碼
作者:
李泳霖
時間:
2024-1-21 22:04
using ConsoleApp1;
using System;//程式庫呼叫
using System.ComponentModel.DataAnnotations;
using System.Linq.Expressions;
using ABC.qq;
class Program//負責一部分工作的人
{
static void Main()//method ..Entry Point 程式進入點
{
try
{
string str=Console.ReadLine();
if(str.Trim()=="")
{
throw new Exception();
}
if (str.Length == 1)
str = encrypt(str[0]).ToString();
else
{
str = encrypt(str[0]) + str.Substring(1, str.Length - 2) + encrypt(str[str.Length-1]);
}
Console.WriteLine(str);
}
catch
{
Console.WriteLine("error");
}
}
static char encrypt(char ch)
{
if (ch >= '0' && ch <= '8')
ch++;
else if (ch == '9')
ch = '0';
else if (Char.IsUpper(ch))//判斷是否為大寫
{
ch=(char)(Char.ToLower(ch)+1);//轉小寫後加1
}
else if (Char.IsLower(ch))//判斷是否為小寫
{
ch=(char)(Char.ToUpper(ch)+1);//轉大寫後加1
}
else
{
throw new Exception("unexpected char: " + ch);
}
return ch;
}
}
複製代碼
歡迎光臨 種子論壇 | 高雄市資訊培育協會學員討論區 (http://seed.istak.org.tw/)
Powered by Discuz! 7.2