发布时间:2023-12-25 07:24来源:www.sf1369.com作者:宇宇
#include <stdio.h> //引入需要的函数
#include <math.h> // 引入所以的数学包
float x1,x2,disc,p,q; //定义五个单精度变量
void main() //主函数
{
float a,b,c; //定义三个变量
scanf(%f,%f,%f,&a,&b,&c); //输入三个值 并且存储在变量a,b,c的地址中
printf(%5.2f*x*x+%5.2f*x+%5.2f=0\n,a,b,c); //打印出a*x*x+b*x+c=0
disc=b*b-4*a*c; //计算b*b-4*a*c的值兵赋值给disc
printf(root:\n); //打印出root:并换行
//判断二次函数的根的个数
if(disc>0) //当disc大于0的时候 方程有两个不同的实根
{
x1=(-b+sqrt(disc)/(2*a);
x2=(-b-sqrt(disc)/(2*a);
printf(x1=%f\t\tx2=%f\n,x1,x2); //计算出两个实根 并输出
}
else if(disc==0) //当disc等于0的时候 方程有两个相同的实根
{
x1=x2=(-b)/(2*a);
printf(x1=%f\t\tx2=%f\n,x1,x2); //计算出根并且输出
}
else
{ //当disc小于0的时候 方程有两个不同的虚根
p=-b/(2*a);
q=sqrt(-disc)/(2*a);
printf(x1=%f+%f\t\tx2=%f-%f\n,p,q,p,q); //计算根的实部与虚部 并输出
}
}
用汇编语言或高级语言编写的程序,必须先送入计算机,经过转换成用机器语言表示的目标程序(这个过程即编译),才能由计算机执行。执行转换过程的程序叫编译程序。汇编程序是指没有编译过的汇编语言源文件。
编译程序转换过的叫目标程序,也就是机器语言。
编译程序的工作情况有三种:汇编型、解释型和编译型。汇编型编译程序用来将汇编语言编写的程序,按照一一对应的关系,转换成用机器语言表示的程序。解释型编译程序将高级语言程序的一个语句,先解释成为一组机器语言的指令,然后立即执行,执行完了,取下一组语句解释和执行,如此继续到完成一个程序为止。用解释型编译程序,执行速度很慢,但可以进行人和计算机的对话,随时可以修改高级语言的程序。BASIC语言就是解释型高级语言。编译型编译程序将高级语言编写的程序,一次就会部翻译成机器语言表示的程序,而且过程进行很快,在过程中,不能进行人机对话修改。FORTRAN语言就是编译型高级语言。
明显就是:汇编
。。无解
是不是汇编语言学多了楼主?
唉 为了70分 嘿嘿,全手写,弄了30分钟呀。。分拿出来吧~
有些语句第一个程序写了,其他程序就没写。。意思都一样的
#include stdio.h/*调用输入输出连接库*/
void main()/*定义主函数为空函数*/
{ int x,y;/*定义X,y为整形变量*/
float s;/*定义s为单精度变量*/
scanf(%d,&x);/*从键盘输入x,输入类型为有符号整形(%d)*/
scanf(%d,&y);/*从键盘输入y。输入类型同上*/
s=x*y/2.0;/*把(x*y)/2的值赋值给变量s(即变量s现在等于(x*y)/2的值)*/
printf(\\n s=%f,s);/*输出s=(变量s)*/
}
/*说明如a[1]是一个数组内的数,1为下标*/
2.#includestdio.h/*调用输入输出连接库*/
void main()
{
int i,s=0,x[20]={1,2,3,5,3,1,56,23,67,1,74,12,3,3,2,1,1,1,21,3};/*初始化数组x[0-19]的值依次为(大括号里的数)*/
for (i=0;i<20;i++)/*当i小于20时执行循环体语句,i初值为0.每次循环i的值+1,循环20次结束。*/
{/*循环体语句*/
if(x[i]<=90)/*当x[i](数组中的一个变量)的值小于等于90时执行下列语句*/
s=s+x{i};/*此句有语法错误,无法通过dev c++编译。正确应为s=s+x[i],意为把s+x[i]的值赋值给s*/
/*这里有语法错误,应该再空一行+一个分号。*/
}
printf(\\n不大于90所有数的和:%d,s);/*输出不大于90所有数的和为s.*/
}
3.#includestdio.h/*调用输入输出连接库*/
void main()/*定义主函数为空函数*/
{ int a,b,c;/*定义abc为整形变量*/
scanf(%d,&a);/*从键盘输入a*/
scanf(%d,&b);/*从键盘输入b*/
scanf(%d,&c);/*从键盘输入c*/
if((a+b>c)&&(a+c)>b)&&(b+c)>a)/*对于初学者不必理解,为判断三角形3条边能否构成三角形的语句*/
printf(这三边能构成三角形!);/*输出这三边能构成三角形!到屏幕*/
else
printf(这三边不能构成三角型!);/*输出这三边不能构成三角形!到屏幕*/
}
4.#includestdio.h/*调用输入输出连接库*/
void main()/*定义主函数为空函数*/
{ int i,x,min;/*定义i,x,min为整形变量*/
scanf(%d,&x);/*从键盘输入x*/
min=x;/*把x的值赋值给min*/
for(i=0;i<9;i++)/*循环运行9次,前面的程序已解释*/
{
scanf(%d,&x);/*从键盘输入x*/
if(min>x)/*如果min大于x执行下列语句*/
min=x;/*把x赋值给min*/
}
printf(这十整数中的最小值为:%d,min);/*输出“这十整数中的最小值为min”到屏幕*/
}
5.#includestdio.h/*调用输入输出连接库*/
void main()/*定义主函数为空函数*/
{ int i a[10],s=0;/*定义i,s为整形变量,把0赋值给s,定义数组a为整形变量,内有下标0-9的10个数*/
float aver=0.0;/*定义aver为单精度变量,把0赋值给aver*/
for (i=0;i<10;i++)/*循环运行10次,上面几个程序解释过了,这里不解释,每次执行下列语句*/
{
scanf(%d,&a[i]);/*输入a[i]的值(输入的数必须为整形)*/
s=s+i;/*把s+i的值赋值给s,功能是求输入的10个数的和*/
}
aver=s/10.0;/*求输入的10个数的平均数,也就是把s/10的值赋值给aver*/
printf(这十整数中的平均值为:%f,aver);/*输出“这十整数中的平均值为aver到屏幕*/
}
7.#includestdio.h/*调用输入输出连接库*/
void main()/*定义主函数为空函数*/
{ int i,s=0,x[20];/*定义i,s为整形变量,s=0,数组x为整形,内有20个数字*/
float aver=0.0;/*定义aver为单精度变量*/
for(i=0;i<20;i++)/*循环运行20次,具体参见上面程序的解释*/
{ scanf(%d,&x[i]);/*从键盘输入x[i]的值*/
s=s+x[i];/*把s+x[i]的值赋值给s*/
}
aver=s/20.0;/*把s/20 的值赋值给aver*/
printf(平均为:%f\\n,aver);/*输出“平均为aver”到屏幕*/
for(i=0;i<20:i++)/*循环运行20次,前面程序已经给出解释,不写了。*/
{ if(x[i]>aver)/*依次判断数组x内的每一个数,把大于平均值的输出到屏幕*/
printf(比平均大的数为:[5d]=%d\\n,i,x[i]);
}
}
8.#includestdio.h/*调用输入输出连接库*/
void main()/*定义主函数为空函数*/
{ int i,min,x[20],pos=0;/*定义i,min,pos为整形变量,把0赋值给pos,定义x为整形数组,内有20个数。*/
for (i=0;i<20;i++)/*循环运行20次,执行下列语句,前面几个程序给解释过了*/
scanf(%d,&x[i]);/*依次输入数组x的值(输入数x[i]的值 输入20次)*/
min=x[0];/*把下标为0的x赋值给min*/
pos=0;/*把0赋值给pos*/
for(i=1;i<20;i++)/*循环运行20次,执行下列语句,前面几个程序给解释过了*/
if(x[i]>min)/*如果x[i]小于min(依次判断x[i]的值,如果有小于min的)执行下列语句*/
{
min=x[i];/*把x[i](就是小于min的那个数)赋值给min*/
pos=i;/*把i赋值给pos*/
}
printf(最小值为:%d,最小值位置为:%d\\n,min,pos);/*输出最小值为min,最小值位置为pos到屏幕,输出完成后换行*/
}