一、简单题
1.把输入的字符串中的内容逆置,并保存到新字符串,并输出新字符串的内容。
static void Main(string[] args)
{
String Olds, News = "";
Console.WriteLine("请输入一个字符串:");
Olds= Console.ReadLine();
for(int i = Olds.Length - 1; i >= 0; i--)
{
News += Olds[i];
}
Console.WriteLine("新的字符串是:{0}", News);
}
![c#程序设计入门 (简单题)_第1张图片](http://img.e-com-net.com/image/info8/cdadf3ff7e5c4106b3087771f73ed14d.jpg)
2.已知三角形三条边长a,b,c,三边由用户输入,编程判断a、b、c的值是否构成三角形
static void Main(string[] args)
{
Console.WriteLine("请输入三角形的三条边长:");
String input=Console.ReadLine();
String []number= input.Split(" ");
int a, b, c;
double s,area;
a = int.Parse(number[0]);
b = int.Parse(number[1]);
c = int.Parse(number[2]);
if (a + b > c && a + c > b &&b + c > a)
{
s = 0.5 * (a + b + c);
area = Math.Sqrt(s * (s - a) * (s - b) * (s - c));
Console.WriteLine("{0}、{1}、{2}构成三角形,三角形的面积是{3}", a, b, c,area);
}
else
{
Console.WriteLine("{0}、{1}、{2}不构成三角形", a, b, c);
}
}
![c#程序设计入门 (简单题)_第2张图片](http://img.e-com-net.com/image/info8/06038e9c0f604cb6a2e20b660e4bc983.jpg)
3.输入一个字符串str1,删除str1中其中所有的0-9的数字字符,输出处理后的字符串。
static void Main(string[] args)
{
Console.WriteLine("请输入一个字符串:");
String str1 = Console.ReadLine();
String result = "";
for(int i=0;i
//第二种方法
static void Main(string[] args)
{
Console.WriteLine("请输入一个字符串:");
String str1 = Console.ReadLine();
for (int i = 0; i < str1.Length; i++)
{
if (str1[i] >= '0' && str1[i] <= '9')
{
str1=str1.Remove(i,1);//public string Remove(int startIndex, int count)startIndex:这是要从中开始移除字符的起始索引。它是从0开始的索引,意味着第一个字符的索引为0,第二个字符的索引为1,依此类推。
count:这是要从字符串中移除的字符数量,从startIndex开始计算。
i--;
}
}
Console.WriteLine(str1);
}
![c#程序设计入门 (简单题)_第3张图片](http://img.e-com-net.com/image/info8/8f27f40316fe4cad85280e42bac20b85.jpg)
4.输入10个数,计算平均值,统计低于平均值数据个数并把低于平均值的数据输出。
static void Main(string[] args)
{
Console.WriteLine("请输入10个数:");
String s = Console.ReadLine(); // 读取输入的字符串
String[] number = s.Split(" "); // 将字符串按空格分割成字符串数组
double sum = 0, avg = 0; // 初始化总和和平均值变量
for (int i = 0; i < number.Length; i++) // 遍历字符串数组
{
sum = sum + int.Parse(number[i]); // 将字符串转换为整数并累加到总和中
}
avg = sum / number.Length; // 计算平均值
Console.WriteLine("平均数是{0}", avg); // 输出平均值
int count = 0; // 初始化低于平均值的个数变量
for (int i = 0; i < number.Length; i++) // 再次遍历字符串数组
{
if (int.Parse(number[i]) < avg) // 判断当前数值是否低于平均值
{
count++; // 低于平均值数据个数加一
Console.WriteLine(number[i]); // 输出低于平均值的数据
}
}
Console.WriteLine("低于平均值的个数有{0}个", count); // 输出低于平均值的数据个数
}
![c#程序设计入门 (简单题)_第4张图片](http://img.e-com-net.com/image/info8/9f37e1a84c57412f863b4b3e3cef7ded.jpg)
5.输入10个数,计算平均值,统计高于平均值数据个数并把高于平均值的数据输出。
static void Main(string[] args)
{
Console.WriteLine("请输入10个数:");
String s = Console.ReadLine(); // 读取用户输入的字符串
String[] number = s.Split(" "); // 将字符串按空格分割成字符串数组
double sum = 0, avg = 0; // 初始化总和和平均值变量
for (int i = 0; i < number.Length; i++) // 遍历字符串数组
{
sum += int.Parse(number[i]); // 将字符串转换为整数并累加到总和中
}
avg = sum / number.Length; // 计算平均值
Console.WriteLine("平均数是{0}", avg); // 输出平均值
int count = 0; // 初始化高于平均值的个数变量
for (int i = 0; i < number.Length; i++) // 再次遍历字符串数组
{
if (int.Parse(number[i]) > avg) // 判断当前数值是否高于平均值
{
count++; // 高于平均值的个数加一
Console.Write(number[i] + " "); // 输出高于平均值的数据
}
}
Console.WriteLine("高于平均值的个数是{0}个", count); // 输出高于平均值的数据个数
}
![c#程序设计入门 (简单题)_第5张图片](http://img.e-com-net.com/image/info8/d10492dde2634642ac251c84ff933811.jpg)
6.输入一些整数,找出其中最大数和次最大数。
static void Main(string[] args)
{
// 输入一组整数
Console.WriteLine("请输入一组整数,以空格分隔:");
string input = Console.ReadLine();
string[] numbers = input.Split(' ');
初始化最大数和次最大数
int max = int.Minvalue;
int secondMax = int.Minvalue;
遍历整数数组,更新最大数和次最大数
foreach (string number in numbers)
{
int num = int.Parse(number);
if (num > max) If the current number is greater than the current max,
// update the secondMax to the current max,
// and update the max to the current number.
{
secondMax = max;
max = num;
}
else if (num > secondMax && num < max)
{
// If the current number is greater than the current secondMax
// and less than the current max, update the secondMax to the current number.
secondMax = num;
}
}
输出结果
Console.WriteLine("最大数:" + max);
Console.WriteLine("次最大数:" + secondMax);
}
![c#程序设计入门 (简单题)_第6张图片](http://img.e-com-net.com/image/info8/1e6fcc266225408b98745b605ca662e5.jpg)
7.输入一些整数,找出其中最小数和次最小数。
static void Main(string[] args)
{
// 输入一组整数
Console.WriteLine("请输入一组整数,以空格分隔:");
String s=Console.ReadLine();
String[] number=s.Split(" ");
int min = int.MaxValue;
int secondMin = int.MaxValue;
foreach (string n in number)
{
int num = int.Parse(n);
if (num < min)
{
// If the current number is smaller than the current min,
// update the secondMin to the current min,
// and update the min to the current number.
secondMin = min;
min = num;
}
else if (num < secondMin && num > min)
{
// If the current number is smaller than the current secondMin
// and greater than the current min, update the secondMin to the current number.
secondMin = num;
}
}
Console.WriteLine("最小值是{0},次最小值是{1}", min,secondMin);
}
![c#程序设计入门 (简单题)_第7张图片](http://img.e-com-net.com/image/info8/15d482dbb6dd4c94b0f0270934ad34fc.jpg)
8.输入若干有序的正整数,对于相同的数据只保留一个,输出保留的数据。例如,输入数据是: 2,2,2,3,3,4,5,5,6,6,8,8,9,9,9,10,10,10 最终的输出结果是: 2,3,4,5,6,8,9,10。
static void Main(string[] args)
{
Console.WriteLine("请输入有序正整数列表,以逗号分隔:");
string input = Console.ReadLine();
string[] numbers = input.Split(',');//用逗号进行分隔
// 创建一个新的列表来存储去重后的结果
List uniqueNumbers = new List();//泛型集合就是升级版的数组,可扩容
// 遍历输入的正整数列表
foreach (string number in numbers)
{
int num = int.Parse(number);
/*for(int i= 0; i < numbers.Length; i++)
{
int num = int.Parse(numbers[i]);
*/
// 如果当前数字与前一个数字不相同,则将其添加到去重后的结果列表中
if (uniqueNumbers.Count == 0 || num != uniqueNumbers[uniqueNumbers.Count - 1])
{
uniqueNumbers.Add(num);
}
}
// 输出去重后的结果
Console.WriteLine("去重后的结果:");
foreach (int uniqueNumber in uniqueNumbers)
{
Console.Write(uniqueNumber + ",");
}
}
![c#程序设计入门 (简单题)_第8张图片](http://img.e-com-net.com/image/info8/7f8df748713144c7a3fec040aaa2c90c.jpg)
9.输入一个字符串,判断如果全是数字,将其转换成为一个整数,若包含其他符号,给出错误提示。
static void Main(string[] args)
{
Console.WriteLine("请输入一个字符串:");
String s=Console.ReadLine();
bool isnumber = true;
foreach(char c in s)
{
if (!char.IsDigit(c))
{
isnumber = false;
break;
}
}
if (isnumber)
{
Console.WriteLine(Convert.ToInt32(s));
//ToInt32(String)将数字的指定字符串表示形式转换为等效的 32 位带符号整数。
}
else
Console.WriteLine("有其他字符,请重新输入:");
}
![c#程序设计入门 (简单题)_第9张图片](http://img.e-com-net.com/image/info8/50b3fe8703024d369647b79fa674453e.jpg)
10.输入20个正整数,分别统计并输出其中的奇数和偶数的个数,并分类输出所有奇数和偶数。
static void Main(string[] args){
Console.WriteLine("请输入20个正整数:");
String s = Console.ReadLine();
String[] number = s.Split(" ");
int evenct = 0; int oddct = 0;
String even = "";
String odd = "";
for (int i = 0; i < number.Length; i++)
{
if (int.Parse(number[i]) % 2 == 0)
{
even += number[i] + " ";
evenct++;
}
else
{
odd += number[i] + " ";
oddct++;
}
}
Console.WriteLine("偶数的个数是{0},偶数有{1}", evenct, even);
Console.WriteLine("奇数的个数是{0},奇数有{1}", oddct, odd);
}
![](http://img.e-com-net.com/image/info8/971a124105bd4c9c80de93b136d39098.jpg)
11.从终端输入5个数,按从小到大的顺序输出。
//常规方法
static void Main(string[] args){
Console.WriteLine("从终端输入5个数:");
String input=Console.ReadLine();
String[] number =input.Split(" ");
Array.Sort(number);
for(int i=0;i
//冒泡排序
static void Main(string[] args){
Console.WriteLine("从终端输入5个数:");
String input=Console.ReadLine();
String[] number =input.Split(" ");
//Array.Sort(number);
//冒泡排序
for(int i=0;i int.Parse(number[j + 1]))
{ String temp = number[j ];
number[j] = number[j + 1];
number[j + 1] = temp;
}
}
}
for(int i=0;i
![c#程序设计入门 (简单题)_第10张图片](http://img.e-com-net.com/image/info8/896274be7db54d5ebdc11a57f90386ac.jpg)
12.从键盘读入20个数据到数组中,统计其中负数的个数,并计算这些负数之和。
static void Main(string[] args){
Console.WriteLine("请从键盘读入20个数据:");
String input = Console.ReadLine();
String[] number=input.Split(" ");
int ngnmcout = 0,ngnmsum = 0;
for(int i=0;i
![](http://img.e-com-net.com/image/info8/beb2ade40afa4e2aad26e35f1266617c.jpg)
13.求n以内(不包括n)不能同时被2和5整除(能被2或者5整除但不能同时被整除)的所有自然数之和的平方根s,n从键盘输入。
static void Main(string[] args){
Console.WriteLine("请从键盘输入一个n:");
int n;
n = int.Parse(Console.ReadLine());
int s= 0;
for(int i=1;i
![c#程序设计入门 (简单题)_第11张图片](http://img.e-com-net.com/image/info8/e011fd0ef3b84566b875a0f689574490.jpg)
14.输入1~7之间的一个数字,输出它对应的星期几。例如输入1 输出Monday。
static void Main(string[] args){
Console.WriteLine("请输入1-7之间的一个数字:");
String n = Console.ReadLine();
switch(n)
{
case "1":Console.WriteLine("Monday");break;
case "2": Console.WriteLine("Tuesday"); break;
case "3": Console.WriteLine("Wednesday"); break;
case "4": Console.WriteLine("Thursday"); break;
case "5": Console.WriteLine("Friday"); break;
case "6": Console.WriteLine(" Saturday"); break;
case "7":Console.WriteLine("Sunday");break;
default: Console.WriteLine("输入错误,请重新输入:");break;
}
}
![](http://img.e-com-net.com/image/info8/ff78fca2606d474e94b2a91b88967913.jpg)
15.个位数为8且能被4整除但不能被7整除的二位自然数共有多少个,统计个数,并输出这些数。
static void Main(string[] args){
int count = 0;
for(int i = 10; i < 100; i++)
{
if (i % 10 == 8 && i % 4 == 0 && i % 7 != 0)
{
Console.WriteLine(i);
count++;
}
}
Console.WriteLine("个位数为8且能被4整除但不能被7整除的二位自然数共有{0}个",count);
}
![](http://img.e-com-net.com/image/info8/482f3f4a17b647f9b6448c217342e42d.jpg)
16.输入一个字符串,用foreach语句计算输入的字符串的长度,并显示长度。
static void Main(string[] args){
Console.WriteLine("请输入一个字符串:");
String s=Console.ReadLine();
int length = 0;
foreach(char c in s)
{
length++;
}
Console.WriteLine("{0}的长度是:{1}", s, length);
}
![c#程序设计入门 (简单题)_第12张图片](http://img.e-com-net.com/image/info8/0179fd58b4ef45b3914ffa69c1e43d84.jpg)
17.输入7个数,分别统计其中正数、负数、零的个数。
static void Main(string[] args){
Console.WriteLine("请输入7个数:");
int poscout=0, negacout=0, zerocout = 0;
String s=Console.ReadLine();
String []number=s.Split(' ');
for(int i = 0; i < number.Length; i++)
{
if (int.Parse(number[i]) < 0)
{
negacout++;
}
else if(int.Parse(number[i]) > 0)
{
poscout++;
}
else
zerocout++;
}
Console.WriteLine("正数的个数是:{0},负数的个数是{1},零的个数是{2}",poscout, negacout, zerocout);
}
![c#程序设计入门 (简单题)_第13张图片](http://img.e-com-net.com/image/info8/72975ce97df44ec6933e556b1e8cef78.jpg)
18.计算:1/2+2/3-3/4+4/5……前50项。
static void Main(string[] args){
double sum = 0;
for (int i = 2; i <= 50; i++)
{
sum += Math.Pow(-1, i) * (double)i / (i + 1);
}
Console.WriteLine("1/2+2/3-3/4+4/5……前50项为:{0}", sum + 1 / 2);
}
![c#程序设计入门 (简单题)_第14张图片](http://img.e-com-net.com/image/info8/bd3ef78424c14df382dd1e0056689d0f.jpg)
19.斐氏数列是公元13世纪数学家斐波拉契发明的。即:1,2,3,5,8,13,21,34,55,89,……,输出比144大的最小的那一项。
static void Main(string[] args){
int number1 = 1;
int number2 = 2;
int nextNum = 0;
while (nextNum <= 144)
{
nextNum = number1 + number2;
number1 = number2;
number2 = nextNum;
}
Console.WriteLine("比144大的最小的那一项是:{0}",nextNum);
}
![c#程序设计入门 (简单题)_第15张图片](http://img.e-com-net.com/image/info8/c0221d1c59a741fe8b39c9fd00cb4d30.jpg)
20.已知一个数列的前两项分别为1,2,以后的各项都是其相邻的前两项之和,写一个方法,求计算并返回该数列前n项的平方根之和sum。要求编写应用程序,来检验方法的正确性。
static void Main(string[] args){
Console.WriteLine("请输入一些整数:");
String s=Console.ReadLine();
String []number=s.Split(' ');
int count = 0;
int sum = 0;
for(int i=0;i 0)
{
Console.WriteLine(number[i]);
sum+= int.Parse(number[i]);
count++;
}
}
Console.WriteLine("平均值是:{0}", sum / count);
}
![c#程序设计入门 (简单题)_第16张图片](http://img.e-com-net.com/image/info8/e0749f9ef0884133acadb97a0cfaf97e.jpg)
21.接收用户输入的一个实数N,不使用计算绝对值函数编程计算输出该实数的绝对值。
static void Main(string[] args){
Console.Write("请输入一个实数:");
int number=int.Parse(Console.ReadLine());
double absoluteValue;
if (number >= 0)
{
absoluteValue = number;
}
else
{
absoluteValue = -number;
}
Console.WriteLine("该实数的绝对值为:"+ absoluteValue);
}
![c#程序设计入门 (简单题)_第17张图片](http://img.e-com-net.com/image/info8/50124f6917d147b19df302f9764f781a.jpg)
22.接收用户输入的一个正整数N,求1-2+3-4…+N的值并输出。
static void Main(string[] args){
Console.WriteLine("请输入一个正整数:");
int N = int.Parse(Console.ReadLine());
int i = 1;
double sum = 0;
while (i <= N)
{
sum += Math.Pow(-1, i + 1) * i;
i++;
}
Console.WriteLine("1 - 2 + 3 - 4…+N的值是:{0}", sum);
}
![c#程序设计入门 (简单题)_第18张图片](http://img.e-com-net.com/image/info8/1df40ebc2edd41569a0a8b1b89b5d503.jpg)
23.接收用户输入的一个正整数N,计算1到N的立方和。
static void Main(string[] args){
Console.WriteLine("请输入一个正整数N:");
int N=int.Parse(Console.ReadLine());
int i = 1;
double sum = 0;
while (i<=N)
{
sum += Math.Pow(i, 3);
i++;
}
Console.WriteLine("1到{0}的立方和是:{1}", N, sum);
}
![c#程序设计入门 (简单题)_第19张图片](http://img.e-com-net.com/image/info8/86eed8f253fe4c0aab5603d480bd5f93.jpg)
24.接收用户输入的两个数,判断两个数是否能整除。
static void Main(string[] args){
Console.WriteLine("请用户输入两个数:");
String s=Console.ReadLine();
String []number=s.Split(' ');
if (int.Parse(number[0]) % int.Parse(number[1])==0|| int.Parse(number[1]) % int.Parse(number[0]) == 0) {
Console.WriteLine("这两个数可以被整除");
}
else
{ Console.WriteLine("这两个数不能整除"); }
}
![c#程序设计入门 (简单题)_第20张图片](http://img.e-com-net.com/image/info8/c76688494c484d1abc36171096a49015.jpg)