C#forUnity快速入门(连载3)-C#基础编程题库-创新互联

C# for Unity 编程语言快速入门教程(连载3)---C#基础编程题库

公司主营业务:网站建设、做网站、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出台安免费做网站回馈大家。

  前两篇文章按照基本编程类型,总结了“选择结构”、“循环结构”、“数组”等典型题目,且都是非常基础简单的题目。

   现在提高一点难度,混合以上类型进行编程,提供带答案的几个典型题目如下:

 // 第22题: 键入10 个整数,统计其中正数(neg)、负数(pos)和零(zero)的个数并将三者输出。
           int intNegNum=0;
           int intPosNum=0;
           int intZeroNum=0;

           for (int i = 1; i <=10; i++)
           {
               Console.WriteLine("请输入第{0}个整数",i);
               string strNumber = Console.ReadLine();
               int intNumber = Convert.ToInt32(strNumber);

               //判断且输出
               if(intNumber>0)
               {
                   ++intNegNum;
               }
               else if (intNumber==0)
               {
                   ++intZeroNum;
               }else{
                   ++intPosNum;
               }
           }

           Console.WriteLine("统计如下");
           Console.WriteLine("整数有{0}个", intNegNum);
           Console.WriteLine("负数有{0}个", intPosNum);
           Console.WriteLine("零有{0}个", intZeroNum);

 //第23题: 输入一个学生的成绩(在0~100 分之间,超出此范围显示错),进行五级评分并显示。

           Console.WriteLine("请输入你的学习成绩");
           string strNumber = Console.ReadLine();
           int intNumber = Convert.ToInt32(strNumber);
           if(intNumber>100 || intNumber<0)
           {
               Console.WriteLine("输入的范围超出合理范围");
           }else if(intNumber>90 && intNumber<=100)
           {
               Console.WriteLine("卓越");
           }else if(intNumber>80 && intNumber<=90)
           {
               Console.WriteLine("优秀");
           }else if(intNumber>70 && intNumber<=80)
           {
               Console.WriteLine("良好");
           }else if(intNumber>=60 && intNumber<=70)
           {
               Console.WriteLine("及格");
           }else{
               Console.WriteLine("不及格");
           }

 //第24题: 输入一个圆半径(r),计算并输出圆的面积(s)和周长(l)

          const float PI=3.1415F;

           Console.WriteLine("请输入圆的半径");
           string strR = Console.ReadLine();
           int intR = Convert.ToInt32(strR);
           Console.WriteLine("面积=" + PI * intR*intR);
           Console.WriteLine("周长="+2*PI*intR);

 //第25题: 打印输出上三角,不能使用直接打印,如下图
   *
   **
   ***
   ****
   *****

           for (int i = 1; i <= 5; i++)     //行
           {
               for (int j = 1; j <= i; j++) //列
               {
                   Console.Write("*");
               }
               Console.WriteLine();
           }

 //第26题:声明并初始化长度为10的整型数组,输入10个数.输出其中大于平均值的数.
           int[] intArray = new int[10];
           float floTotal = 0;            //10个数的总和
           float floAVG = 0F;             //平均数

           //得到10个数的平均数
           for (int i = 0; i <10; i++)
           {
               Console.WriteLine("请输入第{0}个整数", i+1);
               string strR = Console.ReadLine();
               int intR = Convert.ToInt32(strR);
               //输入的数值存入数组
               intArray[i] = intR;
               //计算总和
               floTotal += intR;
           }
           //得到平均数
           floAVG = floTotal / 10;

           //输出大于平均值的数
           for (int j = 0; j <10; j++)
           {
               if(intArray[j]>floAVG)
               {
                   Console.WriteLine("大于平均数=" + intArray[j]);
               }
           }

 //第27题: 输入数字5输出
   * * *
   * * *
   * * *
   * * *
   *****

           Console.WriteLine("请输入显示图形的行数");
           string strRowNumber = Console.ReadLine();
           int intRowNumber = Convert.ToInt32(strRowNumber);

           for (int i = 1; i <=intRowNumber; i++) //i 表示行数
           {
               if (i == intRowNumber)
               {
                   Console.WriteLine("*****");
               }
               else {
                   Console.WriteLine("* * *");
               }
           }

 //第28题: 模拟计算器输入两个数值与运算符,计算出相应运算结果。

          int intFirstNum;
           int intSencondNum;
           char chFlag;

           Console.WriteLine("控制台计算器");
           Console.WriteLine("请输入第一个整数操作数");
           string strNum1 = Console.ReadLine();
           intFirstNum = Convert.ToInt32(strNum1);
           Console.WriteLine("请输入操作符 + - * / ");
           string strFlag = Console.ReadLine();
           chFlag = Convert.ToChar(strFlag);
           Console.WriteLine("请输入第二个整数操作数");
           string strNum2 = Console.ReadLine();
           intSencondNum = Convert.ToInt32(strNum2);

           //计算结果
           switch (chFlag)
           {
               case '+':
                   Console.WriteLine("计算结果是:" + (intFirstNum + intSencondNum));
                   break;
               case '-':
                   Console.WriteLine("计算结果是:" + (intFirstNum - intSencondNum));
                   break;
               case '*':
                   Console.WriteLine("计算结果是:" + (intFirstNum * intSencondNum));
                   break;
               case '/':
                   if (intSencondNum==0)
                   {
                       Console.WriteLine("除数不能为零!");
                   }else{
                       Console.WriteLine("计算结果是:" + (intFirstNum / intSencondNum));
                   }
                   break;

               default:
                   break;
           }

   //第29题:  解法1(传统方式): 输出1-1000所有的素数

           for (int i = 3; i <= 1000; i++)
           {
               bool IsSS = true; //素数变量

               for (int j = 2; j < i; j++)
               {
                   if (i % j== 0)
                   {
                       IsSS = false;
                       break;//表示 i不是素数
                   }
               }
               if (IsSS)
               {
                   Console.WriteLine(i);
               }
           }

   //解法2: 采用方法的方式,可以简化编程逻辑。

       //输出1-1000所有的素数
       public void Demo11()
       {
           for (int i = 3; i <=1000; i++)
           {
               if (JudgeSS(i))
               {
                   Console.WriteLine(i);
               }
           }
       }

       ///


       /// 判断是否为素数
       ///

       ///
       ///
       /// true:表示素数
       ///

       private bool JudgeSS(int num)
       {
           bool IsResult = true; //默认是素数

           for (int i = 2; i < num; i++)
           {
               if(num%i==0)
               {
                   IsResult = false;//不是素数
                   break;
               }
           }

           return IsResult;
       }

 以上提供带参考答案的29个基础题目,如果初学者可以全部领会贯通,将对后继C#深入学习打下一个良好的基础。

 但是在这里笔者还是推荐,有充裕学习时间的初学者可以进行海量做题,以达到对编程思路(算法)的灵活训练之目的。故现在提供以下50+个精选编程题目,以供大家学习做题参考。(不提供参考答案,部分题目有重复,做过的直接略过即可)

