C语言 每日一题 Day10

简介: C语言 每日一题 Day10

1.使用函数判断完全平方数

本题要求实现一个判断整数是否为完全平方数的简单函数。

函数接口定义:

int IsSquare(int n);

其中n是用户传入的参数,在长整型范围内。如果n是完全平方数,则函数IsSquare必须返回1,否则返回0。

代码实现

#include <stdio.h>
#include <math.h>
int IsSquare(int n) {
  if (sqrt(n) == (int)sqrt(n)) {
    return 1;
  }
  return 0;
}
int main() {
  long int num = 0;
  printf("请输入你想判断的数字\n");
  scanf("%d", &num);
  int judge = IsSquare(num);
  if (judge == 1) {
    printf("是完全平方数\n");
  }
  else if (judge == 0) {
    printf("不是完全平方数\n");
  }
  else {
    printf("输入错误");
  }
  return 0;
}

运行结果


2.求最大值及其下标

本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始)。

输入格式 :

输入在第一行中给出一个正整数n(1 < n≤10)。第二行输入n个整数,用空格分开。

输出格式 :

在一行中输出最大值及最大值的最小下标,中间用一个空格分开。


代码实现

#include<stdio.h>
#define MAXN 10
int main()
{
    int i, index, n;
    int a[MAXN];
    scanf("%d", &n);
    for (i = 0; i < n; i++)
        scanf("%d", &a[i]);
    index = 0;
    for (i = 1; i < n; i++) {
        if (a[i] > a[index]) {
            index = i;
        }
    }
    printf("%d %d", a[index], index+1);
    return 0;
}

运行结果


3.调和平均

N 个正数的算数平均是这些数的和除以 N,它们的调和平均是它们倒数的算数平均的倒数。本题就请你计算给定的一系列正数的调和平均值。

输入格式:

每个输入包含 1 个测试用例。每个测试用例第 1 行给出正整数 N(≤1000);第 2 行给出 N 个正数,都在区间[0.1, 100] 内。

输出格式:

在一行中输出给定数列的调和平均值,输出小数点后2位。


代码实现

#include <stdio.h>
int main()
{
    int n, i;
    float a, sum = 0;
    scanf("%d", &n);
    for (i = 0; i < n; i++)
    {
        scanf("%f", &a);
        sum += 1 / a;
    }
    printf("%.2f", 1 / (sum / n));
    return 0;
}

运行结果

目录
相关文章
|
C语言
C语言刷题指南(二)
C语言刷题指南(二)
70 0
|
6月前
|
C语言
C语言刷题1
C语言刷题1
448 0
|
人工智能 编译器 C语言
C语言——每日一题
C语言——每日一题
|
C语言 数据安全/隐私保护
C语言刷题
C语言刷题
70 1
|
11月前
|
存储 算法 测试技术
C语言 每日一题 11.9 day15
C语言 每日一题 11.9 day15
62 0
|
11月前
|
C语言
C语言 每日一题 day9
C语言 每日一题 day9
39 0
|
算法 C语言
C语言刷题指南(四)
C语言刷题指南(四)
66 0
|
C语言
C语言刷题指南(一)
C语言刷题指南(一)
142 0
|
机器学习/深度学习 存储 缓存