c语言练习 插入排序 gcd求解
来源:互联网 发布:多功能双肩背包 知乎 编辑:程序博客网 时间:2024/06/07 22:02
12月7随笔
else if 语句使用时注意在判断中只进入一次。
if(year % 4 ==0){ if(year % 100!= 0)} else if(year % 400 ==0) //不会进到这一句的
vc 编译器 F10 调试 F11进函数 可以通过宏定义可以消除warning 。
32位 指针是4字节
volatile 保证内存可见性。每次取变量从内存中取 .在c编译环境,const 从语法层面限制了 变量不可定义,从而可以通过指针修改内存中变量的值。在cpp编译环境,const 会被优化,其值被送往寄存器,从而不可改变。linux环境下可以加 -o2 使gcc编译环境同样优化const。
volatile const int num = 10;
static 修饰局部变量延长了生命周期,没有改变作用域。
初始化不是随机值,而是0。
extern 还需要研究和 static 修饰全局变量 还不太懂,待研究 static int num =0 // 只会静态初始化一次
内存的分配:
栈 局部变量
堆区 动态内存申请
静态区 静态变量,全局变量。
练习1. 给定两个整形变量的值,将两个值的内容进行交换
int main(){ int a = 10,b = 20; int tmp = 0; tmp = a; a = b; b = tmp; printf("%d %d",a,b);}
练习2.不允许创建临时变量,交换两个数的内容
int main(){ int a=10,b=20; b = a +b; a = b -a; //a =30 - 10 b = b -a; //b = 30 -20 printf("%d %d",a,b);}
练习3. 求10 个整数中最大值
int main(){ int i = 0; int a[10]={0}; for (i=0;i<10;i++){ a[i]= 10*i; } int max = a[0]; for (i=0 ; i<10 ;i++){ if(a[i]>max){ max = a[i]; } } printf("%d",max);}
练习4. 将几个数按从大到小输出
//插排#include <stdio.h>int main(){ int j =0; int i = 0,tmp = 0; int a[5] = {1,5,7,2,9}; for(i = 1 ;i < 5 ;i++){ //假设第一个位置排好了 tmp = a[i]; for( j = i-1;j>=0&&tmp > a[j];j--){ //一直找,直到j位置>=tmp a[j+1] = a[j]; } a[j+1] = tmp; //j位置腾出来,j--后 用j +1 抵消,把tmp放进去 } for(i =0 ;i< 5;i++){ printf("%d ",a[i]); }}
练习5.求两数最大公约数
#include <stdio.h>int main(){ int a =75,b = 25; int c = 0; while(b !=0){ //辗转相除 c = a%b; a = b; //把ab较小的数给a b = c; //把余数给b } printf("最大公约数是%d",a);}
阅读全文
0 0
- c语言练习 插入排序 gcd求解
- [算法练习]插入排序的C语言实现
- 插入排序C语言
- c语言插入排序
- C语言 --- 插入排序
- C语言插入排序
- C语言插入排序
- C语言插入排序
- C语言插入排序
- C语言 插入排序
- 插入排序-C语言
- C语言插入排序
- C语言:冒泡排序练习
- C语言排序小练习
- 插入排序法(C语言)
- 插入排序C语言实现
- 数据结构--插入排序(C语言)
- C语言算法--插入排序
- futrue模式
- 网站安装ssl证书(http转https)
- 树的直径、树的重心与树的点分治学习笔记
- javascript中如何获得div中所有span对象
- 171208之Oracle总结
- c语言练习 插入排序 gcd求解
- 重写easyUI日期控件,只限制年月
- 面向对象程序设计上机练习七(类和对象)
- UITextView去掉单行的边距以及各种坑
- mac 回车键、空格键失灵(非物理原因)解决方法
- 百度地图API中使用ajax实现点击地图生成标注并保存到数据库
- ubuntu16.04.3环境下搭建open face
- CentOS上安装Oracle XE指南
- QT控件大全 十五 QPot