❶ 用c语言求解一元二次方程的解怎么写
您好!很高兴为您解答。
原代码中的scanf和printf中的%要放在d和lf的前面才对,改正后运算无误~
#include <stdio.h>
#include <math.h>
void main ()
{
double x1;//x1,x2分别为方程的2个解
double x2;
double melt;
int a;
int b;//初始化ABC的三个变量
int c;
printf("请输入a b c三个数的值:");
scanf("%d %d %d",&a, &b ,&c);//输入ABC的时候需要空格
melt = b*b - 4*a*c;//初始化melt的值
if (melt>0)
{ x1=(-b + sqrt(melt))/(2*a);
x2=(-b - sqrt(melt))/(2*a);
printf ("2个解,x1 = %lf,x2 = %lf\n",x1,x2);
}
else if (melt==0)
{
x1 = (-b )/(2*a);
x2 = x1;
printf("1个解,x1 = %lf,x2 = lf%\n",x1,x2);
}
else
{
printf("无解\n");
}
}
望采纳~如您还有不解,欢迎追问~
❷ c语言写二元一次方程
if(b*b-4*a*c>=0) x1=x1; x2=x2;else x1=0;x2=0;
是不是你这儿没有用大括号的原因?
❸ C语言编写一个求一元二次方程的实根的程序,该怎么写
步骤:
打开visual C++ 6.0-文件-新建-文件-C++ Source File
2.
定义变量:
#include <stdio.h>
#include <math.h>
void main()
{
double a,b,c; /*定义系数变量*/
double x1,x2,p; /*定义根变量和表达式的变量值*/
❹ 用c语言怎么遍写 一个任意函数在(x1,x2)区间内被等分成s,球 x1+s,x1+2s,.....到X2的函数值,急用谢了
2006年春浙江省高等学校
计算机等级考试试卷(二级C)
说明:⑴ 考生应将所有试题的答案填写在答卷上。其中试题1~试题6,请在答卷上各小题正确选项的对应位置处填“√”;
⑵ 请将你的准考证号的后五位填写在答卷右下角的指定位置内;
⑶ 考试时间为90分钟;
试题1(每小题3分,共12分)
阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
求 1 + 2/3 + 3/5 + 4/7 + 5/9 + … 的前20项之和。
运行示例:
sum = 11.239837
#include <stdio.h>
void main( )
{
int i, b = 1;
double s;
(1) ;
for(i = 1; i <= 20; i++){
s = s + (2) ;
(3)
}
printf( (4) , s);
}
(1) A、s = 0 B、s = 1
C、s = -1 D、s = 2
(2) A、i/b B、double(i)/double(b)
C、i/2*i-1 D、(double)i/(double)b
(3) A、; B、b = 2 * i – 1;
C、b = 1.0 * b; D、b = b + 2;
(4) A、"sum = %d\n" B、"s = %c\n"
C、"sum = %f\n" D、"s = %s\n"
试题2(每小题3分,共12分)
阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
输入10个整数,将它们从大到小排序后输出。
运行示例:
Enter 10 integers: 1 4 -9 99 100 87 0 6 5 34
After sorted: 100 99 87 34 6 5 4 1 0 -9
#include <stdio.h>
void main( )
{ int i, j, t, a[10];
printf("Enter 10 integers: ");
for(i = 0; i < 10; i++)
scanf( (5) );
for(i = 1; i < 10; i++)
for( (6) ; (7) ; j++)
if( (8) ){
t = a[j];
a[j] = a[j+1];
a[j+1] = t;
}
printf("After sorted: ");
for(i = 0; i < 10; i++)
printf("%d ", a[i]);
printf("\n");
}
(5) A、"%f", a[i] B、"%lf", &a[i]
C、"%s", a D、"%d", &a[i]
(6) A、j = 0 B、j = 1
C、j = i D、j = i - 1
(7) A、j > i B、j < 9 - i
C、j < 10 - i D、j > i - 1
(8) A、a[i-1] < a[i] B、a[j+1] < a[j+2]
C、a[j] < a[j+1] D、a[i] < a[j]
试题3(每小题3分,共12分)
阅读下列程序说明和程序,在每小题提供的若干可选答案中,挑选一个正确答案。
输入一个字符串和一个正整数m,将该字符串中的前m个字符复制到另一个字符串中,再输出后一个字符串。
运行示例1:
Enter a string: 103+895=?
Enter an integer: 6
The new string is 103+89
运行示例2:
Enter a string: 103+895=?
Enter an integer: 60
The new string is 103+895=?
运行示例3:
Enter a string: 103+895=?
Enter an integer: 0
The new string is
#include <stdio.h>
#include < (9) >
void main( )
{ char s[80], t[80], i, m;
printf("Enter a string:");
gets(s);
printf("Enter an integer:");
scanf("%d", &m);
for(i = 0; (10) ; i++)
(11) ;
(12)
printf("The new string is ");
puts(t);
}
(9) A、ctype.h B、math.h
C、stdio.h D、string.h
(10) A、i < m B、s[i]!= '\0'
C、s[i]!= '\0' && i < m D、s[i]!= '\0' || i < m
(11) A、*s++ = *t++ B、t[i] = s[i]
C、*t++ = *s++ D、s[i] = t[i]
(12) A、t[i] = '\0'; B、;
C、*++s = '\0'; D、*++t = '\0';
试题4(每小题3分,共12分)
阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。
#include <stdio.h>
void main( )
{ int s, x1, y1, z1, x2, y2, z2;
printf("Enter 6 integers:");
scanf("%d%d%d%d%d%d", &x1, &y1, &z1, &x2, &y2, &z2);
s = f(x2, y2, z2) - f(x1, y1, z1);
printf("%d\n", s);
}
f(int x, int y, int z)
{ int k, n;
int tab[2][13] = {
,
};
n = (x % 4 == 0 && x % 100 != 0 || x % 400 == 0);
for(k = 1; k < y; k++)
z = z + tab[n][k];
return z;
}
(13) 程序运行时,输入1 0 0 0 0 0,输出 (13) 。
A、29 B、28 C、0 D、-1
(14) 程序运行时,输入0 0 1 0 0 0,输出 (14) 。
A、29 B、28 C、0 D、-1
(15) 程序运行时,输入2000 2 1 2000 3 1,输出 (15) 。
A、29 B、28 C、0 D、-1
(16) 程序运行时,输入1981 2 1 1981 3 1,输出 (16) 。
A、29 B、28 C、0 D、-1
试题5(每小题3分,共12分)
阅读下列程序并回答问题,在每小题提供的若干可选答案中,挑选一个正确答案。
# include <stdio.h>
void main ( )
{ int a = -1, b = 1;
void f1(int x, int y), f2(int *x, int *y);
void f3(int *x, int *y), f4(int x, int y);
f1(a, b);
printf("(%d,%d)\n", a, b);
a = -1, b = 1;
f2(&a, &b);
printf("(%d,%d)\n", a, b);
a = -1, b = 1;
f3(&a, &b);
printf("(%d,%d)\n", a, b);
a = -1, b = 1;
f4(a, b);
printf("(%d,%d)\n", a, b);
}
void f1(int x, int y)
{ int t;
t = x; x = y; y = t;
}
void f2(int *x, int *y)
{ int t;
t = *x; *x = *y; *y = t;
}
void f3(int *x, int *y)
{ int *t;
t = x; x = y; y = t;
}
void f4(int x, int y)
{ int *t = malloc(sizeof(t));
*t = x; x = y; y = *t;
}
(17) 程序运行时,第1行输出 (17) 。
A、(1, -1) B、(-1, 1) C、(-1, -1) D、(1,1)
(18) 程序运行时,第2行输出 (18) 。
A、(1, -1) B、(-1, 1) C、(-1, -1) D、(1,1)
(19) 程序运行时,第3行输出 (19) 。
A、(1, -1) B、(-1, 1) C、(-1, -1) D、(1,1)
(20) 程序运行时,第4行输出 (20) 。
A、(1, -1) B、(-1, 1) C、(-1, -1) D、(1,1)
试题6(每小题3分,共12分)
#include <stdio.h>
struct card{
char *face;
char *suit;
};
void filldeck(struct card *wdeck, char *wface[],char *wsuit[])
{ int i;
for (i = 0; i < 4; i++){
wdeck[i].face = wface[i%2];
wdeck[i].suit = wsuit[i/2];
}
}
void deal(struct card *wdeck)
{ int i;
for (i = 0; i < 4; i++)
printf("(%2s of %-6s)\n", wdeck[i].face, wdeck[i].suit);
}
void main()
{ struct card deck[4];
char *face[]=;
char *suit[]=;
filldeck(deck,face,suit);
deal(deck);
}
(21) 程序运行时,第1行输出 (21) 。
A、(K of Heart) B、(Q of Heart)
C、(K of Club) D、(Q of Club)
(22) 程序运行时,第2行输出 (22) 。
A、(K of Heart) B、(Q of Heart)
C、(K of Club) D、(Q of Club)
(23) 程序运行时,第3行输出 (23) 。
A、(K of Heart) B、(Q of Heart)
C、(K of Club) D、(Q of Club)
(24) 程序运行时,第3行输出 (24) 。
A、(K of Heart) B、(Q of Heart)
C、(K of Club) D、(Q of Club)
试题7 (14分)
编写程序,输入一批学生的成绩,遇0或负数则输入结束,要求统计并输出优秀(大于85)、通过(60~84)和不及格(小于60)的学生人数。
运行示例:
Enter scores: 88 71 68 70 59 81 91 42 66 77 83 0
>=85:2
60-84:7
<60 2
试题8 (14分)
编写程序,输入一个正整数n,求下列算式的值。要求定义和调用函数fact(k)计算k的阶乘,函数返回值的类型是double。
运行示例:
Enter n: 5
sum = 1.71667
2006年春浙江省高等学校
计算机等级考试答案(二级C)
试题1~6 试题7 试题8 合计
试题1~6
A B C D A B C D
(1) √ (13) √
(2) √ (14) √
(3) √ (15) √
(4) √ (16) √
(5) √ (17) √
(6) √ (18) √
(7) √ (19) √
(8) √ (20) √
(9) √ (21) √
(10) √ (22) √
(11) √ (23) √
(12) √ (24) √
试题7
#include <stdio.h>
void main( )
{
int mark, a, p, f;
c = p = f = 0;
printf("Enter scores:");
scanf ("%d", &mark);
while (mark >= 0){
if(mark >= 85) a++;
else if (mark >= 60) p++;
else f++;
scanf ("%d", &mark);
}
printf(">=85:%d\n", a);
printf("60-84:%d\n", p);
printf("<60:%d\n", a);
}
试题8
#include <stdio.h>
void main( )
{ int i, n;
double x, sum;
double fact(int n);
scanf("%d", &n);
sum = 0;
for(i=1; i<=n; i++)
sum = sum + 1/fact(i);
printf("sum=%f\n", sum);
}
double fact(int n)
{ int i;
double res = 1;
for(i=1; i<=n; i++)
res = res*i;
return res;
}
如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!
❺ c语言怎么编写x1,x2
请问你所述的x1,x2指的是什么?
补充: c语言的乘号是 *
❻ c语言怎样输出x1=x2=数字
使用printf()函数
如:
int n = 10;
printf("x1 = x2 = %d", n);
输出结果:x1 = x2 = 10
格式转换符根据实际的输出变量类型修改。
❼ C语言关系运算符的使用和理解,麻烦哪位大佬解答下下述源代码中x1,x2,x3分别是怎么得来的
你前面int就已经定义了x1,x2,x3为整型变量啦,但是没有赋初值而已
而你后面x1=a>b>d;就是判断a是否大于b是否大于d,是的话x1=1,否则x1=0;下面的语句也是如此
❽ c语言里 一元二次方程求根公式怎么写
#include<stdio.h>
#include<math.h>
intmain()
{
floata,b,c,d,x1,x2;
scanf("%f%f%f",&a,&b,&c);//输入三个系数
d=b*b-4*a*c; //计算判别式
if(d<0)printf("无实数根! ");
elseif(d==0)printf("有两个相等的实数根,x1=x2=%g ",-b/(2*a));
else
{
x1=(-b+sqrt(d))/(2*a);
x2=(-b-sqrt(d))/(2*a);
printf("x1=%g x2=%g ",x1,x2);
}
}
❾ 用c语言写二元一次方程
printf("该一元二次方程有两个解,x1=%f,x2=%f ",x1,x2);//你引号打错了啊。。。
❿ c语言中这样写是对的吗
是一一对应的,
第一个%f对应第一个参数,
这个写法是不推荐的,因为这里想要表达的是当x1=x2的时候 随便输出x1,x2都是一样的结果
所以只需要写x1或者x2就行了