明明毕业没多久,C语言基础都忘光了,在这边梳理记录下忘掉的一些知识点。
1.常用scanf和printf的输入输出:
int | float | double | char | |
scanf | %d | %f | %lf | %c |
printf | %d | %f | %lf or%f | %c |
其中浮点数保留小数点后2位表示为 %.2f ,c语言中string输出为 %s ,但貌似无法直接定义string类型变量,一般使用char类型指针进行处理。
2.当无限循环时,个人习惯使用while(scanf("%d",&a)!=EOF) 这个语句实现,这样退出循环的条件即为 “Ctrl+Z”。
HDU 1.2.1 A+B的十六进制转十进制加减法,使用C语言写,需要使用字符串自行转换过于复杂,尤其还要考虑多位的转换,由此使用C++中hex和dec在输入输出时自动处理,此处有参考其他博客,只分析记录自己的错误之处。
C语言有个八进制、十六进制和十进制转换的便捷方法,就是也有类似库函数的操作,就是用printf格式化,见下。
#include<stdio.h>
#include<string.h>
int main()
{
int a;
scanf("%d",&a);//十进制数输入
printf("%o\n",a);//转换成八进制显示
printf("%x\n",a);//转换成十六进制显示
return 0;
}
3.math.h函数库中
x的y次方 使用函数pow,使用方法为 double pow(double x, double y);
x的平方根 使用函数sqrt,具体即为sqrt(x);