| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1143 人关注过本帖
标题:不太会,求解,用两个变量的那种法a[i]=a[j],i++,j--那种,感谢你呀
只看楼主 加入收藏
秃头大凡
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2021-10-28
结帖率:50%
收藏
已结贴  问题点数:3 回复次数:2 
不太会,求解,用两个变量的那种法a[i]=a[j],i++,j--那种,感谢你呀
输入n个数,然后把这n个数逆序输出。

输入格式:
测试数据有多组,处理到文件尾。每组测试数据在一行上首先输入整数n,接着输入n(n<=40)个整数。

输出格式:
对于每组测试,逆序输出n个数,每两个数据之间留一个空格。每两组测试数据之间留一个空行

输入样例:
5 1 2 3 4 5
3 1 2 3
输出样例:
5 4 3 2 1

3 2 1
搜索更多相关主题的帖子: 输入 个数 测试 数据 输出 
2021-11-03 19:45
自由而无用
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:14
帖 子:61
专家分:1456
注 册:2021-8-9
收藏
得分:0 
//online parser: https://www.bccn.net/run/
程序代码:
#include <stdio.h>
#include <string.h>

#define strlize(_s) #_s
#define offdig(_s)  (_s - 0x30)
#define diglize(_d) (_d + 0x30)

int main(int argc, char *argv[])
{
    static char smap[2][10];
    int i;
    
    //strlize input
    argv[0] = strlize(5 1 2 3 4 5);
    argv[1] = strlize(3 1 2 3);
    //rev
    for (i = 0; i < strlen(argv[0]); i += 2)
        smap[0][offdig(argv[0][i])] = 1;
    for (i = 0; i < strlen(argv[1]); i += 2)
        smap[1][offdig(argv[1][i])] = 1;
    //print
    puts(argv[0]);
    for (i = strlen(argv[0]) - 1; i > 0; i--)
        smap[0][i] ? printf("%c ", diglize(i)) : 0;
    puts("");
    puts(argv[1]);
    for (i = strlen(argv[1]) - 1; i > 0; i--)
        smap[1][i] ? printf("%c ", diglize(i)) : 0;
    
    return 0;
}


output sample:

5 1 2 3 4 5
5 4 3 2 1
3 1 2 3
3 2 1
2021-11-03 20:27
apull
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:三体星系
等 级:版主
威 望:216
帖 子:1506
专家分:9241
注 册:2010-3-16
收藏
得分:2 
程序代码:
#include <stdio.h>
int main() {
    int a[40]={0};
    int n;
    while(1)
    {
        scanf("%d",&n);
        if(n<=0)break;
        for(int i=0;i<n;i++)
        {
            scanf("%d",&a[i]);
        }
        int t;
        for(int  i=0;i<n-1;i++)
        {
            for(int j=i+1;j<n;j++)
            {
                if(a[i]<a[j])
                {
                    t=a[i];
                    a[i]=a[j];
                    a[j]=t;
                }
                
            }
        }
        
        for(int i=0;i<n;i++)
        {
            printf("%d ",a[i]);
        }
        printf("\n\n");
    }
    return 0;
}
2021-11-03 21:04
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:2 
程序代码:
#include <stdio.h>

int main( void )
{
    for( unsigned n; scanf("%u",&n)==1; )
    {
        int a[40];
        for( unsigned i=0; i!=n; ++i )
            scanf( "%u", &a[i] );
        for( unsigned i=0; i!=n; ++i )
            printf( "%u%s", a[n-1-i], " \0\n\n"+(i+1==n)*2 );
    }
}
2021-11-04 08:19
快速回复:不太会,求解,用两个变量的那种法a[i]=a[j],i++,j--那种,感谢你呀
数据加载中...
 
   



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

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