【常用方法C】

简介: 【常用方法C】

基础

1.判断素数

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int judge(int p);
int main() {
  int p;
  scanf("%d", &p);
  if (judge(p) == 1)
    printf("%d是素数", p);
  else
    printf("%d不是素数", p);
  return 0;
}
int judge(int p) {
  if (p <= 1 || p != 2 && p % 2 == 0) {
    return 0;
  }
  else {
    for (int i = 2; i * i <= p; ++i) {
      if (p % i == 0) {
        return 0;
      }
    }
    return 1;
  }
}

2.判断闰年

#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main() {
    int year;
    scanf("%d", &year);
    if (judge(year) == 1)
        printf("%d是闰年", year);
    else
        printf("%d不是润年", year);
    return 0;
}
int judge(int year) {
    //能被4整除,但不能被100整除。或者能被400整除
    if ((year % 4 == 0) && ((year % 100) != 0) || year % 400 == 0) 
        return 1;
    else
        return 0;
}

3.时间差(同一天)

#include<stdio.h>
int main()
{
  int hour1, minute1;
  int hour2, minute2;
  scanf("%d %d",&hour1, &minute1);
  scanf("%d %d",&hour2, &minute2);
  int ih = hour2 - hour1;
  int im = minute2 - minute1;
  if(im < 0){
    im = 60 +im;
    ih--;
  }
  printf("时间差是%d小时%d分。\n",ih, im);
  return 0;
 } 

4.求最小公倍数

#include<stdio.h>
int main() {
  long long a, b, i = 1;
  scanf("%lld %lld", &a, &b);
  while (a * i % b) {//如果等于零,则找到最小公倍数
    i++;
  }
  printf("%lld", i * a);
  return 0;
}

5.求最大公约数.

#include<stdio.h>
int main() {
  long long a, b,c;
  scanf("%lld %lld", &a, &b );
  if (a < b) {
    long long temp = b;
    b = a;
    a = temp;
  }
  while (a % b) {
    c = a % b;
    a = b;
    b = c;
  }
  printf("%lld", c);
}

6.逆序输出英文语句,其中每个单词顺序不变

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
void revers(char* left,char* right) {
  while (left < right) {
    char temp = *left;
    *left = *right;
    *right = temp;
    left++;
    right--;
  }
}
int main() {
  char arr[101];
  gets(arr);
  //正则表达式scanf("%[^\n]s",&arr);
  int len = strlen(arr);
  revers(arr, arr + len - 1);
  char* start=arr;
  char* cur=arr;
  while (*cur) {
    while (*cur != ' ' && *cur != '\0') {
      cur++;
    }
    revers(start, cur - 1);
    start = cur + 1;
    if(*cur == ' ')
      cur++;
  }
  printf("%s", arr);
  return 0;
}


相关文章
|
25天前
字符串常用方法
字符串常用方法
|
2月前
|
Java 索引
JAVA数组的常用方法
JAVA数组的常用方法
22 1
|
9月前
|
JavaScript
【JS面向对象编程常用方法】
【JS面向对象编程常用方法】
35 0
|
5月前
|
索引
看一下List接口的常用方法
看一下List接口的常用方法
37 1
|
5月前
|
BI C# 数据安全/隐私保护
C# 字符串常用方法的详细讲解和应用
C# 字符串常用方法的详细讲解和应用
|
9月前
|
JavaScript 前端开发
数组常用方法
数组常用方法
45 0
|
10月前
|
存储 C# 索引
C#视频—集合常用方法
C#视频—集合常用方法
|
11月前
|
存储 人工智能 算法
唯一分解定理常用方法
唯一分解定理常用方法
86 0
|
Java
Java集合Collection接口中的常用方法演示
由于接口不可以创建对象,所以,以下方法的演示将以Collection接口的子接口List的实现类ArrayList()进行演示。
82 0
Java集合Collection接口中的常用方法演示
数组常用方法总结(部分方法利用了工具类)
数组常用方法总结(部分方法利用了工具类)
91 0