请给出答案,重分感谢

htp_htp 2006-10-21 05:03:02
1。以下程序的功能是:计算n的n-1阶乘 ,n由键盘输入。请录入该程序,并在指定空白位置补全所需内容。(要求:不得增行或删行,也不得更改程序的结构;源程序名为prog2.c。)
#include <stdio.h>
main( )
{
int n;
printf("Input data:\n");
scanf("%d",&n);
(1) ;
printf("result:%d\n",n);
}
power(x,y)
int x,y;
{
int p=1;
for(;y>0;--y)
(2) ;
return p;
}

2。以下程序的功能是:求 ax2+bx +c =0 方程的实根。 程序中有1~2处语法错误,请调试运行该程序,并分别输入:①1,2,1②2,6,1等数据验证程序的正确性。要求:不能改动程序。(要求:不得增行或删行,也不得更改程序的结构;源程序名为prog1.c。)
#include <math.h>
main( )
{
float a,b,c,disc,x1,x2,realp,imagp;
printf("Enter three floats:\n");
scanf("%f,%f,%f"&a&b&c);
printf("The equation");
if(fabs(a)<=1e-6)
printf(" is not a quadratic");
else
{
disc=b*b-4*a*c;
if(fabs(disc)<=1e-6)
printf("has two equal roots:%8.4f \n",-b/(2*a));
else if(disc>1e-6)
{
x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
printf("has distinct real roots:%8.4f and %8.4f\n",x1,x2);
}
}
}

3。以下程序的功能是:实现两个字符串的连接(不使用库函数strcat),即把p2所指的字符串连接到p1所指的字符串后。请在指定空白位置补全所需内容。(要求:不得增行或删行,也不得更改程序的结构;源程序名为prog2.c。)
void fun(char p1[],char p2[])
{
int i=0,n=0;
char *p=p1,*q=p2;
while(*p)
{ p++; n++; }
i=n;
while(*q)
{ p1[i]=*q; q++; i++;}
p1[i]='\0';
}
main( )
{ char s1[80],s2[40];
printf("Enter s1 and s2:\n");
scanf("%s%s",s1,s2);
printf("s1=%s\ns2=%s\n",(1));
printf("Invoke fun(s1,s2):\n");
(2) ;
printf("After invoking:\n");
printf("%s\n",s1);
}

4。编程对n*n 矩阵右上半三角形中的元素乘以 ,按格式输出该矩阵及变换后的矩阵。(源程序名为prog3.c。)
例如:若 的值为3,原矩阵为:
1 2 3
4 5 6
7 8 9
则程序的输出结果为:
The original array is :
1 2 3
4 5 6
7 8 9
The new array is:
3 6 9
4 15 18
7 8 27

5.以下程序的功能是:对由键盘输入的两个数按由大到小排序。请在指定空白位置补全所需内容。(要求:不得增行或删行,也不得更改程序的结构;源程序名为prog2.c。)
main( )
{
int a,b;
int *point1,*point2;
void sort( );
scanf("%d,%d",&a,&b);
point1=&a;
point2=&b;
if(a<b)sort( _________);
printf("\n%d,%d\n",a,b);
}
void sort(p1,p2)
int *p1,*p2;
{
int p;
p=*p1;
( ________) ;
*p2=p;
}

6.编程找出一个n*n 矩阵中的最大值元素及最小值元素,输出它们及其所在位置,并按矩阵格式输出该矩阵。(源程序名为prog3.c。)
例如:若 的值为4,原矩阵为:
2 -9 2 0
4 4 7 1
3 5 8 4
7 3 6 7

则程序的运行结果为:
The original array is :
2 -9 2 0
4 4 7 1
3 5 8 4
7 3 6 7
max:8,line:3,col:3
min:-9,line:1,col:2



问题解决马上给分。
...全文
288 点赞 收藏 20
写回复
20 条回复
htp_htp 2006年10月24日
由于有点忙

所以结帖时间晚了点.....
回复 点赞
飞哥 2006年10月23日
帮定给分不?

---------
回复 点赞
ckt 2006年10月23日
做完了不给分...
回复 点赞
ckt 2006年10月22日

第一题:(1)n=power(n,n-1) (2)p*=x
第二题:scanf("%f,%f,%f"&a&b&c);改成scanf("%f,%f,%f",&a,&b,&c);
第3题:(1)s1,s2 (2)fun(s1,s2)
第4题:头文件自己加
#define N 3
void main( )
{
int n=0;
int i,
j,
arr[3][3];
printf("请输入n的大小:");
scanf("%d",&n);
printf("请输入矩阵元素\n");
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
scanf("%d",&arr[i][j]);
}
printf("The original array is :\n");
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
printf("%d ",arr[i][j]);
printf("\n");
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
if(j>=i)
arr[i][j]*=N;
}
printf("The new array is :\n");
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
printf("%d ",arr[i][j]);
printf("\n");
}
}
第5题:(1)point1,point2 (2)*p1=*p2
第6题:

void sort(int a[4][4])
{
int i,
j;
int max=a[0][0],
min=a[0][0];
int h1=0,
v1=0,
h2=0,
v2=0;
printf("The original array is :\n");
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
printf("%d ",a[i][j]);
if(max<a[i][j])
{
h1=i;
v1=j;
}
else if(min>a[i][j])
{
h2=i;
v2=j;
}
}
printf("\n");
}
max=a[h1-1][v1-1];
min=a[h2-1][v2-1];
printf("max:%d,line:%d,col:%d\n",max,h1,v1);
printf("min:%d,line:%d,col:%d\n",min,h2,v2);
}

