欧几里德最大公约数,取模,地址字节,标准输入输出
2021/12/28 23:15:01
本文主要是介绍欧几里德最大公约数,取模,地址字节,标准输入输出,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
求最大公约数
int gcb(int a,int b) { if(b==0) return a; else return gcb(b,a%b); }
对于浮点数 float double ++,只会对整数的部分加1,不会对小数点后的值+
int main() { float x=12,25; x++; printf("%d",x);x=13.25 }
取模运算只能对整型进行取模(char, short, int ,long int, long long
)
地址字节的大小
int a; printf("%d",sizeof(&a)); x86 4个字节 32bit 64 8个字节 64bit
指针变量存放的是变量的首地址
指针访问结构体成员
(*sp).s_id;带括号是因为.的优先级高,*sp就是所指变量本身 sp->s_id
标准输入输出
显示器是标准输出文件stdout,向屏幕输出printf putchar
键盘为标准输入文件stdin 从键盘获取函数scanf getchar
下面这个代码,从键盘输入的数据先存在缓冲区中且代码停在第一个ch=getchar,当输入\n时,缓冲区才会将数据一个一个的给ch然后进入while循环,putchar也一样,先存入缓冲区,后读到屏幕
缓冲区在内存
int main() { int sun=0; char ch='\0'; ch=getchar(); while(ch!='\n') { sum+=1; ch=getchar(); } printf("sun: %d\n",sum); return 0; }
缓冲区造成的问题
当从键盘中输入数字后按下enter 键后,就会将\n给ch就直接退出了,有一个方法是加上一行ch=getchar()将\n给ch
int main() { int sum=0; int val=0; char ch='0'; do { printf("input a number:"); scanf("%d",&val); sum+=val; printf("是否继续(Y/N)\n"); // ch=getchar();加这一行可以解决但是按多次空格也不行 ch=getchar(); }while(ch=='y'||ch=='Y'); printf("sum : %d\n",sum); return 0; }
sizeof既不是宏也不是函数,只是是一个运算符
typedef
typedef int arry[10]; arry ar={1,2,3}; ar就是整型数组并且为10个空间
这篇关于欧几里德最大公约数,取模,地址字节,标准输入输出的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南