PYozo  

 

(1)实验代码:

#include<stdio.h>
main()
{
int n;

scanf("%d",&n);

if(n==0)
{
printf("a");
}

int i=0,N=n;

while(n!=0)
{
n=n/10;
i++;
}

int a[i];

n=i;

for(i=0;i<n;i++)
{
a[i]=N%10;
N=N/10;
}

char s[n];

int b;

int c=n-1;
if(N<10)
for(i=n-1;i>=0;i--)
{
b=a[i]-0;
s[i]='a'+b;

if(a[i]==0&&c>=5&&i==4)
printf("W");

if(a[i]==0)
{
for(n=i;n>=0;n--)
if(a[n]>0)
{
break;
}
continue;
}
if(a[i+1]==0&&a[i]!=0&&i!=c)
{
printf("a");
}

printf("%c",s[i]);

if(a[i]!=0)

switch(i)
{
case 8:
printf("Y");
break;
case 7:
printf("Q");
break;
case 6:
printf("B");
break;
case 5:
printf("S");
break;
case 4:
printf("W");
break;
case 3:
printf("Q");
break;
case 2:
printf("B");
break;
case 1:
printf("S");
case 0:
break;
}
}
}

(2)设计思路:

第一步:判断输入的数是否为0.

第二步:若不为0则运用数组和while来记录字母,并且判断数字是否在万后面或者全部为0,列出式子做出判断.

第三步:输出字符.

运行结果截图:

本题解决方案:1:本来一开始一直无法通过检测,后面问了一个朋友,他给了我一个数据去测量了一下,让我发现无法打印出如:3亿这样的数字,然后重新去检查了代码,并且对比了网上的代码差别,找到了缺少的一部分

posted on 2019-02-20 00:20  PYozo  阅读(158)  评论(0编辑  收藏  举报