c#程序设计题.docx

上传人:b****5 文档编号:6508893 上传时间:2023-01-07 格式:DOCX 页数:16 大小:19.12KB
下载 相关 举报
c#程序设计题.docx_第1页
第1页 / 共16页
c#程序设计题.docx_第2页
第2页 / 共16页
c#程序设计题.docx_第3页
第3页 / 共16页
c#程序设计题.docx_第4页
第4页 / 共16页
c#程序设计题.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

c#程序设计题.docx

《c#程序设计题.docx》由会员分享,可在线阅读,更多相关《c#程序设计题.docx(16页珍藏版)》请在冰豆网上搜索。

c#程序设计题.docx

c#程序设计题

输入一个整数,判定它为几位数。

例如,99是2位数,-100是3位数。

方法一:

staticvoidMain(string[]args)

{

intx,n,m,count=0;

Console.WriteLine("请输入一个整数:

");

x=Int32.Parse(Console.ReadLine());

m=x;

do

{

n=m/10;

m=n;

++count;

}while(n!

=0);

Console.WriteLine("{0}是{1}位数",x,count);

Console.Read();

}

方法二:

staticvoidMain(string[]args)

{

Stringstr;

intx,n;

Console.WriteLine("请输入一个整数:

");

x=Int32.Parse(Console.ReadLine());

str=x.ToString();

if(x>0)

n=str.Length;

else

n=str.Length-1;

Console.WriteLine("{0}是{1}位数,x,n);

Console.Read();

}

编写一个程序,用while语句,求出1+(1+2)+(1+2+3)+...+(1+2+3+...+10)之和。

(k10041803)

inti=1,s=0,j=1,s1=0;

while(j<=10)

{

while(i<=j)

{

s=s+i;

i++;

}

s1=s1+s;

j++;

}

Console.WriteLine("{0}",s1);

J:

排序作用

编一个程序,输入二个正整数,求出它们的最大公约数。

(k10041901)

inti,j,k;

Console.WriteLine("请输入两个正整数");

i=int.Parse(Console.ReadLine());

j=int.Parse(Console.ReadLine());

k=i

i:

j;

while(!

(i%k==0&&j%k==0))

k--;

Console.WriteLine("最大公约数为{0}",k);

编一个程序,用while循环语句,从键盘输入10个数,要求找出最大数和次大数。

(k10041902)

inti=1,max=1,max1=1;

ints;

Console.WriteLine("请输入10个数:

");

while(i<=10)

{

s=int.Parse(Console.ReadLine());

if(s>max)

{

max1=max;

max=s;

}

elseif(s>max1)

{

s=max1;

}

i++;

}

Console.WriteLine("最大值为{0},次大值为{1}",max,max1);

编一个程序,要求使用while语句,输入用户名和密码,实现用户登录程序的功能,至多允许输入三次,超过三次不允许登录。

(k10022507)

conststringUserName="admin";

conststringPassWord="123456";

stringusername,password;

inti=1;

while(i<=3)

{

Console.WriteLine("请输入用户名");

username=Console.ReadLine();

Console.WriteLine("请输入密码");

password=Console.ReadLine();

if(username==UserName&&password==PassWord)

break;

else

Console.WriteLine("你输入的用户名或者密码错误,请重新输入用户名和密码");

i++;

}

if(i<=3)

{

Console.WriteLine("正在登录系统");

}

else

Console.WriteLine("不能登录系统");

编一个程序,输入a,b,c的值,求出一元二次方程a*x*x+b*x+c=0的二个实数根。

计算二个实数根必须使用Math类中的Sqrt()方法,计算指定数的开方。

计算二个实数根,可以用公式(-b+Math.Sqrt(b*b-4*a*c))/(2*a)和(-b-Math.Sqrt(b*b-4*a*c))/(2*a)(k10042102)

inta,b,c;

doublex1,x2;

Console.WriteLine("请输入a,b,c的值");

a=int.Parse(Console.ReadLine());

b=int.Parse(Console.ReadLine());

c=int.Parse(Console.ReadLine());

if(b*b-4*a*c>=0)

{

x1=(-b+Math.Sqrt(b*b-4*a*c))/(2*a);

x2=(-b-Math.Sqrt(b*b-4*a*c))/(2*a);

Console.WriteLine("这个方程的两个根是{0},{1}",x1,x2);

}

else

Console.WriteLine("这个方程没有解");

编一个程序,利用while循环语句,找出2到100之间的素数。

(k10042104)

inti=2,j;

boolb;

Console.WriteLine("2到100中的素数为:

");

while(i<=100)

{

b=true;

j=2;

while(j<=i-1)

{

if(i%j==0)

{

b=false;

break;

}

j++;

}

if(b==true)Console.Write("{0}",i);

i++;

}

Console.WriteLine();

编一个程序,定义一个有10个元素的数组,使用for循环语句,从键盘上输入10名同学的数学成绩,分别求出最高分和最低分,并且求出10名同学的数学平均成绩。

(k10042501)

double[]math=newdouble[10];

Console.WriteLine("请输入10名学生的数学成绩");

for(inti=0;i

{

math[i]=double.Parse(Console.ReadLine());

}

doublemax=math[0],min=math[0],ave,sum=0;

for(intj=0;j

{

if(max

max=math[j];

if(min>math[j])

min=math[j];

sum=sum+math[j];

}

ave=sum/math.Length;

Console.WriteLine("最高分为{0},最低分为{1},平均分为{2}",max,min,ave);

编一个程序,定义一个有10个元素的数组,使用for循环语句,从键盘上输入10名同学的数学成绩,分别求出最高分和最低分,并且求出10名同学的数学平均成绩。

方法一:

staticvoidMain(string[]args)

{

int[]a=newint[10];

intsum=0,average,max,min;

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

{

intx;

Console.WriteLine(“请输入第{0}个同学的数学成绩!

”,i+1);

x=Int32.Parse(Console.ReadLine());

a[i]=x;

sum+=x;

if(i==0)

max=a[i];

elseif(a[i]>max)

max=a[i];

if(i==0)

min=a[i];

elseif(a[i]

min=a[i];

}

average=sum/10;

Console.WriteLine(“最高分数为{0}分,最低分数为{1}分,这十名同学的平均数学成绩为{2}分。

”,max,min,average);

Console.Read();

}

方法二:

staticvoidMain(string[]args)

{

double[]math=newdouble[10];

Console.WriteLine("请输入10名学生的数学成绩");

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

{

math[i]=double.Parse(Console.ReadLine());

}

doublemax=math[0],min=math[0],ave,sum=0;

for(intj=0;j

{

if(max

max=math[j];

if(min>math[j])

min=math[j];

sum=sum+math[j];

}

ave=sum/math.Length;

Console.WriteLine("最高分为{0},最低分为{1},平均分为{2}",max,min,ave);

Console.Read();

}

 

编一个程序,从键盘输入10个实数,存入一个数组,用冒泡法对这个数作升序排序。

(k10040603)

inti,j,temp;

constintn=10;

int[]SortArray=newint[n];

for(i=0;i

{

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

");

SortArray[i]=int.Parse(Console.ReadLine());

}

Console.Write("\n等待排序的数据序列为:

");

for(i=0;i

{

Console.Write("{0}",SortArray[i]);

}

for(i=n-1;i>=0;i--)

{

for(j=0;j<=i-1;j++)

{

if(SortArray[j]>SortArray[j+1])

{

temp=SortArray[j];

SortArray[j]=SortArray[j+1];

SortArray[j+1]=temp;

}

}

}

Console.Write("\n已经排序后的数据序列为:

");

for(i=0;i

{

Console.Write("{0}",SortArray[i]);

}

Console.WriteLine();

编一个程序,定义一个有10个元素的一维数组a,在键盘上输入时没有大小次序,但是存入数组时要按由小到大的顺序存放。

例如,输入第1个数1时,存入a[0];假如第2个数是5,则数存入a[1];假如第3个数是4,那么把前面输入的5向后面移动到a[2],把4插入到a[1]的位置上,这样使得每输入一个数,保持从小到大的顺序排列。

(k10040310)

inti,j,temp,n=10;

int[]a=newint[n];

Console.WriteLine("请输入{0}个整数。

",n);

for(i=0;i

{

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

");

a[i]=int.Parse(Console.ReadLine());

for(j=i;j>=1;j--)

{

if(a[j-1]>a[j])

{

temp=a[j-1];

a[j-1]=a[j];

a[j]=temp;

}

else

break;

}

}

Console.Write("\n依次输出数组中的值:

");

for(i=0;i

{

Console.Write("{0}",a[i]);

}

Console.WriteLine();

编一个程序,定义一个字符串变量,输入字符串,然后再输入一个字符,在字符串中查找该字符出现的次数。

(k10040307)

stringa;

charb;

intd=0;

Console.WriteLine("请输入一个字符串");

a=Console.ReadLine();

Console.WriteLine("请输入一个字符");

b=char.Parse(Console.ReadLine());

for(intc=0;c<=a.Length-1;c++)

{

if(a[c]==b)

d++;

}

Console.WriteLine("字符{0}在字符串{1}中出现了{2}次",b,a,d);

编一个程序,定义一个字符串变量,输入字符串,判断有没有连续重复字符出现,统计重复字符出现次数。

例如,aaabccdfff,其中a重复出现二次,c重复出现一次,f重复出现二次,共计字符重复五次。

(k10053005)

stringi;

inta=0;

Console.WriteLine("输入一个字符串");

i=Console.ReadLine();

for(intb=1;b<=i.Length-1;b++)

{

if(i[b]==i[b-1])

a++;

}

Console.WriteLine("{0}",a);

编一个程序,利用for语句,打印一个如下形式的一个直角三角形,顶点在屏幕中线上,行数从键盘输入。

*

**

***

****

(k10051202)

inti,j,n=0,m=40;

while(n<=0)

{

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

");

n=int.Parse(Console.ReadLine());

}

Console.WriteLine('\n');

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

{

Console.Write('\n');

for(j=1;j<=m;j++)Console.Write('');

for(j=1;j<=i;j++)Console.Write('*');

}

Console.WriteLine();

定义一个一维数组,输入任意6个整数,假定为7,4,8,9,1,5。

编一个程序,利用for语句,输出如下方阵的内容:

748915

574891

157489

915748

891574

489157

(k10050903)

int[]a={7,4,8,9,1,5};

inttemp;

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

{

Console.Write("{0}",a[i]);

}

for(inti=0;i<5;i++)

{

Console.WriteLine();

temp=a[5];

for(intj=5;j>0;j--)

{

a[j]=a[j-1];

}

a[0]=temp;

for(intk=0;k<6;k++)

Console.Write("{0}",a[k]);

}

编一个程序,利用for语句,打印一个如下形式的一个等腰三角形,顶点在屏幕中线上,行数从键盘输入。

*

***

*****

*******

(k10050902)

inti;

Console.WriteLine("从键盘上输入一个数");

i=int.Parse(Console.ReadLine());

for(intb=1;b<=i;b++)

{

for(inta=1;a<=i-b;a++)

{

Console.Write("");

}

for(intc=1;c<=2*b-1;c++)

{

Console.Write("*");

}

Console.WriteLine();

}

编一个程序,输入一个正整数,判断它是否为素数。

如不是,则输出其所有正约数。

(k10050224)

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

");

uinti,n,flag;

boolf=true;

n=uint.Parse(Console.ReadLine());

//uint.TryParse(Console.ReadLine(),outn);

for(i=2;i

{

if(n%i==0){f=false;break;}

}

if(f)Console.WriteLine("{0}是一个素数。

",n);

else

{

Console.Write("{0}不是一个素数。

\n{1}=",n,n);

i=2;

flag=0;

while(i<=n)

{

while(n%i==0)

{

n=n/i;

if(flag!

=0)Console.Write('*');

flag=1;

Console.Write("{0}",i);

}

i++;

}

}

编一个程序,输入一个代表身份证号码的字符串,判断字符串长度(18)是否正确,还要判断输入的每个字符是否为数字。

否则要求重新输入。

(k10050225)

stringa;

boolq=true;

Console.WriteLine("请输入你的身份证;");

a=Console.ReadLine();

for(intb=0;b<=a.Length-1;b++)

{

if(a[b]>='0'&&a[b]<='9')

{

continue;

}

else

q=false;

}

if(a.Length==18)

{

if(q==true)

Console.WriteLine("输入正确");

elseif(q==false)

Console.WriteLine("输入不合法,请重新输入");

}

else

Console.WriteLine("输入不合法,请重新输入");

编一个程序,输入一个正整数n,把它转换为二进制数,并输出。

提示:

应该利用数组。

(k10050226)

int[]a=newint[80];

inti,j,n=0;

while(n<=0)

{

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

");

n=int.Parse(Console.ReadLine());

}

i=0;

Console.Write("\n正整数{0}转换为二进制数:

",n);

while(n>0)

{

a[++i]=n%2;

n=n/2;

}

for(j=i;j>0;j--)Console.Write(a[j]);

Console.WriteLine();

编一个程序,输入一个整数,判定它为几位数。

例如,99是2位数,-100是3位数。

(k10050906)

intm,n,k=0;

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

");

m=int.Parse(Console.ReadLine());

n=Math.Abs(m);

while(n!

=0)

{

n=n/10;

k++;

}

Console.WriteLine("{0}是{1}位数。

",m,k);

用C#实现产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复。

ArrayListar=newArrayList();

int[]list=newint[100];

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

{

ar.Add(i);

}

Randomrm=newRandom();

for(inti=0;i<100;i++)

{

intindex=rm.Next(99-i);

list[i]=(int)ar[index];

ar.RemoveAt(index);

}

for(inti=0;i

{

Console.WriteLine(list[i]);

}

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

当前位置:首页 > IT计算机 > 电脑基础知识

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

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