admin 管理员组

文章数量: 1086019


2024年4月21日发(作者:java教程自学全套兄弟连)

求二维数组周边元素之和

编写一个程序,求出4×5的二维数组周边元素之和。

输入:二维数组元素

输出:周边元素之和

如:输入:1 3 5 7 9

2 9 9 9 4

6 9 9 9 8

1 3 5 7 0

输出:61

#include

int main()

{ int a[4][5],i,j,sum1=0,sum2=0,sum;

for(i=0;i<4;i++)

{

for(j=0;j<5;j++)

scanf("%d",&a[i][j]);

}

for(j=0;j<5;j++)

sum1=sum1+a[0][j]+a[3][j];

for(i=0;i<4;i++)

sum2=sum2+a[i][0]+a[i][4];

sum=sum1+sum2-a[0][0]-a[0][4]-a[3][4]-a[3][0];

printf("%dn",sum);

return 0;

}

海盗们决定用“投环套物”的方式来奖励最近一次行动中贡献最大的人。他们将1克拉钻石

排列成矩阵,通过投掷圆环决定奖励的钻石的数量。假设每个钻石的x和y坐标都是1到

99的整数,输入矩阵及圆形,请你帮他们判断一下这个人能获得多少克拉的钻石。

输入格式:输入数据包含两行,第一行为矩阵的行数及列数,第二行为圆心的坐标点及半径。

输出格式:输出数据为圆形内的钻石的克拉数(包括圆形边上的钻石)。

样例输入:4 4

2 1 1

样例输出:5

以下内容可能对你有帮助:当(x-a)2+(y-b)2= r2时,点在圆上。其中,圆心坐标为(a,b),r

为半径。

#include

#include

void main()

{

int i,j,x,y;

float r;

int a,b,count=0;

printf("请输入矩阵的行列i,j:");

scanf("%d %d",&i,&j);

printf("请输入圆心的坐标点及半径x,y,r:");

scanf("%d %d %f",&x,&y,&r);

for(a=0;a

for(b=0;b

if(sqrt((a-x)*(a-x)+(b-y)*(b-y))<=r)

count++;

printf("钻石个数:%d",count);

}

* * * *

* * * *

* * * *

* * * *

一辆卡车违反交通规则,撞人后逃跑。现场有三人目击事件,但都没有记住车号,只记下车

号的一些特征。甲说:牌照的前两位数字是相同的;乙说:牌照的后两位数字是相同的,但

与前两位不同; 丙是数学家,他说:四位的车号刚好是一个整数的平方。请根据以上线索

求出车号。

*问题分析与算法设计

按照题目的要求造出一个前两位数相同、后两位数相同且相互间又不同的整数,然后判

断该整数是否是另一个整数的平方。

*程序与程序注释

#include

#include

void main()

{

int i,j,k,c;

for(i=1;i<=9;i++) /*i:车号前二位的取值*/

for(j=0;j<=9;j++) /*j:车号后二位的取值*/

if(i!=j) /*判断二位数字是否相异*/

{

k=i*1000+i*100+j*10+j; /*计算出可能的整数*/

for(c=31;c*c

if(c*c==k) printf("Lorry--No. is %d.n",k); /*若是,打印结果*/

}

}

*运行结果

Lorry _ 7744


本文标签: 输入 钻石 整数 车号 程序