C试题.docx

上传人:b****8 文档编号:23707086 上传时间:2023-05-20 格式:DOCX 页数:22 大小:75.33KB
下载 相关 举报
C试题.docx_第1页
第1页 / 共22页
C试题.docx_第2页
第2页 / 共22页
C试题.docx_第3页
第3页 / 共22页
C试题.docx_第4页
第4页 / 共22页
C试题.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

C试题.docx

《C试题.docx》由会员分享,可在线阅读,更多相关《C试题.docx(22页珍藏版)》请在冰豆网上搜索。

C试题.docx

C试题

1,输入五角星的尺寸,打印一个五角星,五角星可以是不规则的,如果下图

答案:

staticvoidMain()

{

Console.WriteLine("输入打印的五角星的尺寸");

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

for(intj=0;j<3*n;j++)

{

for(inti=0;i<3*n;i++)

{

if(i==j+n||i==6*j-9*n||i+6*j==9*n||i==n||i+j==4*n)

{

Console.Write("*");

}

else

{

Console.Write("");

}

}

Console.Write("\n");

}

Console.ReadKey();

}

2,打印一个米字形,输入正方形的边长,打印正方型的边框、对角线和中线。

答案:

publicstaticvoidMain()

{

Console.WriteLine("打印一个米字图形,输入边长");

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

for(inti=0;i

{

for(intj=0;j

{

if(i==j||i+j==n||i==n/2||j==n/2||i==0||i==n-1||j==0||j==n-1)

{

Console.Write("*");

}

else

{

Console.Write("");

}

}

Console.Write("\n");

}

Console.ReadKey();

}

3,打印抛物线的图形(抛物线的方程式4y=(x-b)(x-b),b为顶点坐标),如下图:

答案:

publicstaticvoidMain()

{

//直线的方程式2y=(x-b)*(x-b);

Console.WriteLine("请输入抛物线定点x坐标,显示屏幕区域大小");

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

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

//(x-r)*(x-r)+(y-r)*(y-r)=r*r;

for(inti=0;i

{for(intj=0;j

{

if(4*j-(i-k)*(i-k)==0)//直线的方程式y=kx;

{

Console.Write("*");

}

else

{

Console.Write("");

}

}

Console.Write("\n");

}

Console.ReadKey();

}

4,打印出如下的数字金子塔,输入层数n,打出n层,最好可以提供连续打印,如下图:

答案:

staticvoidMain()

{

stringc="";

do

{

Console.WriteLine("请输入打印的层数");

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

//作业2:

//1

//121

//12321

//1234321

//123454321

//12345654321

//1234567654321

//123456787654321

//12345678987654321

intr;

for(inti=0;i

{

for(intj=0;j<2*n;j++)

{

if(i+j>=n&&j

{

r=i+j-n+1;

Console.Write(r);

}

elseif(j==n)

{

Console.Write(i+1);

}

elseif(i-j+n>=0&&j>n)

{

r=i-j+n+1;

Console.Write(r);

}

else

{

Console.Write("");

}

}

Console.Write("\n");

}

Console.Write("是否继续打印?

y/n");

c=Console.ReadLine();

}while(c=="y");

Console.ReadKey();

5输入三角形的底边长,打印如下交叉的三角形;

答案:

staticvoidMain(string[]args)

{

Console.WriteLine("打印三角形,输入三角形的边长");

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

for(inti=0;i<=n/2;i++)

{

for(intj=0;j<=n;j++)

{

if(i+j==n/2||j-i==n/2||i==n/2||i==0||i==j||i+j==n)

{

Console.Write("*");

}

else

{

Console.Write("");

}

}

Console.Write("\n");

}

Console.ReadKey();

}

6,进制转换,输入一个十进制数,和他将要转换的进制数n,输出这个十进制数转换成n进制的数。

例如在屏幕中输入“12,2”,输出“1100”,输入”20,8”输出“24”,如下图:

答案:

staticvoidMain(string[]args)

{

Console.WriteLine("进制转换,输入你要转换的十进制数和转换的进制");

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

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

//对于十进制以下的进制

//int[]a=newint[100];

stringstr="";

//inti=99;

intmod;

while(s>0)

{

mod=s%n;

s=s/n;

str=mod.ToString()+str;

//a[i]=mod;

//i--;

}

Console.Write(str);

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

//{

//Console.Write(a[j]);

//}

Console.ReadKey();

7,水果摊购物程序,首先显示各个苹果的编号和价格,购买时输入水果的编号和数量,显示出应付的价格。

(请使用ifelse或switch)

答案:

staticvoidMain(string[]args)

{

Console.WriteLine("水果摊价格表:

");

Console.WriteLine("水果编号价格");

Console.WriteLine("1,苹果2元/斤");

Console.WriteLine("2,橘子2.5元/斤");

Console.WriteLine("3,香蕉1.5元/斤");

Console.WriteLine("4,葡萄3.2元/斤");

Console.WriteLine("5,桃子3元/斤");

Console.WriteLine("输入你要购买的水果编号和相应的数量");

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

doublec=Double.Parse(Console.ReadLine());

doubler;

switch(b)

{

case1:

r=2*c;break;

case2:

r=2.5*c;break;

case3:

r=1.5*c;break;

case4:

r=3.2*c;break;

case5:

r=3*c;break;

default:

r=-1;

}

if(r!

=-1)

{

Console.WriteLine("请付款"+r.ToString()+"元");

}

else

{

Console.WriteLine("对不起没有改水果,请选择有效的水果编号");

}

Console.ReadKey();

}

8,打印1到100之间的素数,如下图:

答案:

publicstaticvoidMain()

{

Console.WriteLine("1到之间的素数是");

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

{

intflag=0;

for(intj=2;j

{

if(i%j==0)

{

flag=1;

}

if(flag==0&&j==i-1)

{

Console.WriteLine(i);

}

}

}

Console.Read();

}

publicstaticvoidMain()

{

Console.WriteLine("1到之间的素数是");

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

{

for(intj=2;j

{

if(i%j==0)

{

gotooutinnerFor;

}

if(j==i-1)

{

Console.WriteLine(i);

}

}

outinnerFor:

;

}

Console.Read();

}

}

 

9,输入两个数,求这个两个数的最小公倍数和最大公约数,如下图:

答案:

publicstaticvoidMain()

{

Console.WriteLine("请输入你要计算的两个数");

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

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

intmin=a

a:

b;

intmax=a>b?

a:

b;

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

{

if(a%i==0&&b%i==0)

{

Console.WriteLine("最大公约数是:

"+i.ToString());

break;

}

}

intmaxgbs=a*b;

for(intj=max;j

{

if(j%a==0&&j%b==0)

{

Console.WriteLine("最小公倍数是:

"+j.ToString());

break;

}

}

Console.ReadKey();

}

10输入杨辉三角的层数,打印杨辉三角。

如下图(提示:

用二维数组实现,三角的顶点为1,其他的元素为它的左上角元素和右上角元素之和)

答案:

staticvoidMain()

{

//杨辉三角

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

int[,]array6=newint[n+1,2*n+1];

//inti=5;

//intj=5;

//array6[i,j]=10;

//Console.Write(array6[i,j]);

array6[1,n-1]=1;

for(inti=2;i

{

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

{

array6[i,j]=array6[i-1,j+1]+array6[i-1,j-1];

}

}

for(inti=0;i

{

for(intj=0;j<2*n;j++)

{

if(array6[i,j]!

=0)

{

Console.Write(array6[i,j]);

}

else

{

Console.Write("");

}

}

Console.Write("\n");

}

Console.ReadKey();

}

11定义一个一位数组,其值是12,5,13,6,10,55,99,2,87,1,现用冒泡排序法对这些数从小到大进行排序,结果如图:

答案:

publicstaticvoidMain()

{

int[]a={12,5,13,6,10,55,99,2,87,1};

//12,5,13,6,10,55,99,2,87,1

//5,12,6,10,13,55,2,87,1,99

for(inti=0;i

{

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

}

Console.WriteLine();//换行

for(inti=0;i

{

for(intj=0;j

{

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

{

inttmp=a[j];

a[j]=a[j+1];

a[j+1]=tmp;

}

}

for(intk=0;k

{

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

}

Console.WriteLine();

}

//Sort(a);

for(inti=0;i

{

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

}

Console.WriteLine();//换行

Console.Read();

}

publicstaticvoidSort(int[]a)//功能:

排序数组是引用类型

{

intj=1;//外层循环次数,在内层每循环一次少判断一次

boolb=false;

while(j

{

b=true;//假设是个排序

for(inti=0;i

{

if(a[i]>a[i+1])

{

b=false;

intt=a[i];//交换数据

a[i]=a[i+1];

a[i+1]=t;

}

}

if(b==true)

return;

else

j++;

}

}

}

12,二维数组的显示和行列转换(用二维数组实现),输入二维数组的长度n,定义一个n*n的二维数组,对角线为0,坐下部的元素为9,右上部为1。

显示转换前后的结果。

答案:

staticvoidMain(string[]args)

{

Console.WriteLine("输入你要输入的二维数组的长度");

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

int[,]a=newint[n,n];

for(inti=0;i

{

for(intj=0;j

{

if(i

{

a[i,j]=1;

}

elseif(i>j)

{

a[i,j]=9;

}

Console.Write(a[i,j]);

}Console.Write("\n");

}

Console.WriteLine("转换过后是");

for(inti=0;i

{

for(intj=0;j

{

if(i>j)

{

inttemp=a[i,j];

a[i,j]=a[j,i];

a[j,i]=temp;

}

//Console.Write(a[i,j]);

}//Console.Write("\n");

}

for(inti=0;i

{

for(intj=0;j

{

Console.Write(a[i,j]);

}

Console.Write("\n");

}

Console.ReadKey();

}

13,2,2,4,8,32,256,…..请求出第七位数.

publicclassSumPlus{

publicstaticvoidmain(String[]args){

intsum=getSum(7);

System.out.println("当n=3时=="+sum);

}

/**

*计算:

2,2,4,8,32,256,…..请求出第七位数.

*/

publicstaticintgetSum(intn){

intsum=0;

if(n<=2){

return2;

}

else{

sum=getSum(n-1)*getSum(n-2);

}

returnsum;

}

}

14,求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。

例如2+22+222+2222+22222(此时共有5个数相加)

publicclassLeiJia{

publicstaticvoidmain(String[]args){

intsum=getSum(2,5);

System.out.println("sum="+sum);

}

/**

*求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。

*例如2+22+222+2222+22222(此时共有5个数相加)

*/

publicstaticintgetSum(inta,intn){

intsum=0;

intt=0;

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

t*=10;

t+=a;

sum+=t;

}

returnsum;

}

}

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

当前位置:首页 > 总结汇报 > 其它

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

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