c语言编程题,不知道错在哪,请高人指点

#include<stdio.h>
void max_min_value(int *t) // 交换函数
{ int *max,*min,*p,temp;
max=min=t;
for (p=t+1;p<t+10;p++)
if (*p>*max) max=p; // 将大数地址赋给 max
else if (*p<*min) min=p; // 将小数地址赋给 min
temp=t[0];t[0]=*min;*min=temp; // 将最小数与第一数交换
temp=t[9];t[9]=*max;*max=temp; // 将最小数与第一数交换
}
int main()
{

int a[10],*p=a;
for(p=a,p<a+10,p++)
scanf("%d",p);
p=a;
void max_min_value(int *p);
p=a;
for(p=a,p<a+10,p++)
printf("%d",*p);
return 0;
}

第1个回答  2011-05-31
这程序我把所有的语法错误都改了 但是运行出来结果是不对的,算法有问题

void max_min_value(int *t) // 交换函数
{
int *max, *min, *p, temp;
max = min = t;

for (p=t+1;p<t+10;p++){

if (*p>*max)
max=p; // 将大数地址赋给 max
else if (*p<*min)
min=p; // 将小数地址赋给 min
}

temp=t[0];
t[0]=*min;
*min=temp; // 将最小数与第一数交换
temp=t[9];
t[9]=*max;
*max=temp; // 将最小数与第一数交换
}

int main(int argc, char* argv[])
{
int a[10];
int *p = a;
for (p = a; p < a + 10; p++)
scanf("%d\n", p);
p = a;
max_min_value(p);
p = a;
for (p = a; p < a + 10; p++)
printf("%d\n", *p);
return 0;
}
第2个回答  2011-05-31
两个错误
一、 for循环里面以分号;作为分隔符
for(p=a; p<a+10; p++)
二、函数调用跟声明有区别
这个void max_min_value(int *p);是声明,调用应写成这样:
max_min_value(p);本回答被提问者采纳
第3个回答  2011-05-31
把for循环中的,改为;
;和,很容易看错追问

程序说我第十八行出错,掉了分号,怎么回事

这儿有一道C语言编程题,请达人帮忙看一下有什么错误。
n每步循环的开始,要把相关变量清0 for(n=3;n<=20;n++){ \/\/以下是将相关变量清0 i=j=flag=0;for(p=0;p<21;p++)for(q=0;q<21;q++)a[p][q]=0;for(curr=1;curr<=n*(n+1)\/2;curr++){

请问这个c语言程序哪里错了?题目:求华氏温度100对应的摄氏温度。计算公...
int f;f=100;float c;scanf("%f",&c); \/\/这个地方的意思是让用户输入C的值,用不上的。你下面不是用F来表示C了么。把这句去掉就可以了。c=(5.0\/9)*(f-32);printf("%f",c);}

C语言编程题,希望高手提点迷津,谢谢!
好吧,有人提到筛法了。看来是算法题,好久没遇到了。要是下次问算法题麻烦说一下time limit 要点:素数筛法。把int内所有素数打成表。 原理就是倍数排除。然后循环累加 bool is[N]; int prm[M]; \/\/don't break stack; define n\\m int getprm(int n)\/\/modle { int i, j, k = 0;int...

C语言编程遇到问题,请求高手指点,是统计区间个数的问题
for(i=1;i<c;i++){ for(j=0;j<最大的个数;j++){ if(a[i]>minin&&a[i]<(minin+division)){ 存储链表 } } minin+=division;在链表中存储一个标记符 } 存储 因为不知道 大小 应该用链表

请人帮忙做下这几个简单的c语言编程题,谢谢
1 include <stdlib.h> include <stdio.h> void main(void){ double R = 0;double PI = 3.14159265;while(1){ printf("Please input R (<=0 to quit)\\n");scanf("%lf", &R);if(R <= 0){ break;} double perimeter = 2 * PI * R;double acreage = PI * R * R;printf("...

关于顺序表的问题,不知道错哪了,请哪位高人指点一下
当你要修改顺序表中的值的时候,你得用指针的形式把顺序表的地址传过去。不然你的调用函数结束那些就同时被解析了。比如void CreatList(SqList L,int n) 应该是void CreatList(SqList *L,int n)吧

c语言编程题 字母由大到小排序 最后的执行程序后为EFCBA 题目要求是FEC...
include <stdio.h>void main() {char t,a[] = {'C','A','B','F','E'};int p,i,j;for(i = 0; i < 5 - 1; i++) {p = i;for(j = i + 1; j < 5; j++) {if(a[p] < a[j]) p = j;}if(p != i) {t = a[i];a[i] = a[p];a[p] = t;}}...

C语言编程题,拜托大家
通过Ascii码来识别按键。输入采用getch函数获取字符再转数字。由于getch不在控制台显示,自定义函数实现回显。代码实现了录入,删除功能。录入只识别数字,其他字符按了也没用。退格键一次删一个字符,可以跨行删除。回车确认一个数字的输入,下次输入新数字自动换行(回车后光标不换行,另外删除当前行可以反...

C语言编程题,求解
int Get3Num(int a[],int b[],int n){ int i;int sum=0;for(i=0;i<n;i++){ if(a[i]%3==0){ b[sum] = a[i];sum++;} } return sum;} int main(){ int num[20];int num_3[20];int i,j,sum;srand((unsigned int)time(NULL));for(i=0;i<20;i++){ num[i...

acm编程题(c语言,一道),自己运行没错,但AC不了,老是Wrong Anwser,请大...
int t,i,j,b[101]={0};char a[100];int n,m,temp;scanf("%d",&t);while(t){ m=0;scanf("%d",&n);scanf("%s", a);for(i=0;i<n;i++){ for(j=0;j<n;j++){ if(a[i]==a[j]){ b[i]++;} } if(m

相似回答