题目描述
探姬的数学虽然不好,编程水平还是不错,一位女同学向探姬请教编程问题,探姬随口说:“约会”,这位女同学生气地拧着探姬的耳朵问:”你什么意思?”,探姬连忙解释说:“这道题我大约会做”。问题是这位女同学在用C程序输出一行由字母、数字、空格、标点符号组成的字符串时,把字符都按字符的ASCII码输出了,她想知道原字符串的内容,探姬同学陷入了沉思,于是,听到探姬同学喊救命的声音。请你根据输出的内容,恢复原字符串的内容。
输入
输入一行由数字组成的字符串,长度小于1000.
输出
输出原字符串的内容。
#include<stdio.h>
#include<string.h>
int main()
{
char str[1000];
int i,n;
scanf("%s",&str);
for(i=0;str[i]!='\0';i++)
{
str[i]=str[i]-48;
}
int a[1000];
int k;
k=0;
i=0;
while(str[i]!='\0')
{
if(str[i]*10+str[i+1]<32)
{
a[k]=str[i]*100+str[i+1]*10+str[i+2];
i=i+3;
k++;
}
else if(str[i]*10+str[i+1]>=32&&str[i]<=99)
{
a[k]=str[i]*10+str[i+1];
i=i+2;
k++;
}
}
n=k;
for(k=0;k<n;k++)
{
printf("%c",a[k]);
}
return 0;
}