标题:错在哪里啦????????
只看楼主
kinwyb
Rank: 4
等 级:业余侠客
帖 子:134
专家分:244
注 册:2009-3-7
得分:2 
for(i=0;;i++)
       scanf("%d",&a[i]);
这里死循环了吧。没设置循环结束的条件

学习c语言痛苦!!但是要坚持~~
2011-10-07 18:08
seeworld
Rank: 2
等 级:论坛游民
帖 子:19
专家分:39
注 册:2011-10-7
得分:2 
我把当输入数字为0时,结束数据读取,此时输入数字的个数就是数列的长度。
#include "stdio.h"

#include<stdio.h>
int main()
{
    int a[100];
    int i=0,t,j,length=0;
    printf("please input numbers:");
   
    for(i=0;;i++)
    {
       scanf("%d",&a[i]);
       if(a[i]==0)
       {
            break;
       }
    }
    length=i;

    for(j=0;j<length-1;j++)
    for(i=0;i<length-j-1;i++)
        if(a[i]>a[i+1])
        {
            t=a[i];
            a[i]=a[i+1];
            a[i+1]=t;
        }
    for(i=0;i<length;i++)
        printf("%d ",a[i]);
    printf("\n");
    return 0;
}
2011-10-07 18:40



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-351562-1-1.html




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

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