C语言的一道题
解决时间 2021-01-30 19:05
- 提问者网友:wodetian
- 2021-01-29 18:15
#include "stdio.h"
void f(int[],int n,int flag)
{ int i,j,t;
for(i=0;i for(j=i;j if(flag?b[i]>b[j]:b[i]{ t=b[i];b[i]=b[j];b[j]=t;)}
}
main()
{ int a[10]={5,4,3,2,1,6,7,8,9,10},i;
f(&a[2],5,0); f(a,5,1);
for(i=0;i<10;i++)
printf("%d,",a[i]);
}
请给出答案并详细解答,谢谢!
我没打错,题目就是这个,一楼的可以详细解释一下吗
最佳答案
- 五星知识达人网友:神的生死簿
- 2021-01-29 18:24
for(i=0;i
for(j=i;j
if(flag?b[i]>b[j]:b[i]
{ t=b[i];b[i]=b[j];b[j]=t;)}
循环都错啦·· 都不打大括号的 b[i] 没有定义吧· 、
我改了一下 ,呵呵
#include "stdio.h"
#include
void f(int b[],int n,int flag)
{ int i,j,t;
for(i=0;i
{
for(j=i;j
{
if(flag?b[i]>b[j]:b[i]
{
t=b[i];b[i]=b[j];b[j]=t;
}
}
}
}
int main()
{ int a[10]={5,4,3,2,1,6,7,8,9,10},i;
f(&a[2],5,0); f(a,5,1);
for(i=0;i<10;i++)
printf("%d,",a[i]);
system("pause");
}
输出的结果是 3,4,5,6,7,2,1,8,9,10,
全部回答
- 1楼网友:底特律间谍
- 2021-01-29 20:07
首先指出程序的两处错误:
#include "stdio.h"
void f(int b[],int n,int flag) //函数形参变量名称未写出
{ int i,j,t;
for(i=0;i
b[j]:b[i]
- 2楼网友:酒安江南
- 2021-01-29 19:56
前面几个都不按题目要求来编程,题目说要用两个子函数实现,所以应该是这样.
#include "stdio.h"
int a(int n)
{
int i,sum=0;
for(i=1;i<=n;i++)
{
sum=sum+i;
}
return sum;
}
double b(int n)
{
int i;
double nn=1;
for(i=1;i<=n;i++)
{
nn=nn*i;
}
return nn;
}
int main(int argc, char* argv[])
{
int n,sum;
double nn;
printf("请输入n的值:");
scanf("%d",&n);
sum=a(n);
nn=b(n);
printf("1+2+3+....+n=%d n!=%0.0f\n",sum,nn);
return 0;
}
我要举报
大家都在看
推荐资讯