题目描述
从键盘接收一个字符串,由数字、大小写字母和空格组成。程序功能为去掉字符串中的所有数字,最后输出变更后的字符串。注意,并列的空格需要缩减为1个空格。比如键盘输入如下:
(1)能够从键盘正确接收字符串;(2分)
(2)能够去除数字;(4分)
(3)能够合并并列的空格;(4分)
(4)能够输出变更后的字符串;(2分)
(5)程序能够全面正确运行;(3分)
源代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| #include <stdio.h>
void input(char a[]) { printf("Enter a string: "); fgets(a, 100, stdin); }
void print(char a[]) { printf("%s\n", a); }
#include <stdio.h>
void delete(char a[]) { int i, j = 0; int spaceFlag = 0; for (i = 0; a[i] != '\0'; i++) { if ((a[i] < '0' || a[i] > '9') && a[i] != ' ') { a[j++] = a[i]; spaceFlag = 0; } else if (a[i] == ' ') { if (!spaceFlag) { a[j++] = ' '; spaceFlag = 1; } } } a[j] = '\0'; }
int main() { char array[100];
printf("Enter a string: "); fgets(array, 100, stdin);
printf("Original string: %s\n", array);
delete(array); printf("After deleting and merging: %s\n", array);
return 0; }
|