1002
调试了好久的代码 之所以没出来就是错在了最后退格上面,无论是c语言中printf("\b");还是c++中的cout<<"\b";都是不行的,只能是按照顺序一次性打印成功。
#include<math.h>
#include<stdio.h>
#include<string.h>
void display(int j)
{
char pinyin[10][5] = { "ling","yi","er","san","si","wu","liu","qi","ba","jiu" };
switch (j)
{
case 0:
printf("%s", pinyin[0]);
break;
case 1:
printf("%s", pinyin[1]);
break;
case 2:
printf("%s", pinyin[2]);
break;
case 3:
printf("%s", pinyin[3]);
break;
case 4:
printf("%s", pinyin[4]);
break;
case 5:
printf("%s", pinyin[5]);
break;
case 6:
printf("%s", pinyin[6]);
break;
case 7:
printf("%s", pinyin[7]);
break;
case 8:
printf("%s", pinyin[8]);
break;
case 9:
printf("%s", pinyin[9]);
break;
default:
break;
}
}
int main()
{
int sum = 0, p = 0, q;
char a[101];
gets_s(a);
for (int i = 0; i < strlen(a); i++)
{
sum += a[i] - 48;
}
q = sum;
for (; q > 0; p++)
{
q /= 10;
}
if (p)
{
for (int i = 0; i < p - 1; i++)
{
int j = sum / (int)pow(10.0, (double)(p - i - 1)) % 10;
display(j);
printf(" ");
}
int j = sum / (int)pow(10.0, 0) % 10;
display(j);
}
return 0;
}
1011
这道题没有什么难度,就是要注意数据类型的长度
long与int型数据的区别:
-
32位编译系统:int占四字节,与long相同。
-
64位编译系统:int占四字节,long占8字节,long数据范围变为:-2^63~2^63-1
#include<iostream>
using namespace std;
int main()
{
int n, i = 1;
cin >> n;
long A, B, C;
while (n--) {
cin >> A >> B >> C;
cout << "Case #" << i << ": ";
if (A + B > C)
cout << "true" << endl;
else
cout << "false" << endl;
i++;
}
return 0;
}
尴尬........