c语言实验
Posted 一只小阿大:)
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言实验相关的知识,希望对你有一定的参考价值。
目录
由于快离职了,不给我安排活了,然后上班没事干看了看C陷阱与缺陷,好玩的我就写上来了
运算符优先级
#include "stdio.h"
#include "stdlib.h"
int main()
int x = 3;
int y = 5;
printf("%d\\n",x---y);
return 0;
Operation results:
-2
#include "stdio.h"
#include "stdlib.h"
int main()
int x = 10;
int y = 20;
int *p = &x;
printf("%f\\n",y/ *p);
return 0;
Operation results:
0.000000
'/'和'*'挨着就是注释了,
打印变成%d结果就是2了,其实需要强转一下(float)(y/(*p))打印就是2.000000
0.1+0.2二十位显示
#include "stdio.h"
#include "stdlib.h"
int main()
printf("%.20f\\n",0.1+0.2);
return 0;
Operation results:
0.30000000000000004000
%-6f和%8f左右对齐
#include "stdio.h"
#include "stdlib.h"
int main()
printf("%-6f\\n",0.1+0.2);
printf("%8f\\n",0.1+0.2);
return 0;
Operation results:
0.300000
0.300000
整形常量020和20打印
如果一个整形常量的第一个字符是数字0,那么该常量将被视作八进制数。
#include "stdio.h"
#include "stdlib.h"
int main()
printf("%d\\n",20);
printf("%d\\n",020);
return 0;
Operation results:
20
16
字符与字符串
单引号引起的一个字符实际上代表一个整数
#include "stdio.h"
#include "stdlib.h"
int main()
//这三种方式其实是等效的
char hello[] = 'h','e','l','l','o',' ','w','o','r','l','d','\\n',0;
printf("hello world\\n");
printf(hello);
printf("%s",hello);
return 0;
Operation results:
hello world
hello world
hello world
switch
#include <stdio.h>
#include <string.h>
int main()
switch (3)
case 1:printf("one\\n");
case 2:printf("two\\n");
case 3:printf("three\\n");
case 4:printf("four\\n");
case 5:printf("five\\n");
return 0;
Operation results:
three
four
five
以上是关于c语言实验的主要内容,如果未能解决你的问题,请参考以下文章