前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C语言——小学二年级题目解析(一)

C语言——小学二年级题目解析(一)

作者头像
Ed_Frey
发布2019-10-29 14:55:38
5360
发布2019-10-29 14:55:38
举报
文章被收录于专栏:奔跑的键盘侠奔跑的键盘侠
这期是二年级,也就是程序填空题。

程序填空题开始,到阅读理解题,到编程题,首先要有自己的思路,而且思路要清晰,想清楚再动手写,事半功倍。具体心得,等清完1-4年级题目会来一篇。

1

求素数,是一个入门的题目,从最简单的挨个取余计算开始、到用已知素数取余、再到数组逆向计算,一定要门清,不然早晚有一天会有类似的问题麻烦大了。

这个题目,乍一看是取整数因子,其实跟求素数有点神似。求素数的题目,最简单的算法是挨个取余,取到就break,返回非素数。

而这题,也是挨个取余,余数为0的输出,没有就下一个;一直循环到这个整数自己。

  1. k<=a
  2. !(a%k)

当然也可以有其他答案,比如1.k<a+1 ;2.a%k==0。不过第二问,对于我而言还是==0写的比较自然一点,对新手而言比较节省脑力??既然要学C,那就尽量朝着约定俗成的习惯去培养,最好写!(a%k)吧,如果实在转不动了,用==0也无可厚非。

而第一个尽量用原变量表示,也就是<=a。如果变量循环从0开始,就变成了<a,这可以说是一个比较常见也比较标准的习惯,而他也跟数组的下标可以对应上。

昨天有小伙伴指引用插件排版代码,研究了一会放弃(其实前几个月就想着用什么排版,结果愣是没弄明白),突然发现后台有自带代码排版……

就先凑合用吧,等闲暇了再好好钻研一下。

#include <stdio.h>

int main()
{
  int a,k;
  a=12;
  printf("d=%d\n",a);
  for(k=1;k<=a;++k){
    if(!(a%k)){
      printf("%d ",k);
    }
  }
  return 0;
}

==========编译成功后开始运行==========

"C:\Users\2019_943_26.exe"

Process started (PID=9916) >>>

d=12

1 2 3 4 6 12 <<< Process finished (PID=9916). (Exit code 0)

================ READY ================

瞬间清爽了许多,有木有

用的notepad++,码的界面不能scanf,就偷懒一下,直接赋值d=12走起了。

2

小写字母转大写字母,思路:遍历字符串中的字符,介于a-z之间的,转化成大写,也就是文中的str[i]-32操作。

#include <stdio.h>

int main()
{
  int i;
  char str[100];
  scanf("%s",str);

  for(i=0;i<100;i++){
    if('a'<=str[i] && str[i]<='z'){    
      str[i]=str[i]-32;
    }
  }
  printf("%s",str);
  return 0;  
}

运行结果如下:

答案:

3.对应于第7行的 str或者&str[0]都可以

4.对应于11行的 i<100

5.对应于12行的 'a'<=str[i] && str[i]<='z'

第3问,数组的特殊性,其本身就可以看成一个指针,所以直接用变量名时,就是一个地址,即单独str变量就是一个地址,可以省略&;而str[0]所在的地址与数组一样,直接用&str[0]也ok。

第4问,尽量不要写<=99吧。

第5问,'a'<=str[i] && str[i]<='z' 或者 97<=str[i] && str[i]<=122 也可以。如果考到11行的 str[i]=str[i]-32; 刚好记不得要减去32,可以用"A"-"a"来代替。

用惯了python的语法,一直单引号,双引号随意发挥,结果这题就差点栽进去。C里面单引号只能表示单个字符,双引号才表示字符串。

这题目考到scanf,不能偷懒,只好终端搬来了

-END-

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-10-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 奔跑的键盘侠 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档