| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2230 人关注过本帖
标题:为什么用scanf输入2维数组的字符,剩余的空间都被当做空格来计算(包括回车 ...
取消只看楼主 加入收藏
幻想仙
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2015-4-25
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
为什么用scanf输入2维数组的字符,剩余的空间都被当做空格来计算(包括回车)?
#include<stdio.h>
int main()
{int i,j,A=0,l=0,n=0,space=0,m=0;
 char a[2][10];
 printf("请输入2行文字:\n");
 for(i=0;i<2;i++)
   for(j=0;j<10;j++)
     scanf("%c",&a[i][j]);
  {for(i=0;i<2;i++)
     for(j=0;j<10&&a[i][j]!='\0';j++)
       {if(a[i][j]<='Z'&&a[i][j]>='A')A=A+1;
        else if(a[i][j]<='z'&&a[i][j]>='a')l=l+1;
        else if(a[i][j]<='9'&&a[i][j]>='0')n=n+1;
        else if(a[i][j]=' ')space=space+1;
        else if(a[i][j]='\0')m=m+1;
       }
  }
 printf("大写字母的个数:%d\n",A);
 printf("小写字母的个数:%d\n",l);
 printf("数字的个数:%d\n",n);
 printf("空格的个数:%d\n",space);
 printf("空字符的个数:%d\n",m);
 return 0;
}
图片附件: 游客没有浏览图片的权限,请 登录注册
搜索更多相关主题的帖子: include 空间 
2015-04-25 11:39
幻想仙
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2015-4-25
收藏
得分:0 
回复 3楼 z_j_j_1
那为什么它连回车都当成空格的个数来算?
字母,数字,空格,回车的个数加起来等于总空间数20

[ 本帖最后由 幻想仙 于 2015-4-26 10:06 编辑 ]
2015-04-26 09:55
幻想仙
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2015-4-25
收藏
得分:0 
回复 4楼 我爱吃青菜
改了,没用。
而且不是输入字符时结束后,系统不是应该会给其自动加上一个空字符表示结束吗?
2015-04-26 10:02
幻想仙
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2015-4-25
收藏
得分:0 
回复 8楼 我爱吃青菜
哦~明白,现在空格个数改对了,但是为什么要字母,数字,空格,回车个数加起来等于总空间20才能显示答案?
2015-04-26 10:14
幻想仙
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2015-4-25
收藏
得分:0 
回复 9楼 我爱吃青菜
你的意思是用for循环的scanf输入时,结束后,字符串的末尾不会自动加上一个空字符吗?
2015-04-26 10:19
幻想仙
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2015-4-25
收藏
得分:0 
回复 12楼 我爱吃青菜
那怎么做才能使在输入的时候能够不输入多余的回车,并且显示的答案正确?我试了好几遍,没找出所能够实现的终止条件。
2015-04-26 10:39
幻想仙
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2015-4-25
收藏
得分:0 
回复 14楼 我爱吃青菜
嗯,你的代码我试过了,没错,就是我要的,不过我的疑问是能用for循环的scanf语句实现这个吗?
2015-04-26 10:50
幻想仙
Rank: 1
等 级:新手上路
帖 子:8
专家分:0
注 册:2015-4-25
收藏
得分:0 
回复 16楼 我爱吃青菜
哦~~明白了,谢啦~~O(∩_∩)O
2015-04-26 11:17
快速回复:为什么用scanf输入2维数组的字符,剩余的空间都被当做空格来计算(包括 ...
数据加载中...
 
   



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

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