| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 388 人关注过本帖
标题:C语言简单问题求解
只看楼主 加入收藏
珈蓝听雨
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2014-5-17
结帖率:100%
收藏
已结贴  问题点数:3 回复次数:5 
C语言简单问题求解
输入N个整数到一个一维数组中,将第一个数移到最后面,而其余的数都顺序向前移一位,输出结果。如:1 2 3 4 5移动后的结果为2 3 4 5 1。
#include <stdio.h>
#define N 100
void main(){
    int a[N] , n=0  ;
    while (n<100){
    scanf("%d",&a[n]);
    n++;
    }
    n=1;
    while(n<100)
    printf("%d ",a[n]);
    printf("%d",a[0]);
}
求指导那里错了
搜索更多相关主题的帖子: include C语言 
2014-06-03 11:42
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:1 
while(n<100)   //这个循环,n没有变化,所以是死循环
    printf("%d ",a[n]);

总有那身价贱的人给作业贴回复完整的代码
2014-06-03 12:17
yueyues
Rank: 1
等 级:新手上路
帖 子:1
专家分:1
注 册:2014-6-3
收藏
得分:1 
#include <stdio.h>
#define N 5
void main()
{
    int a[N],i=0;
    int temp;
    //初始化
    for(i=0;i<N;i++)
        scanf("%d",&a[i]);
    temp=a[0];
    //数据依次前移
    for(i=0;i<N-1;i++)
        a[i]=a[i+1];
    //设置最后一个数据
    a[i]=temp;
    for(i=0;i<N;i++)
        printf("%d\n",a[i]);

}
2014-06-03 13:28
砖家的谎言
Rank: 12Rank: 12Rank: 12
等 级:禁止访问
威 望:30
帖 子:693
专家分:3898
注 册:2013-12-6
收藏
得分:1 
直接把最后一个位子给第一个,后面的下标都移动一位

我不是砖家,要努力成为砖家。
2014-06-03 13:48
so_love
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:7
帖 子:812
专家分:4151
注 册:2013-11-25
收藏
得分:1 
你这代码确定移动了么?我怎么看着你就是打印的时候解决问题了。也没移动数据啊

一花一世界、一叶一追寻、片片花叶落、情系何人身。
2014-06-03 16:04
珈蓝听雨
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2014-5-17
收藏
得分:0 
额,我知道了我首先犯了点小错误,更改了下
#include <stdio.h>
#define N 100
void main(){
    int a[N] , n=0  ;
    while (n<N){
    scanf("%d",&a[n]);
    n++;
    }
    n=1;
    while(n<N){
    printf("%d ",a[n]);
    n++;
    }
    printf("%d",a[0]);
    getchar();
}
可是我宏定义的N 100只能输入100个数才有效,有没有办法输入不到数按Enter就马上跳出循环的办法呢?
2014-06-03 16:44
快速回复:C语言简单问题求解
数据加载中...
 
   



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

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