是你写错了:
mian()
{ long a,b;
b=32767;
a=b+1;
printf("%ld,%ld",b,a);
}你说运行结果和书上不一样,那结果一定是:32767,32768.因为你定义a,b都是long相应的也要对应%ld
我的也一样,我也正在处理这个问题!
/* 版本:1.0
作者:韩耿
完成日期:2007.9.9
程序描述:求直线的方程
编译器版本:Dev-C++4.9.9.2
*/
#include <stdio.h>
#include <conio.h>
int main(void)
{
/*定义常量*/
int kind;
float k;
float dx_x;
float dx_y;
float dx_a;
float ld_fr_x;
float ld_fr_y;
float ld_se_x;
float ld_se_y;
/*确定分支*/
printf("请问您想做什么?\n");
printf("1 运用点斜式计算直线的方程。\n");
printf("2 运用两点式计算直线的方程。\n");
printf("3 求助\n");
printf("4 版权\n");
printf("5 退出\n");
printf("请输入数字!\n");
scanf("%d",&kind);
if (kind==1)
{
/*点斜式*/
printf("请输入斜率!\n k=");
scanf("%f",&k);
printf("请输入已知点的横坐标!\n x=");
scanf("%f",&dx_x);
printf("\n请输入已知点的纵坐标!\n y=");
scanf("%f",&dx_y);
dx_a=dx_y-k*dx_x;
printf("%f",dx_a);//此句为方便程序调试
printf("y=%fx+%f",k,dx_a);//此处的结果表达有问题
}
if (kind)
{ /*两点式*/
printf("请输入第一个坐标点的横坐标!");
scanf("%f",&ld_fr_x);
printf("请输入第一个坐标点的纵坐标!");
scanf("%f",&ld_fr_y);
printf("请输入第二个坐标点的横坐标!");
scanf("%f",&ld_se_x);
printf("请输入第二个坐标点的纵坐标!");
scanf("%f",&ld_se_x);
/*进行计算*/
}
/*打印结果*/
/*版权及作者*/
/*帮助*/
getch();
}