当前位置:首页 > 复赛 > 正文内容

NOIP/CSP考试中需要注意的一些问题(持续更新)

亿万年的星光5年前 (2021-01-28)复赛2244
1.gets问题

考试中请不要使用gets函数读取字符数组。可以用cin的方式读取。如果是字符串,请直接使用string及getline的方式读取。

2.strlen问题

在考试中,如果使用strlen函数,那么最好不要出现在循环和判断的内部。例如

int main()
{
   char a[500];
   cin>>a;
   for(int i=0;i<strlen(a);i++) //这种写法会让时间复杂度由O(n)变成O(n^2)
   {
       cout<<a[i]<<endl;
   }
}

应该改成这样:

int main()

   char a[500];
   cin>>a;
       int len =strlen(a);
   for(int i=0;i<len;i++)  
   {
       cout<<a[i]<<endl;
   }
}

同理,像if这样的语句中,尽量也不要出现 strlen,应该把他放到外面。

3.其他问题
  • 头文件用错,不会的话就用万能头吧

  • 没有使用文件输入输出

  • 输入输出文件名写错误

  • 文件输入输出位置写错

  • 文件输入输出中要求用英文的部分出现了中文

  • 文件输入输出语句中双引号写成单引号

  • 函数名freopen写错

  • 输入输出文件名写错

  • 调试的时候加入了调试输出,提交的时候忘了删除或者注释掉

  • 使用变量定义数组。例如 int a[n]

扫描二维码推送至手机访问。

版权声明:本文由青少年编程知识记录发布,如需转载请注明出处。

分享给朋友:

相关文章

NOIP2010年普及组T2 接水问题

【题目描述】学校里有一个水房,水房里一共装有m 个龙头可供同学们打开水,每个龙头每秒钟的供水量相等,均为1。现在有n 名同学准备接水,他们的初始接水顺序已经确定。将这些同学按接水顺...

NOIP2012年普及组 T2 寻宝

NOIP2012年普及组 T2 寻宝

【题目描述】传说很遥远的藏宝楼顶层藏着诱人的宝藏。小明历尽千辛万苦终于找到传说中的这个藏宝楼,藏宝楼的门口竖着一个木板,上面写有几个大字:寻宝说明书。说明书的内容如下:藏宝楼共有 N+1 层,最上面一...

NOIP/CSPJ 复赛中noilinux里的atbiter测评机的使用(附数据)

NOIP/CSPJ 复赛中noilinux里的atbiter测评机的使用(附数据)

0.前言最近这段时间在研究noilinux,NOI考试中的测评系统就在noilinux中,叫做atbiter。自己百度了一下,发现说的都比较官方,自己尝试了一遍,把过程和数据附上,以供参考。1.创建比...

NOIP2014年普及组 T2 比例简化

【题目描述】在社交媒体上,经常会看到针对某一个观点同意与否的民意调查以及结果。例如,对某一观点表示支持的有 1498 人,反对的有 902 人,那么赞同与反对的比例可以简单的记为1498:902。不过...

NOIP2003年普及组 T1 乒乓球

【题目描述】国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及。其中11分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役。华华就是其中一位,他退...

NOIP2011年普及组T2 统计单词数

【题目描述】一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给...