1: 定义一个学生的成绩 mark 变量,
         如果小于80,且打印"不及格"
         如果大于等于80且小于100,则及格
         如果大于等于100且小于120,则良好
        如果大于等于120且小于等于150,则优秀

2: 求分段函数的值。
        f(x)= 0      (x<0)
             = 2x+1   (x>=0)

3: 编写程序,输出1-100间的所有偶数。

4: 求1+2+3+ 。。。 +20 的结果。分别使用(while ,do_while ,for 三种循环语句)

5:  输出1-100 之间不能被6整除的全部数字。

6:计算输出1-100 之间的所有奇数且小于4位数字的累加和。

7: 计算1-100间所有整数的和,当和为4位数时终止求和并输出该和的值。

8: 打印输出平方值小于20000的大整数。

9: 键入10 个整数,统计其中正数(neg)、负数(pos)和零(zero)的个数并将三者输出。

10: 输入一个学生的成绩(在0~100 分之间,超出此范围显示错),进行五级评分并显示。

11: 输入一个圆半径(r),计算并输出圆的面积(s)和周长(l)

12: 输入两个实型数x 和y,计算并输出它们的和、差、积和商。

13: 编一个程序,输入一个整数,输出其符号(若>=0, 输出1; 若<0, 输出 -1 ).

