C语言初级程序

C语言初级程序,第1张

#include <stdio.h>

#include <math.h>

int number(int n,int k)

{

int i=1,sum=0

for(ii<=ki++)

{

sum+=(int)(pow(n%10,k))

n/=10

}

return sum

}

int main()

{

int i,n

scanf("%d",&n)

for (i=(int)(pow(10,n-1))i<(int)(pow(10,n))i++)

{

if (i==number(i,n))

printf("%d ",i)

}

return 0

}

主要利用二元一次方程的解答的数学方法求出方程解的表达式,然后用代码实现:

#include

"stdafx.h"

#include

"math.h"

void

main()

{

double

a,b,c

printf("请输入二元方程的二次项系数:")

scanf("%lf",

&a)

printf("请输入二元方程的一次项系数:")

scanf("%lf",

&b)

printf("请输入二元方程的常数项:")

scanf("%lf",

&c)

double

d

=

b*b

-

4*a*c

double

x1

=0,

x2

=

0

if

(d

>

0)

{

x1

=

(-b+sqrt(d))/(2*a)

x2

=

(b-sqrt(d))/(2*a)

printf("方程第一个解为:%lf\n",

x1)

printf("方程第二个解为:%lf\n",

x2)

}

else

{

printf("此方程无解")

}

}

错误的地方有三处:

1,用double声明的变量a,b,输入格式却是“f",应该用”lf"来输入;或者把double 变为:float。

2,if语句中t=0的意思是把0赋予t,这样if语句就恒为假了。应该为:if(t==0)

3,otherwise 表否则,C语言中是不存在的,应该为else。

所以,正确的代码应该为:

#include<stdio.h>

int main()

{

 float a,b

 int t,c1,c2

 scanf("%f",&a)

 b=a+0.5

 c1=(int)a

 c2=(int)b

 t=c1-c2

 if(t==0) printf("%d",c1)

 else     printf("%d",c2)

 return  0

 }


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8111384.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-13
下一篇 2023-04-13

发表评论

登录后才能评论

评论列表(0条)

保存