鱼C论坛

 找回密码
 立即注册
查看: 4344|回复: 11

刚学C语言求大神帮忙!

[复制链接]
发表于 2013-10-20 21:38:15 | 显示全部楼层 |阅读模式
10鱼币
#include <stdio.h>
main()
{
char c;
int v0 = 1,v1 = 0,v2 = 0;
do{
  switch(c=getchar())
  {
  case 'a':case 'A':
  case 'e':case 'B':
  case 'i':case 'I':
  case 'o':case 'O':
  case 'u':case 'U':v1+=1;
  default:v0+=1;v2+=1;
  }}
while(c!='\n');
printf("v0=%d,v1=%d,v2=%d\n",v0,v1,v2);
}
键盘输入ADescriptor<CR>(<CR>表示回车)
结果为什么是v0=13,v1=4,v2=12?我算的答案v0=12,v1=4,v2=11;求大神帮忙!解答越详细越好!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2013-10-20 23:04:41 | 显示全部楼层

只输入了11个字符,先执行一遍括号里的代码也是12次啊!为什么是13次啊!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2013-10-20 23:05:53 | 显示全部楼层

大哥不要同上好吗,可以说仔细点吗?跪谢!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2013-10-20 23:24:04 | 显示全部楼层
my_angel 发表于 2013-10-20 23:21
因为最后一个输入在判断前也执行了一次循环体。。这么说明白了吗?

<CR>的ASC码是10?循环控制语句里不是‘\n’吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2013-10-20 23:31:15 | 显示全部楼层
my_angel 发表于 2013-10-20 23:30
初始值
v0     1
v1     0

哥这什么意思啊?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2013-10-20 23:38:47 | 显示全部楼层
my_angel 发表于 2013-10-20 23:36
看上面。。。

明白了!跪谢!
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-10-13 02:45

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表