中国大学 MOOC C语言程序设计----编程部分答案解析

C语言程序设计----编程部分答案解析

编程题目5

1图形打印。(20分)

题目内容:编写程序,打印以下图形(行n的值由键盘输入)。

              *******

               ******

                *****

                 ****

                  ***

                   **

                    *

输入样例:5

输出样例:*****

              ***

               **

                *

输入样例:9

输出样例: *********

               ********

                *******

                 ******

                  *****

                   ****

                    ***

                      *

时间限制:500ms 内存限制:32000kb

代码:

#include
int main()
{
	int i,j,n;
	char a=' ',b='*';
	scanf("%d",&n);
	for(i=0;ii;j--) {
			printf("%c",b);
			
		}
		printf("\n");
	 } 
	 return 0;
 } 

2特征四位数。(20分)

题目内容:已知四位数3025具有一个特殊性质:它的前两位数字30与后两位数字25之和是55,而55的平方正好等于3025。编程找出所有具有这种性质的四位数。

输出格式:每一个四位数自占一行

时间限制:500ms 内存限制:32000kb

代码:

#include
int main()
{
	int n,x,y;
	for(n=1000;n<=9999;n++)
	{
		x=n%100;
		y=n/100;
		if(n==(x+y)*(x+y))
		{
			printf("%d\n",n);
			
		}
	}
	return 0;
 } 

3求和S。(30分)

题目内容:求s=1+(1+2)+…+(1+2+3+…+n)的值,其中n由键盘输入。

输入样例:3

输出样例:10

输入样例:8

输出样例:120

输入样例:0

输出样例:Error!

输入样例:-1

输出样例:Error!
时间限制:500ms 内存限制:32000kb

代码:

#include
int main()
{
	int i,n,s=0;
	scanf("%d",&n);
	if(n<=0)
	
	{
		printf("Error!");
	}
    else{

		int a=0;
		for(i=1;i<=n;i++)
		{
		a=a+i;
		 s=s+a; 
		} 
		 printf("%d",s);
	}
return 0;
}

4追查车号。(20分)

题目内容:一辆卡车违反交通规则,撞人逃逸。现场三人目击事件,但都没有记住车号,只记下车的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的;丙是位数学家,他说:四位的车号正好是一个整数的平方。请根据以上线索求出车号。

输出格式:The number is ****。
时间限制:500ms 内存限制:32000kb

代码:

#include
#include
int main()
{
	int a,b;
	 int x;
	 for(a=1;a<10;a++)
			for(b=1;b<10;b++) {
			
					 x=sqrt(a*1000+a*100+b*10+b);
			 		if(x*x==(a*1000+a*100+b*10+b))
					 {
	 						printf("The number is %d%d%d%d",a,a,b,b);
					 } 
			 }
	 return 0;
}

简要分析:
由甲乙两人可知,aabb;
再由丙可知,为某一个数的平方的四位数,882 = 7744

你可能感兴趣的:(c语言答案)