1 条题解
-
0
C :
#include<stdio.h> #include<string.h> int main() { char q[510],a[510][510]; int i,j=0,k=0,s=0; gets(q); for(i=0;i<strlen(q);i++) { if(!(q[i]>='0'&&q[i]<='9')) continue; a[k][j++]=q[i]; if(!(q[i+1]>='0'&&q[i+1]<='9')) { a[k][j]=0; j=0; k++; continue; } } printf("%d\n",k); for(i=0;i<k;i++) { printf("%s ",a[i]); } printf("\n"); return 0; }
C++ :
#include <stdio.h> int main() { int i, current, count, vals[500]; char ch, lastch; count = 0; /* 使用current变量标志当前是否有没有处理完毕的整数 -1表示没有,否则表示当前整数已处理的值 */ current = -1; while ((ch = getchar()) != '\n') { if ('0' <= ch && ch <= '9') { if (current == -1) { current = ch - '0'; } else { current = current * 10 + (ch - '0'); } } else { if (current != -1) { vals[count] = current; count++; current = -1; } } } /* 不要忘记在读取完整个字符串之后判断一下是否还有 未处理完毕的整数 */ if (current != -1) { vals[count] = current; count++; current = -1; } printf("%d\n", count); for (i = 0;i < count;i++) printf("%d ", vals[i]); printf("\n"); return 0; }
- 1
信息
- ID
- 1372
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- (无)
- 标签
- 递交数
- 0
- 已通过
- 0
- 上传者