void main( )
{
int arr[4][4]={
2,-9,2,0,
4,4,7,1,
3,5,8,4,
7,3,6,7,
};
sort(arr);
}
回复 点赞
htp_htp 2006年10月22日
兄弟们

再接再励,辛苦了..
回复 点赞
ckt 2006年10月21日
第4题,头文件自己加
#define N 3
void main( )
{
int n=0;
int i,
j,
arr[3][3];
printf("请输入n的大小:");
scanf("%d",&n);
printf("请输入矩阵元素\n");
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
scanf("%d",&arr[i][j]);
}
printf("The original array is :\n");
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
printf("%d ",arr[i][j]);
printf("\n");
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
if(j>=i)
arr[i][j]*=N;
}
printf("The new array is :\n");
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
printf("%d ",arr[i][j]);
printf("\n");
}
}
回复 点赞
ckt 2006年10月21日
第6题:

void sort(int a[4][4])
{
int i,
j;
int max=a[0][0],
min=a[0][0];
int h1=0,
v1=0,
h2=0,
v2=0;
printf("The original array is :\n");
for(i=0;i<4;i++)
{
for(j=0;j<4;j++)
{
printf("%d ",a[i][j]);
if(max<a[i][j])
{
h1=i;
v1=j;
}
else if(min>a[i][j])
{
h2=i;
v2=j;
}
}
printf("\n");
}
max=a[h1-1][v1-1];
min=a[h2-1][v2-1];
printf("max:%d,line:%d,col:%d\n",max,h1,v1);
printf("min:%d,line:%d,col:%d\n",min,h2,v2);
}

void main( )
{
int arr[4][4]={
2,-9,2,0,
4,4,7,1,
3,5,8,4,
7,3,6,7,
};
sort(arr);
}
回复 点赞
jixingzhong 2006年10月21日
2 解2次方程:

#include <stdio.h>
#include <math.h>

double x1,x2,disc,p,q;

greater_than_zero(float a,float b)
{x1=(-b+sqrt(disc))/(2*a);
x2=(-b-sqrt(disc))/(2*a);
}

equal_to_zero(float a,float b)
{
x1=x2=(-b)/(2*a);
}

smaller_than_zero(float a,float b)
{
p=-b/(2*a);
q=sqrt(-disc)/(2*a);
//printf("%f\n",q);
}

int main()
{
float a,b,c;
printf("\nInput a,b,c:");
scanf("%f,%f,%f",&a,&b,&c);
printf("\nequation:%5.2f*x*x+%5.2f*x+%5.2f=0\n",a,b,c);
disc=b*b-4*a*c;
printf("root:\n");
if(disc>0)
{
greater_than_zero(a,b);
printf("x1=%5.2f\nx2=%5.2f\n\n",x1,x2);
}
else if(disc==0)
{equal_to_zero(a,b);
printf("x1=%5.2f\nx2=%5.2f\n\n",x1,x2);
}
else
{smaller_than_zero(a,b);
printf("x1=%5.2f+%5.2fi\nx2=%5.2f-%5.2fi\n",p,q,p,q);
}
}
回复 点赞
htp_htp 2006年10月21日
不是作业

一个朋友问偶的

偶的c语言都交给老师了 :(
回复 点赞
dead_of_winter 2006年10月21日
如果是作业 最好自己做 呵呵
回复 点赞
htp_htp 2006年10月21日
谢谢

今天解决完,就送分哦!!
回复 点赞
lj860603 2006年10月21日
哎,现在不抢分了,UP吧``
回复 点赞
ckt 2006年10月21日
第二题:scanf("%f,%f,%f"&a&b&c);改成scanf("%f,%f,%f",&a,&b,&c);
回复 点赞
ckt 2006年10月21日
那么第一题:(1)n=power(n,n-1) (2)p*=x
回复 点赞
ckt 2006年10月21日
第5题:(1)point1,point2 (2)*p1=*p2
回复 点赞
htp_htp 2006年10月21日
第一题修改一下
1。以下程序的功能是:计算n的n-1次方 ,n由键盘输入。请录入该程序,并在指定空白位置补全所需内容。(要求:不得增行或删行,也不得更改程序的结构;源程序名为prog2.c。)
#include <stdio.h>
main( )
{
int n;
printf("Input data:\n");
scanf("%d",&n);
(1) ;
printf("result:%d\n",n);
}
power(x,y)
int x,y;
{
int p=1;
for(;y>0;--y)
(2) ;
return p;
}
回复 点赞
htp_htp 2006年10月21日
谢谢大家!

继续。。。。。
回复 点赞
ckt 2006年10月21日
第3题:(1)s1,s2 (2)fun(s1,s2)
回复 点赞
飞哥 2006年10月21日
都是基础题~
回复 点赞
htp_htp 2006年10月21日
请大家用c 语言解决谢谢!!!
回复 点赞
发动态
发帖子
C语言
创建于2007-09-28

3.2w+

社区成员

24.0w+

社区内容

C语言相关问题讨论
社区公告
暂无公告