14: 编写一个程序,输入实数x 的值,按下列公式计算并输出 y 的值:
      y=    x               (x<=1)
               2x-1         (1               3x-11       (10<=x)

15: 编写一个程序, 输入三个单精度数,输出其中最小数。

16: 编写一个程序, 输入10个整数,统计并输出其中正数、负数和零的个数。

17: 用三种循环语句分别编写程序显示1-100 的平方值。

18: 打印输出上三角,不能使用直接打印

   *
   **
   ***
   ****
   *****

19: 打印输出九九乘法表。

20: 编程序判断某字符型变量中存放的是否为小写字母。

21: 编写程序输入单个字符,判断是否数据字符。是则输出字符Y,否则输出字符N

22:  输入非0的三位整数, 依次输出该数的正(负)号和百位、十位、个位数字。

23: 输入一个字符,是字母则输出“yes!”,否则无输出。

24: 输入一个整数x,若大于5且小于10的,则输出“5
25:  计算下列分段函数 ,y= 0   (x<-1.0)
                                            1   (-1.0<=x<=1.0),其中X由键盘输入。
                                           10  (x>1.0)

26:  输入一个字符,如果是数字则输出字符1 ; 如果是大写字母则输出字符2 ;如果是小写字母
    则输出字符3; 如果是空格则输出字符4; 如果是回车换行符则输出字符5; 是其他符号
    则输出字符6.

27: 输入一个带符号的短整型数,输出该数的位数。

28: 从键盘上输入10个实数,求其平均值

29: 输入一个短整型正数,输出其各位数字的平方和。

30:   求整数1~100的累加值,但要求跳过所有个位为3的数。

31. 输入数值判断是否大于10且小于20
32. 输入三个整数,输出其中大数
33. 模拟计算器输入两个数值与运算符,计算出相应运算结果.
34. 输入两个数,求这两个数之间所有整数的和
35. 不断输入字符直到用户输入; 统计大写字母与小写字母及数字的个数
36. 输入一个整数,输出各位 数值
37. 输入数字5输出
   *****
   * * *
   * * *
   * * *
   * * *
38.  声明并初始化长度为10的整型数组,输入10个数.输出其中大于平均值的数.
39.  输入数值判断是否是整数,如:输入156输出”是”输入5.68输出”否”
40.  输入三角形三边,判断三边是否能构成三角形
41.  输入一个百分制成绩,转为A、B、C,A:90~100 ,B:80~89,C:70~79其他未D
42.  输出A~Z 再输出 a~z
43.  输入大写转小写 ,询问用户是否继续,输入y继续输入n退出
44.  输入一个整数,输出各位 数值
45.  输入数字5输出
   * * *
   * * *
   * * *
   * * *
   *****
46.  声明并初始化长度为10的整型数组,输入10个数.输出其中大于平均值的数.

50:  键盘输入十个数值,统计输出大于等于平均数的数值。【数组应用题目】
51: 有十个数放入数组中,用户输入一个数值,找出这个数值在本数值中的序号,
       如果没有输出“不存在”!
52: 数组中已有升序的10个数,输入一个数插入到数组中该数组仍然升序。

53: 输入一个数字统计其中0-9出现的次数。

      以上三篇文章就C#的基本编程提供了大量习题,以供学习之用。下一篇,笔者来讲解C#的面向对象特性与习题。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网站栏目:C#forUnity快速入门(连载3)-C#基础编程题库-创新互联
文章出自:http://pwwzsj.com/article/diggss.html