| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 306 人关注过本帖
标题:输入字符串的困惑请解答下
只看楼主 加入收藏
A1102029952
Rank: 1
等 级:新手上路
帖 子:18
专家分:8
注 册:2013-6-10
结帖率:100%
收藏
已结贴  问题点数:15 回复次数:3 
输入字符串的困惑请解答下
      定义了s[10]
用gets(s)输入时好像不能输入数字,用for 和 scanf 搭配 能输入数字,但是又要怎么在输不满的时候提前结束呢?
搜索更多相关主题的帖子: 字符串 
2013-12-09 16:47
A1102029952
Rank: 1
等 级:新手上路
帖 子:18
专家分:8
注 册:2013-6-10
收藏
得分:0 
若有char s[10];编写程序输入一个串,并应用冒泡法将数组串中字符升序存放(按ASCII码值大小比较)。就是这个题
#include<stdio.h>
void main()
{
     char s[10];
     int i,j,t;
     for(i=0;i<10;i++)
     {scanf("%c",&s[i]);
         if(s[i]=='\0')
             break;}
     
     for(i=0;i<10;i++)
         for(j=0;j<9;j++)
             if(s[j]>s[j+1])
             {t=s[j];s[j]=s[j+1];s[j+1]=t;}
     i=0;
     while(s[i]!='\0')
     {printf("%c",s[i]);
     i++;}
}
2013-12-09 16:51
A1102029952
Rank: 1
等 级:新手上路
帖 子:18
专家分:8
注 册:2013-6-10
收藏
得分:0 
代码是我写的 ,不知道哪里错了
2013-12-09 16:52
so_love
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:7
帖 子:812
专家分:4151
注 册:2013-11-25
收藏
得分:15 
#include<stdio.h>
#include <string.h>
int main()//为什么是void??
{
     char s[10];
     int i,j,t,m;
//     for(i=0;i<10;i++)
//   {scanf("%c",&s[i]);
//         if(s[i]=='\0')
//             break;}
    gets(s);//输入方式我换了一下,保证多少个字符都可以,但是用gets有危险。慎用,暂时没想到别的
    m=strlen(s);     
     for(i=0;i<m;i++)
         for(j=0;j<m-1;j++)
             if(s[j]>s[j+1])
             {t=s[j];s[j]=s[j+1];s[j+1]=t;}
     i=0;
     while(s[i]!='\0')
     {printf("%c",s[i]);
     i++;}
}

一花一世界、一叶一追寻、片片花叶落、情系何人身。
2013-12-09 17:18
快速回复:输入字符串的困惑请解答下
数据加载中...
 
   



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

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