英文名排序c++

题目描述:

给英文名排序,按名字首字母先后排序,一样看姓氏首字母先后,名字与姓氏分割点在“.”。

输入格式:

n+1行,第一行n,其余英文名。

输出格式:

n行,排序后的名字。

输入样例1:

3

Amy.Zaturer

Hreo.Grey

Brown.Luo

 输出样例1:

Amy.Zaturer

Brown.Luo

Hreo.Grey

输入样例2:

4

Adolph. Hitler

Rory. McIlroy 

Atir.Erange

Tiger.Woz

输出样例2:

 Atir.Erange

Adolph. Hitler

Rory. McIlroy 

Tiger.Woz

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是按照名称首字母排序的C语言函数和方法: ```c #include <stdio.h> #include <stdlib.h> #include <string.h> void bubble_sort(int arr[], int size) { int temp; for (int i = 0; i < size - 1; i++) { for (int j = 0; j < size - i - 1; j++) { if (arr[j] > arr[j + 1]) { temp = arr[j]; arr[j] = arr[j + 1]; arr[j + 1] = temp; } } } } int fibonacci(int n) { if (n <= 1) return n; return fibonacci(n - 1) + fibonacci(n - 2); } int gcd(int a, int b) { if (a == 0) return b; return gcd(b % a, a); } int lcm(int a, int b) { return (a * b) / gcd(a, b); } void quick_sort(int arr[], int left, int right) { if (left < right) { int pivot = arr[right]; int i = left - 1; for (int j = left; j < right; j++) { if (arr[j] < pivot) { i++; int temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; } } int temp = arr[i + 1]; arr[i + 1] = arr[right]; arr[right] = temp; quick_sort(arr, left, i); quick_sort(arr, i + 2, right); } } int sum_of_digits(int n) { int sum = 0; while (n > 0) { sum += n % 10; n /= 10; } return sum; } int main() { int arr[] = {5, 1, 4, 2, 8}; int size = sizeof(arr) / sizeof(arr[0]); bubble_sort(arr, size); for (int i = 0; i < size; i++) { printf("%d ", arr[i]); } printf("\n"); int fib = fibonacci(5); printf("Fibonacci of 5: %d\n", fib); int gcd_result = gcd(24, 36); printf("GCD of 24 and 36: %d\n", gcd_result); int lcm_result = lcm(24, 36); printf("LCM of 24 and 36: %d\n", lcm_result); int arr2[] = {5, 1, 4, 2, 8}; int size2 = sizeof(arr2) / sizeof(arr2[0]); quick_sort(arr2, 0, size2 - 1); for (int i = 0; i < size2; i++) { printf("%d ", arr2[i]); } printf("\n"); int sum = sum_of_digits(12345); printf("Sum of digits in 12345: %d\n", sum); return 0; } ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值