鱼C论坛

 找回密码
 立即注册
查看: 8137|回复: 7

学习C++中的痛苦事

[复制链接]
发表于 2015-10-22 00:36:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 过眼云烟 于 2015-10-22 00:38 编辑

下面程序统计字符数组c中0、1、2及其他字符出现的次数,分别存放在变量i0、i1、i2中,统计结束后输出它们的值。要求:分析出现结果的原因,如何修改使结果正确。



  1. #include

  2. using namespace std;

  3.      int main()

  4.      {

  5. char c[]=”0123456789001112222”;

  6. int i0=0,i1=0,i2=0,i3=0;

  7. for (int i=0;i<19;i++)

  8. switch(c[i])

  9. {  case’0’:i0++;

  10. case’1’:i1++;

  11. case’2’:i2++;

  12. default:i3++;

  13. }

  14. cout<<”i0=”<

  15. cout<<”i1=”<

  16. cout<<”i2=”<

  17. cout<<”i3=”<

  18. return 0;

  19. }
复制代码

这道题我在编译器里面发现压根儿不能正常运行,结果我还得分析出题人的本意是什么,莫名其妙的错误一大堆,出现错误的原因是在太多,编译器给出的错误提示也是超级长的一大片
这道题我是百度到的答案(今天交了作业,尚不知道能不能成功应付差事成功),但是我并不想单纯的只是应付差事,可是我实在黔驴技穷了.......
还有,如果以后遇到类似的问题咋办?
还有,我手滑了,按了标记已解决,我怎么撤销“已经解决”这个提示?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2015-10-22 09:20:13 | 显示全部楼层
没啥痛苦的
1. 你的#include 后面没有<iostream>
2. 你使用的单引号和双引号都是全角的   ,你应该使用半角的
3. case 应该加上break  不然结果不准确
  1. #include <iostream>

  2. using namespace std;
  3. int main()
  4. {

  5.     char c[]="0123456789001112222";

  6.     int i0=0,i1=0,i2=0,i3=0;

  7.     for (int i=0;i<19;i++)

  8.     switch(c[i])

  9.     {
  10.         case '0':i0++;
  11.         break;

  12.         case '1':i1++;
  13.         break;
  14.         case  '2':i2++;
  15.         break;
  16.         default:i3++;

  17.     }

  18.     cout<<"i0="<<i0;

  19.     cout<<"i1="<<i1;

  20.     cout<<"i2="<<i2;

  21.     cout<<"i3="<<i3;

  22.     return 0;

  23. }
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-10-28 22:57:26 | 显示全部楼层
本帖最后由 过眼云烟 于 2015-10-28 23:07 编辑
小人 发表于 2015-10-22 09:20
没啥痛苦的
1. 你的#include 后面没有
2. 你使用的单引号和双引号都是全角的   ,你应该使用半角的


多谢大神回答,感激不尽,唉,虽然还是不懂,但是仍然非常感谢,我大学学习C++和数据结构的课程,很是纠结,上课就像听天书,看课本就像看加密数据,作业只能应付差事,小甲鱼大神的数据结构视频,我看着也是一塌糊涂:cry
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-10-29 22:11:53 | 显示全部楼层
过眼云烟 发表于 2015-10-28 22:57
多谢大神回答,感激不尽,唉,虽然还是不懂,但是仍然非常感谢,我大学学习C++和数据结构的课 ...


大学的c++基础课程还是很基础的吧。认真听课,多敲代码,多思考,就可以了啊
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-11-11 21:36:24 | 显示全部楼层
Prolearning 发表于 2015-10-29 22:11
大学的c++基础课程还是很基础的吧。认真听课,多敲代码,多思考,就可以了啊

:sad其实是我底子不好,按理说本该考不上那个大学的,但是后来机缘巧合之下,居然卡线过了,所以就连数组指针都不会的情况下,上大学直接学面向对象,差了一大截:cry
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-11-12 14:58:19 | 显示全部楼层
过眼云烟 发表于 2015-11-11 21:36
其实是我底子不好,按理说本该考不上那个大学的,但是后来机缘巧合之下,居然卡线过了,所以就连数组 ...

不 ··········你误解了。很多人上大学之前也没学过编程,但一样报了计算机专业啊。一样能成为学霸
大学的课程一般都很基础,稍微努力一点你肯定能学得会,而且编程的基础教程既不要求你会数学,也不要求你会英语(这些都是钻进去以后才会用到的)。
如果你连大学的基础教程都没学懂,那你以后更难学了。关键还是看你是不是真的想学好
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-7-20 15:47:10 | 显示全部楼层
本帖最后由 过眼云烟 于 2016-7-20 15:53 编辑
Prolearning 发表于 2015-11-12 14:58
不 ··········你误解了。很多人上大学之前也没学过编程,但一样报了计算机专业啊。一样能成为 ...


之前一直忘了账号和密码,所以一直没有回复您的帖子,也没登录,估计挖坟会被惩罚,可是我实在忍不住回复您一下。1我是专升本的,考上本科以后,第一个学期就同时学面向对象的C++,还有数据结构,还有编译原理之类的课程,我一下子就懵逼了,我表示我已经重修1次了,C++和数据结构还是没过关,差一点就过了总之来说就是,我们学校要求,考上大学之前要有一定的计算机C基础才行,而我是没有的,然后我就懵逼了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-8-10 10:39:14 | 显示全部楼层
过眼云烟 发表于 2016-7-20 15:47
之前一直忘了账号和密码,所以一直没有回复您的帖子,也没登录,估计挖坟会被惩罚,可是我实在忍不住回 ...

好多课你学的时候不明白。但是你努力学,学到最后就会觉得其实没那么难。
像你说得哪些课,其实在大学里面教的都是挺基础的。而这些基础也挺重要的
最重要的是多敲代码,多思考。你或许成不了大牛,但是成为一名好学生还是不难的。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-5-16 08:25

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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