C#编程入门程序8.docx

上传人:b****6 文档编号:6094542 上传时间:2023-01-03 格式:DOCX 页数:17 大小:84.90KB
下载 相关 举报
C#编程入门程序8.docx_第1页
第1页 / 共17页
C#编程入门程序8.docx_第2页
第2页 / 共17页
C#编程入门程序8.docx_第3页
第3页 / 共17页
C#编程入门程序8.docx_第4页
第4页 / 共17页
C#编程入门程序8.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

C#编程入门程序8.docx

《C#编程入门程序8.docx》由会员分享,可在线阅读,更多相关《C#编程入门程序8.docx(17页珍藏版)》请在冰豆网上搜索。

C#编程入门程序8.docx

C#编程入门程序8

c#程序设计基础必做习题集(3)

十一.多重循环

任务76:

按照以下的要求编写程序:

(1)编写程序利用for循环在控制台上打印一行10个“*”;

(2)编写程序利用二重for循环在控制台上打印10行10列个“*”。

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication1

{

classProgram

{

staticvoidMain(string[]args)

{

for(inti=1;i<=10;i++)

Console.Write("*");

Console.WriteLine("\n---------------------");

for(inti=1;i<=10;i++)

{

for(intj=1;j<=10;j++)

Console.Write("*");

Console.Write("\n");

}

Console.ReadKey();

}

}

}

任务77:

编写程序利用二重循环打印如下的图形:

*

**

***

****

*****

******

*******

********

*********

**********

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication1

{

classProgram

{

staticvoidMain(string[]args)

{

for(inti=1;i<=10;i++)//一共印打10行

{

for(intj=1;j<=i;j++)//第i行打印i个“*”

Console.Write("*");

Console.Write("\n");

}

Console.ReadKey();

}

}

}

任务78:

编写程序利用二重循环打印如下图形:

****

*****

******

*******

********

*********

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication1

{

classProgram

{

staticvoidMain(string[]args)

{

for(inti=4;i<=9;i++)

{

for(intj=1;j<=i;j++)

Console.Write("*");

Console.Write("\n");

}

Console.ReadKey();

}

}

}

任务79:

打印10行“*”,要求每行“*”的个数是个0到20之间的随机整数。

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication1

{

classProgram

{

staticvoidMain(string[]args)

{

Randomrnd=newRandom();

for(inti=1;i<=10;i++)

{

intx=rnd.Next(0,20);//产生0到20之间的随机整数x

for(intj=1;j<=x;j++)//每行打印x个“*”

Console.Write("*");

Console.Write("\n");

}

Console.ReadKey();

}

}

}

任务80:

编写程序,利用二重循环打印如下的图形:

*

***

*****

*******

*********

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication1

{

classProgram

{

staticvoidMain(string[]args)

{

Console.WriteLine("*");//空8,打1……1

Console.WriteLine("***");//空7,打3……2

Console.WriteLine("*****");//空6,打5……3

Console.WriteLine("*******");//空5,打7……4

Console.WriteLine("*********");//空4,打9……5

Console.WriteLine("***********");//空3,打11……6

//空格数=f(i)=9-i

//星的个数=g(i)=2*i-1

//第i行,需要先打印-i个空格,再打印*i-1个“*”

for(inti=1;i<=6;i++)

{

for(intj=1;j<=9-i;j++)//打印第i行的空格

Console.Write("");

for(intj=1;j<=2*i-1;j++)//打印第i行的“*”

Console.Write("*");

Console.Write("\n");

}

Console.ReadLine();

}

}

}

任务81:

编写程序打印如下的图形:

AAAAAAAAAA

BBBBBBBBBB

CCCCCCCCCC

DDDDDDDDD

EEEEEEEEEE

FFFFFFFFFFF

GGGGGGGGG

HHHHHHHHH

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication1

{

classProgram

{

staticvoidMain(string[]args)

{

for(inti=1;i<=8;i++)//控制打印8行

{

for(intj=1;j<=10;j++)//控制每行打印的字母

Console.Write((char)(i+64));

Console.Write("\n");

}

Console.ReadKey();

}

}

}

任务82:

有两个乒乓球队一队和二队,一队的选手有A、B、C、D、E五名选手,二队的选手有F、G、H、I、J,要求两个队的所有选手两两进行对阵,请编写程序打印比赛对阵情况表。

(也可以通过穷举法去掉相等的情况)

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication7

{

classProgram

{

staticvoidMain(string[]args)

{

for(charteam1='A';team1<='E';team1++)

{

for(charteam2='F';team2<='J';team2++)

Console.WriteLine(team1+"--------"+team2);

}

Console.ReadLine();

}

}

}

任务83:

已知有A、B、C、D、E、F、G六支篮球队参加篮球比赛,本次比赛采用的方式是打循环赛,即每两支球队之间都需要进行对阵,编写程序,打印本次比赛的对阵情况表。

(也可以通过穷举法去掉相等的情况)

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication7

{

classProgram

{

staticvoidMain(string[]args)

{

for(charteam1='A';team1<='E';team1++)

{

for(charteam2=(char)(team1+1);team2<='F';team2++)

Console.WriteLine(team1+"--------"+team2);

}

Console.ReadLine();

}

}

}

任务84:

公元五世纪末,我国古代的数额学家张丘建在的《算经》中提出了著名的“百钱百鸡问题”:

