//while循环
//输出1——10
int i = 1; //定义一个变量来储存要输出的值
while (i <= 10) //i<=10决定了何时结束循环
{
Console.WriteLine(i); //循环输出i
i++; //改变i的值以达到退出循环的目的
}
//输出1--5乘以10所得的乘法表。
int i = 1; //定义一个变量来储存被乘数的值
int result = 0; //定义一个变量来储存结果的值
while (i <= 5) //决定循环何时结束
{
result = i * 10; //求出乘法的结果
Console.WriteLine("{0}*10={1}", i, result);//循环输出结果
i++; ////决定循环何时结束
}
//死循环,该循环内没有决定循环何时结束的语句,所以无法退出循环
int i = 0;
while (i < 1)
{
Console.WriteLine("爱情就像死循环,要谨慎");
Console.WriteLine("试试ctrl+c吧");
}
//程序要求摄氏度0--250度,每隔20度为一项,输出摄氏温度与华氏温度的对照表,同时要求
//输出的条目不超过10条
int c = 0; int f = 0; //定义两个变量来分别储存摄氏温度和华氏温度的值
int cnt = 1; //定义一个变量来储存输出条目的值
while (cnt <= 10 && c <= 250)//决定循环何时结束
{
f = c * 9 / 5 + 32; //换算;
Console.WriteLine("{0}: {1}摄氏度 {2}华氏度", cnt, c, f);//循环输出
cnt++; //每循环一次,条目的值加1
c = c + 20; //每隔20度为一项
}
//计算n+(n-1)+(n-2)+....+3+2+1的值,n为正整数
int n = Convert.ToInt32(Console.ReadLine());
int sum = 0;
while (n >= 1)
{
sum += n;
n--;
}
Console.WriteLine(sum);
//猜数字
int num = 0;
int cnt=0;
do
{
num = Convert.ToInt32(Console.ReadLine());
if (num > 50)
{
Console.WriteLine("大了");
}
if (num < 50)
{
Console.WriteLine("小了");
}
cnt++;
} while (num != 50);
Console.WriteLine("你猜了{0}次就对了",cnt);
//试试用while循环做
#region 用while的解法
int num =Convert.ToInt32( Console.ReadLine());
int cnt = 1;
while (num != 50)
{
if (num > 50)
{
Console.WriteLine("大了");
}
if (num < 50)
{
Console.WriteLine("小了");
}
num = Convert.ToInt32(Console.ReadLine());
cnt++;
}
Console.WriteLine("你猜了{0}次就对了", cnt);
#endregion
//while 的用法
int num = int.Parse(Console.ReadLine());
int count1 = 0;
int count2 = 0;
while (num != 0)
{
if (num > 0)
{
count1++;
}
else
{
count2++;
}
num = int.Parse(Console.ReadLine());
}
Console.WriteLine("记述结束");
Console.WriteLine("正数有{0}个",count1);
Console.WriteLine("负数有{0}个", count2);
do while 的用法
int num ;
int count1 = 0;
int count2 = 0;
do
{
num = int.Parse(Console.ReadLine());
if (num > 0)
{
count1++;
}
if (num<0)
{
count2++;
}
} while (num != 0) ;
Console.WriteLine("记述结束");
Console.WriteLine("正数有{0}个", count1);
Console.WriteLine("负数有{0}个", count2);
1+2+......+100
int sum = 0;
for (int i = 1; i <= 100; i++)
{
sum += i;
}
Console.WriteLine(sum);
//for 循环的简写
int i = 1;
int sum = 0;
for (; ; )
{
if (i <= 100)
{
sum += i;
}
else
{
break;
}
i++;
}
Console.WriteLine(sum);
int i;
for ( i = 100; i >0; i--)
{
if (i % 3 == 0)
{
break;
}
}
Console.WriteLine(i);
//重点
int num = Convert.ToInt32(Console.ReadLine());
int k;
int m;
for (k = 2; k <= num - 1; k++)
{
m = num % k;
if (m == 0)
{
break;
}
}
if (num == k)
{
Console.WriteLine("素数");
}
else
{
Console.WriteLine("非素数");
}
for (int i = 1; i <= 10; i++)
{
if (i % 2 == 0)
{
continue;
}
Console.WriteLine(i);
}
for (int i = 1; i <= 9; i++)
{
for (int j = 1; j <= i; j++)
{
Console.Write("{0}*{1}={2}\t", j, i, j * i);
}
Console.WriteLine();
}
int i;
for (i = 1; i < 100; i++)
{
if (i % 3 == 0 && i % 5 != 0)
{
Console.WriteLine(i);
}
}
//用三种循环写1到100的和
//第一种方法
int i = 1, sum = 0;
while (i <= 100)
{
sum += i;
i++;
}
Console.WriteLine(sum);
//第2种方法
int num = 1;
int sum = 0;
bb: if (num <= 100)
{
sum += num;
num++;
goto bb;
}
Console.WriteLine(sum);
//第3种方法
int num = 1;
int sum = 0;
do
{
sum += num;
num++;
} while (num <= 100);
Console.WriteLine(sum);
//第4种方法
int sum = 0;
for (int i = 1; i <= 100; i++)
{
sum += i;
}
Console.WriteLine(sum);
//求1到10的倒数和
#region
double sum = 0;
for (double i = 1; i <= 10; i++)
{
sum = sum + 1 / i;
}
Console.WriteLine(sum);
#endregion
//求1到50的平方和
#region
第1种方法
int sum = 0;
for (int i = 1; i <= 50; i++)
{
sum = sum + i * i;
}
Console.WriteLine(sum);
第2种方法
int sum = 0;
for (int i = 1; i <= 50; i++)
{
sum += (int) Math.Pow(i, 2);
}
Console.WriteLine(sum);
#endregion
//接受用户输入的正整数,然后显示从0到该数为止所表示的字符。
#region
int i = Convert.ToInt32(Console.ReadLine());
for (int j = 0; j <=i; j++)
{
Console.WriteLine((char)j);
}
#endregion
//编写九九乘法表并倒序输出
#region
for(int i=9;i>=1;i--)
{
for (int j = 1; j <= i; j++)
{
Console.Write("{0}*{1}={2}\t ", j, i, i * j);
}
Console.WriteLine();
}
//编写九九乘法表并顺序输出
for (int i = 1; i <= 9; i++)
{
for (int j = 1; j <= i; j++)
{
Console.Write("{0}*{1}={2}\t", j, i, j * i);
}
Console.WriteLine();
}
#endregion
//打印平行四边形
// **************
// **************
// **************
// **************
//**************
//第1种方法:
Console.WriteLine(" **************");
Console.WriteLine(" **************");
Console.WriteLine(" **************");
Console.WriteLine(" **************");
Console.WriteLine("**************");
#region
//第2种方法:
for (int i = 1; i <= 5; i++)
{
for (int j = 4; j >= i; j--)
{
Console.Write(" ");
}
for (int j = 1; j <= 14; j++)
{
Console.Write("*");
}
Console.WriteLine();
}
#endregion
//打印等腰三角形
// *
// ***
// *****
//*******
#region
for (int i = 1; i <= 4; i++)
{
for (int j = 1; j <= 4 - i; j++)
{
Console.Write(" ");
}
for (int j = 1; j <= 2 * i - 1; j++)
{
Console.Write("*");
}
Console.WriteLine();
}
#endregion
//打印倒等腰三角形
//*******
// *****
// ***
// *
#region
for (int i = 4; i >= 1; i--)
{
for (int j = 1; j <= 4 - i; j++)
{
Console.Write(" ");
}
for (int j = 1; j <= 2 * i - 1; j++)
{
Console.Write("*");
}
Console.WriteLine();
}
#endregion
//求1-3+5-7+...-95+97-99
#region
//解法1
int sum1 = 0;
int sum2 = 0;
int i = 1;
int j = -3;
while (i >= 1 && i <= 97)
{
sum1 = sum1 + i;
i = i + 4;
}
while (j <= -3 && j >= -99)
{
sum2 = sum2 + j;
j = j - 4;
}
Console.WriteLine(sum1 + sum2);
//解法2
int sum = 0;
int sign = 1;
for (int i = 1; i <= 99; i = i + 2)
{
sum = sum + sign * i;
sign = -sign;
}
Console.WriteLine(sum);
#endregion
//小猴子摘了一堆桃,第一天吃了一半,还嫌不过瘾,又多吃了一个;
//第二天又将剩下的桃子吃了一半加一个;以后天天如此,
//到第十天,小猴一看,只剩一个桃子了。问最初有多少个桃子。
#region
int sum = 0;
for (int i = 10; i >= 1; i--)
{
if (i == 10)
{
sum = 1;
}
else
{
sum = (sum + 1) * 2;
}
}
Console.WriteLine(sum);
#endregion
//某人有100元,欲买100只鸡,公鸡5元一只,母鸡3元一只,小鸡一元3只,
//可买到公鸡、母鸡、小鸡各多少只?
#region
int g, m, x;
for (g = 0; g <= 20; g++)
{
for (m = 0; m <= 33; m++)
{
x = 100 - g - m;
if (g * 5 + m * 3 + x / 3 == 100 && x % 3 == 0)
{
Console.WriteLine("公:{0}只 母:{1}只 小:{2}只", g, m, x);
}
}
}
#endregion
//有一个数列,前两个数是1,1,第三个数是前两个数之和,
//以后的每个数都是前两个数之和,要求输出此数列的前40个数。
#region
int num1 = 1, num2 = 1;
for (int i = 1; i <= 10; i++)
{
if (i == 1 || i == 2)
{
Console.WriteLine(num1);
}
else
{
num1 = num1 + num2;
Console.WriteLine(num1);
int t;
t = num1;
num1 = num2;
num2 = t;
}
}
#endregion
//求2/1,3/2,5/3,8/5,13/8,21/13...的前20项的和(32.66026)
#region
double zi = 2; double mu = 1; double sum = 0;
for (int k = 1; k <= 20; k++)
{
if (k == 1)
{
sum = zi / mu;
}
else
{
zi = zi + mu;
mu = zi - mu;
sum += zi / mu;
}
}
Console.WriteLine(sum);
#endregion
//打印“水仙花数”,所谓“水仙花数”是指一个三位数,
//其各位数字立方和等于该数本身。例如153
#region
//解法1
for (int i = 100; i <= 999; i++)
{
int ge = i % 10;
int shi = i / 10 % 10;
int bai = i / 100;
if (Math.Pow(ge, 3) + Math.Pow(shi, 3) + Math.Pow(bai, 3) != i)
{
continue;
}
Console.WriteLine(i);
}
//解法2
for (int i=1;i<=9;i++)
{
for (int j=0;j<=9;i++)
{
for (int k=0;k<=9;k++)
{
if (i*i*i+j*j*j+k*k*k==i*100+j*10+k)
{
Console.WriteLine(i*100+j*10+k);
}
}
}
}
#endregion
//有A、B、C、D4个一位非负整数,他们符合(ABCD-CDC=ABC)下面的算式,请找出A\B\C\D的值(1,0,9,8)
// ABCD
// -CDC
//-------
// ABC
#region
for (int a = 0; a <= 9; a++)
{
for (int b = 0; b <= 9; b++)
{
for (int c = 0; c <= 9; c++)
{
for (int d = 0; d <= 9; d++)
{
if (a * 1000 + b * 100 + c * 10 + d - (c * 100 + d * 10 + c) == a * 100 + b * 10 + c && (a != 0 || b != 0 || c != 0 || d != 0))
{
Console.WriteLine("{0}{1}{2}{3}", a, b, c, d);
}
}
}
}
}
#endregion| 文章类型: | JAVA |
| 关键词: | C#,C,Sharp,Java,java,编程逻辑,训练题,if,switch,while,for,参考答案 |
| 内容摘要: | 主要训练编程初学者的编程逻辑,通过一系列的练习题建立初级程序员对编程逻辑的掌握。针对上一篇的训练题提供答案 |
Java、C#编程逻辑训练题(见上一篇)的参考答案
2015/7/22 16:34:31 来源:apple 阅读: