C语言:任意输入一个自然数,输出该自然数的各位数字组成的最大数。例如,输入 1593 ,则输出为 9531 。

输入:自然数n输出:各位数字组成的最大数这是我的程序,检验结果出现无效内存引用,帮我看看吧~#include<stdio.h>#defineN100main(){char... 输入:自然数 n

输出:各位数字组成的最大数

这是我的程序,检验结果出现无效内存引用,帮我看看吧~

#include <stdio.h>
#define N 100
main ()
{
char a[N];
int i,j,k;
scanf("%s",a);
for(i=0;a[i]!=0;i++)
for(k=i+1;a[k]!=0;k++)
if(a[i]<a[k])
{
j=a[i];
a[i]=a[k];
a[k]=j;
}
puts(a);
}
展开
 我来答
问明6E
高粉答主

2019-06-04 · 每个回答都超有意思的
知道答主
回答量:279
采纳率:100%
帮助的人:14.1万
展开全部

#include"stdio.h"

intmain(intargc,char**argv)

charch;

intarr[10]={0};ﻩﻩ//存储各个数字出现的次数,初始化为0

//统计各个数字出现的次数

while(1)

ch=getchar();

if(ch=='\n')

break;

arr[ch-'0']++;

inti,j;

//输出各个数字出现的次数

for(i=9;i>=0;i--)

printf("数字%d出现%d次.\n",i,arr[i]);

//输出这些数组成的最大的数

printf("\n组成的最大的数:\n");

for(i=9;i>=0;i--)

for(j=arr[i];j>0;j--)

printf("%d",i);

printf("\n");

//输出这些数组成的最小的数,注意:0不输出

printf("\n组成的最小的数:\n");

for(i=1;i<=9;i++)

for(j=arr[i];j>0;j--)

printf("%d",i);

printf("\n");

return0;

扩展资料:

while使用方法:

示例C++

int a=NULL;

while(a&lt;10)

{

a++;//自加

if(a&gt;5)//不等while退出循环,直接判断循环

{

break;//跳出循环

}

}

结果:结束后a的值为6。

Javascript

下面的例子定义了一个循环程序,这个循环程序的参数i的起始值为0。该程序会反复运行,直到i大于10为止。i的步进值为1。

&lt;html&gt;

&lt;body&gt;

&lt;script type="text/javascript"&gt;

var i=0

while(i&lt;=10)

{document.write("The number is"+i);

document.write("&lt;br/&gt;");

i=i+1;}

&lt;/script&gt;

&lt;/body&gt;

&lt;/html&gt;

结果

The number is0

The number is1

The number is2

The number is3

The number is4

The number is5

The number is6

The number is7

The number is8

The number is9

The number is10

IT孤鹜
2014-05-01 · TA获得超过4198个赞
知道大有可为答主
回答量:3960
采纳率:71%
帮助的人:3733万
展开全部
#include <stdio.h>  
#define N 100  
main ()  
{  
    char a[N]={'\0'};   //初始化试一下,我在vc6.0没报错 
    int i,j,k;  
    scanf("%s",a);  
    for(i=0;a[i]!=0;i++)  
        for(k=i+1;a[k]!=0;k++)  
            if(a[i]<a[k])  
            {  
                j=a[i];  
                a[i]=a[k];  
                a[k]=j;  
            }  
            puts(a);  
}
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhzhw2014
2014-05-01 · 超过11用户采纳过TA的回答
知道答主
回答量:72
采纳率:0%
帮助的人:40.7万
展开全部
在我这儿测试的没错误啊,你的是啥错误,把你的错误输出发上来,还有你用于测试的输入内容
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式