效果展示:
4.4写了cmp为降序
代码展示
#include <iostream> #include <algorithm> using namespace std; bool cmp(int a,int b) { return a>b; //注意这里是a>b是指降序 } int main() { int a[]={6,5,8,4,3,2},i; sort(a,a+6,cmp); for(i=0;i<5;i++) { cout<<a[i]<<" "; } return 0; }
效果展示:
5.求最大公因数(gcd)
1.头文件 #include
2.原型gcd(非float,非float);
3.基本思路和方法
while()循环方法
int gcd(int a,int b) {
int r;
while (a%b!=0)
{
r=a%b;
a=b;
b=r;
}
return b; }
2.递归+三元运算符
int gcd(int a, int b) { return b > 0 ? gcd(b, a % b) : a; }
3.递归+ if 语句
求x 和 y 的最大公约数,就是求 y 和 x % y 的最大公约数
int gcd(int a,int b) {
if(a%b==0)
return b;
else
return (gcd(b,a%b)); }
3.代码展示:
#include <iostream> #include <algorithm> using namespace std; int gcd(int a, int b) { return b > 0 ? gcd(b, a % b) : a; } int main() { int a, b; cin >> a >> b; cout << gcd(a, b) << endl; }
4.效果展示:
(六)、put级联
1.定义
级联(cascade)在计算机科学里指多个对象之间的映射关系,建立数据之间的级联关系提高管理效率
代码展示:
#include <iostream> #include <algorithm> using namespace std; int main() { cout.put('C').put('+').put('+').put('\n'); return 0; }
效果展示:
(七)、pow(int a,int b)函数用来实现a的b次方
代码展示:
#include <iostream> #include <conio.h> #include <string.h> using namespace std; int main() { int a = 3, b = 0; int c=pow(a, 1); cout << c << endl; }
效果展示:
(八)、延时操作 (Sleep)
#include <windows.h>
Sleep(1000); //以毫秒为单位
代码展示
#include <iostream> #include <windows.h> using namespace std; int main() { int a; Sleep(1000); cin >> a; cout << a << endl; }
效果展示:
(九)、qsort()函数---------c语言没有sort 但是又qsort()
1.格式:
int compar(void const* p1, void const* p2) { return (*(int*)p1 - *(int*)p2) * (-1); //前两个实际是整形向加减 *(-1) 降序 *(1)升序 } int main() { qsort(数组名,数组长度,某个数的字节数,int(compar(const void*,const void*)); }
2.包含的库文件
#incldue <stdlib.h>
代码展示:
#include <stdio.h> #include <stdlib.h> int compar(void const* p1, void const* p2) { return (*(int*)p1 - *(int*)p2) * (-1); //前两个实际是整形向加减 } void show(int a[],int n) { for (int i = 0; i < n; i++) { printf("%d ", a[i]); } } int main() { int a[] = { 24,58,62,38,2,74,89 }; int length = sizeof(a) / sizeof(int); qsort(a, length, sizeof(a[0]), compar); show(a, length); }
效果展示: