代码改变世界

实验一

2019-04-11 15:43  Bis.Marck  阅读(323)  评论(0编辑  收藏  举报

实验一

*********一、运行程序

 

#include<stdio.h>
int main()
{
 int a,b,sum;
 a=123;
 b=456;
 sum=a+b;
 printf("sum is %d\n",sum);
 return 0;

}

*****************二、运行程序:

#include<stdio.h>
int main()
{
 char c1,c2;
 c1=97;
 c2=98;
 printf("c1=%c,c=2%c\n",c1,c2);
 printf("c1=%d,c=2%d\n",c1,c2);
 return 0;
}

#include<stdio.h>
int main()
{
 char c1,c2;
 c1=197;
 c2=198;
 printf("c1=%c,c2=%c\n",c1,c2);
 printf("c1=%d,c2=%d\n",c1,c2);
 return 0;
}

 

原因:由于char变量的范围是0-127,如果输入大于127的数字的话会导致数据溢出,具体原因是因为197的补码为00000000 11000101,而char只记录后一个字节,也就是11000101,根据负数补码原理11000101对应的是-59,后面的才=-58同理。

 

*****************三、输入x,y编写程序求z=x+1/|y|的值

注:需要引入<math.h>

#include<stdio.h>
#include<math.h>
int main()
{
 float x,y;
 double z;
 printf("please input two numbers.\n");
 scanf("%f%f",&x,&y);
 y=fabs(y);
 z=x+1/y;
 printf("%d,%15.6lf,%e",(int)z,z,z);
 return 0;
}