一只公鸡5元钱,一只母鸡3元钱,三只小鸡一元钱,现在又100元钱,要正好买100只鸡,可以买公鸡、母鸡、小鸡各多少只?

请打印所有的买法。

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication1

{

classProgram

{

staticvoidMain(string[]args)

{

//x表示公鸡的个数,y表示母鸡的个数,z表示小鸡的个数

Console.WriteLine("所有的买法如下:

");

for(intx=0;x<=20;x++)

{

for(inty=0;y<=33;y++)

{

intz=100-x-y;

if(z%3==0&&x*5+y*3+z/3==100)

{

Console.WriteLine("公鸡{0}只,母鸡{1}只,小鸡{2}只;",x,y,z);

}

}

}

Console.ReadKey();

}

}

}

任务85:

编写程序利用二重循环,求出所有的1000到10000之间的素数:

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication1

{

classProgram

{

staticvoidMain(string[]args)

{

for(inti=1000;i<=10000;i++)

{

boolisPrime=true;

for(intj=2;j<=i-1;j++)//判断i是否是素数

{

if(i%j==0)

isPrime=false;

}

if(isPrime)//通过标志变量来决定是否是素数

Console.Write(i+"");

}

Console.ReadKey();

}

}

}

任务86:

打印如下图所示的乘法口诀表:

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication1

{

classProgram

{

staticvoidMain(string[]args)

{

for(inti=1;i<=9;i++)

{

for(intj=1;j<=i;j++)

{

Console.Write("{0}*{1}={2}",j,i,j*i);

}

Console.WriteLine();

}

Console.ReadLine();

}

}

}

任务87:

随机产生8个0到15之间的整数,编写程序求出这8个随机整数的阶乘,再求出这8个阶乘的和。

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication4

{

classProgram

{

staticvoidMain(string[]args)

{

Randomrnd=newRandom();

longsum=0;

for(inti=1;i<=8;i++)

{

intx=rnd.Next(0,15);//随机产生8个0到15的整数

longp=1;

if(x>0)

{

for(intj=1;j<=x;j++)//求x的阶乘

p=p*j;

Console.WriteLine("{0}!

={1}",x,p);

}

else

p=1;//0的阶乘是1

sum=sum+p;//求所有阶乘的和

}

Console.WriteLine("所有以上的阶乘之和={0}",sum);

Console.ReadKey();

}

}

}

任务88:

随机产生10个100到10000之间的整数,求这10个随机整数的逆数(即反向数),并求这些逆数的和。

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication4

{

classProgram

{

staticvoidMain(string[]args)

{

Randomrnd=newRandom();

intsum=0;

for(inti=1;i<=10;i++)

{

intr=rnd.Next(10,10000);

Console.Write("{0}的逆数是:

",r);

intreverse=0;

do

{

intp=r%10;//获取个位数

reverse=reverse*10+p;

r=r/10;

}while(r!

=0);

Console.WriteLine(reverse);

sum=sum+reverse;//求所有逆数之和

}

Console.ReadKey();

}

}

}

任务89:

编写程序找出2到10000之间的所有个位数是1的素数,并显示出来,要求每行显示5个。

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication4

{

classProgram

{

staticvoidMain(string[]args)

{

intcount=0;

for(inti=2;i<=10000;i++)

{

boolisPrime=true;//判断i是否是素数

for(intj=2;j<=i-1;j++)

{

if(i%j==0)

{

isPrime=false;

break;

}

}

if(isPrime)//如果是素数,在判断它的各位是否是1

{

if(i%10==1)//个位数是1

{

Console.Write(i+"");

count++;

if(count%5==0)//控制每显示5个就换一行

Console.Write("\n");

}

}

}

Console.ReadKey();

}

}

}

任务90:

通过键盘输入一个正整数n,找出1到n之间所有的回文数。

所谓的回文数指本身等于它的逆数的数。

参考代码:

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Text;

namespaceConsoleApplication4

{

classProgram

{

staticvoidMain(string[]args)

{

Console.Write("请输入一个正整数n:

");

intn=Convert.ToInt32(Console.ReadLine());

for(inti=1;i<=n;i++)

{

intformer=i;//原数

intreverse=0;//反向数

do//求反向数

{

intp=former%10;

reverse=reverse*10+p;

former=former/10;

}while(former!

=0);

if(i==reverse)//反向数就是本身,就是回文数

Console.Write(i+"");

}

Console.ReadKey();

}

}

}

任务91:

编写一个程序,从键盘上输入n个自然数,求最大公约数。

(输出-1为止)

intm,n,r;

m=Convert.ToInt32(Console.ReadLine());

n=Convert.ToInt32(Console.ReadLine());

do

{

r=m%n;

while(r!

=-1)

{

m=n;

n=r;

r=m%n;

}

m=Convert.ToInt32(Console.ReadLine());

}while(m!

=0);

Console.WriteLine(n);

任务92:

对任意整数进行因数分解。

intx;

x=Convert.ToInt32(Console.ReadLine());

Console.Write(x+"=");

for(inti=2;i<=x-1;i++)

{

while(x%i==0)

{

if(x/i==1)

{

Console.Write(i);

break;

}

else

{

Console.Write(i+"*");

x=x/i;

}

}

}

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1