| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 483 人关注过本帖
标题:检查c程序问题
只看楼主 加入收藏
rentian83110
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2011-8-9
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:4 
检查c程序问题
请帮忙检查下面程序错在哪里,谢了~~
for(i=0;i<10;i++)
 scanf("%d",&a[i]);
 }
sort(int b[11])
{
 int i,j,t;
 for(i=0;i<9;i++)
 for(j=0;j<9-i;j++)
 if(b[j]<B[J+1])
 {
  t=b[j];
  b[j]=b[j+1];
  b[j+1]=t;
  }
}
search(int c[11])
{
 int low=1,high=10,mid,n;
 printf("Enter a integers:\n");
 scanf("%d",&n);
 while(low<=high)
 {
  mid=(low+high)/2;
  if(c[mid]==n)
  break;
  if(c[mid]>n)
  low=mid+1;
  else high=mid-1;
  }
}
main()
{
 int d[11],low,high,mid,i,n;
 printf("Enter 10 interger:\n");
 sizs(d);
 sort(d);
 if(n==1)
 printf("zidi %d ge",mid+1);
 else
 {
  for(i=9;i>=low;i--)
  {
   d[i+1]=d[i];
   d[low]=m;
   }
   for(i=0;i<11;i++)
   printf("%d",d[i];
   }
   getch();
   }
搜索更多相关主题的帖子: c程序 
2011-08-11 18:12
QQ346957135
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:148
专家分:658
注 册:2011-8-9
收藏
得分:10 
麻烦说清楚你到底想干什么,只看到一个冒泡排序和折半查找。这程序写得真差劲,大小写弄错,格式不规范等等。看看你的主函数没有赋值就使用。问一下版主,这样的帖子也能发表?

A real warrior never quits.
2011-08-11 18:32
rentian83110
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2011-8-9
收藏
得分:0 
是下面这个题目的程序,我是刚学习C语言,请各位师傅们给检查一下问题,谢谢~~~
编写一个程序,包括主函数和如下子函数。

(1) 输入10个无序的整数;

(2) 用起泡方法从大到小排序;

(3) 要求输入一个整数,用折半查找法找出该数,若存在,在主函数中输出其所处的位置,否则,插入适当位置。

分析:input函数完成10个整数的录入。sort函数完成起泡法排序,search函数完成输入数的查找。

2011-08-11 20:31
QQ346957135
Rank: 7Rank: 7Rank: 7
等 级:黑侠
帖 子:148
专家分:658
注 册:2011-8-9
收藏
得分:0 
程序代码:
/*是下面这个题目的程序,我是刚学习C语言,请各位师傅们给检查一下问题,谢谢~~~
编写一个程序,包括主函数和如下子函数。

(1) 输入10个无序的整数;

(2) 用起泡方法从大到小排序;

(3) 要求输入一个整数,用折半查找法找出该数,若存在,在主函数中输出其所处的位置,否则,插入适当位置。

分析:input函数完成10个整数的录入。sort函数完成起泡法排序,search函数完成输入数的查找。*/

#include<stdio.h>
void input(int a[])/*10个整数的录入*/
{
    int i;
    printf("输入10个整数:");
    for(i=0;i<10;i++)
        scanf("%d",&a[i]);
}
void sort(int a[])/*对10个整数完成起泡排序*/
{
    int i,j,temp;
    for(i=0;i<10;i++)
        for(j=0;j<9-i;j++)
        {
            if(a[j]>a[j+1])
            {
                temp=a[j];
                a[j]=a[j+1];
                a[j+1]=temp;
            }
        }
}
void search(int a[],int e)/*查找e所在位置,若不存在插入合适的位置*/
{
    int low=0,high=9,mid,i,j,temp;
    while(low!=high)
    {
        mid=(low+high)/2;
        if(a[mid]==e)
        {
            printf("找到e,e是10个数中第%d个元素\n",mid+1);
            return ;
        }
        else if(a[mid]>e)
        {
            high=mid-1;
        }
        else
        {
            low=mid+1;
        }
    }
    a[10]=e;/*e加入数组,然后对11个数起泡排序*/
    for(i=0;i<11;i++)
        for(j=0;j<10-i;j++)
        {
            if(a[j]>a[j+1])
            {
                temp=a[j];
                a[j]=a[j+1];
                a[j+1]=temp;
            }
        }
    printf("e不在10个整数当中!\n");
    printf("e插入后11个整数序列为:");
    for(i=0;i<11;i++)/*输出11个整数序列*/
        printf("%d ",a[i]);
    printf("\n");

}
void output(int a[])/*输出10个整数序列*/
{
    int i;
    for(i=0;i<10;i++)
        printf("%d ",a[i]);
    printf("\n");
}
void main()
{
    int a[11],i,e;
    input(a);
    printf("输入的10个整数为:");
    output(a);
    sort(a);
    printf("排序后的10个整数:");
    output(a);
    printf("输入要查找的元素:");
    scanf("%d",&e);
    search(a,e);
}

A real warrior never quits.
2011-08-12 11:40
rentian83110
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2011-8-9
收藏
得分:0 
thank you~~
2011-08-12 18:36
快速回复:检查c程序问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030599 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved