1. 使用函数计算两点间的距离给定平面任意两点坐标(x1,y1)和(x2,y2),求这两点之间距离(保留2位)小数。要求定义调用dist(x1,y1,x2,y2)计算两点间的距离坐标两点坐标之间距离公式如下

#include <stdio.h>
#include <math.h>

double dist(x1,y1,x2,y2){
	return sqrt(pow((x1-x2),2)+pow((y1-y2),2));
}
int main(){
	printf("%lfn",dist(4,7,7,11));
	return 0;
}

2. 请编写函数fun,它的功能计算输出给定整数n的所有因子(不包括1与自身)的平方和(规定n的值不大于100)。

输入输出实例

Enter n:56

sum=1113

#include <stdio.h>
#include <math.h>

int fun(int n){
	int i,sum=0;
	if(n == 1){
		return 1;
	}
	if(n<1 || n&gt;100) {
		printf("Error!n");
		return 0;
	}
	for(i=2;i<n;i++){
		// 如果 n 能被 i 整除 
		if(!(n%i)){
			sum += pow(i,2);
		}
	}
	return sum;
}

int main(){
	int n;
	printf("Enter n:"); 
	scanf("%d",&amp;n);
	printf("sum=%dn",fun(n));
	return 0;
}

3. 使用函数输出字符矩阵:输入矩形的长度len宽度width和字符ch,输出一个长宽分别为lenwidth实心字符矩阵。要求定义调用函数matrix(len, width, ch),实现屏幕显示长度为len宽度width,由字符ch组成的实心矩阵图案。

输入输出实例

Enter len,width,ch:5 2 G

GGGGG

GGGGG

#include <stdio.h&gt;
void matrix(int len,int width,char ch){
	int i,j;
	for(i=0;i<width;i++){
		for(j=0;j<len;j++){
			printf("%c",ch);
		}
		printf("n");
	}
} 
int main(){
	int len,width;
	char ch;
	printf("Enter len,width,ch:");
	// 接收一个空格 
	scanf("%d%d %c",&amp;len,&amp;width,&amp;ch);
	matrix(len,width,ch);
	return 0;
}

4. 使用函数求最大公约数和最小公倍数:输入两个正整数m和n(0<m,n<=1000),输出最大公约数和最小公倍数。要求定义调用函数gcd(m,n)计算m和n的最大公约数定义调用函数lcm(m,n)计算m和n的最小公倍数

输入输出实例

Enter m,n:511 292

gcd = 73

lcd = 2044

#include <stdio.h&gt;
/**
 * 最大公约数 
 */
int gcd(int m,int n){
    int c = m%n;
    while(c)
    {
        m = n;
        n = c;
        c = m%n;
    }
    return n;
}
/**
 * 最小公倍数 
 */
int lcm(int m,int n){
	// 选出 m 和 n 中大的一个 
	int c=(m&gt;n?m:n);
	while(1)
	{
		// 如果 c 同时能被 m 和 n 整除 
		if(!(c%m)&amp;&amp;!(c%n)){
			break;
		}
		c++;
	}
	return c;
}
int main(){
	int m,n;
	printf("Enter m,n:");
	scanf("%d%d",&amp;m,&amp;n);
	if(m<0 || n<0 || n&gt;1000 || m&gt;1000 ){
		printf("Error!n");
		return 0;
	}
	printf("gcd = %dn",gcd(m,n));
	printf("lcd = %dn",lcm(m,n));
	return 0;
}

原文地址:https://blog.csdn.net/m0_46745664/article/details/134707806

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_41032.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注