200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > pat乙级 1006 题解

pat乙级 1006 题解

时间:2020-10-12 19:41:57

相关推荐

pat乙级 1006 题解

一、整体思路

读入n后按题目所给格式进行输出

二、关键问题

1.如何按题目所给格式输出

2.如何简化输出个位的过程(十位、百位同理)

三、关键问题对应的解决方法

1.根据n的位数分类进行输出

若n为个位数,则按格式输出个位

若n为十位数,则按格式输出十位与个位

若n为百位数,则按格式输出百位、十位与个位

2.

拿到的个位为char类型,可借助for循环与相应的表达式通过printf("%c",'0'+i-0)完成

关键点在于理解'0'与char,0与int之间的关系与相对关系

四、数据结构

由1001得到的启发,用字符串存储n,以简化对其的处理

代码如下:

#define_CRT_NONSTDC_NO_WARNINGS

#include<stdio.h>

#include<stdlib.h>

voidprintint(charn[4]);

voidprintgewei(chargewei);

voidprintshiwei(charshiwei);

voidprintbaiwei(charbaiwei);

intmain()

{

charn[4];

scanf("%s",n);

printint(n);

return0;

}

voidprintint(charn[4])

{

inti;

intweishu;

for(i=0;n[i];i++);

weishu=i;

switch(weishu)

{

case1:

{

printgewei(n[0]);

break;

}

case2:

{

printshiwei(n[0]);

printgewei(n[1]);

break;

}

case3:

{

printbaiwei(n[0]);

printshiwei(n[1]);

printgewei(n[2]);

break;

}

}

}

voidprintgewei(chargewei)

{

inti;

for(i=1;i<=(gewei-'0');i++)

{

printf("%c",'0'+i-0);

}

}

voidprintshiwei(charshiwei)

{

inti;

for(i=1;i<=(shiwei-'0');i++)

{

printf("S");

}

}

voidprintbaiwei(charbaiwei)

{

inti;

for(i=1;i<=(baiwei-'0');i++)

{

printf("B");

}

}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。
相关阅读
PAT乙级1033题解

PAT乙级1033题解

2021-12-22

PAT乙级1025题解

PAT乙级1025题解

2023-05-01

PAT乙级1034题解

PAT乙级1034题解

2020-06-02

PAT乙级题解

PAT乙级题解

2021-07-20