c语言 输入一行数据
时间: 2024-06-08 21:06:40 浏览: 67
在C语言中,可以使用以下代码来实现输入一行数据并统计其中的英文字母、空格、数字和其他字符的个数,并将其中的数字按顺序输出:
#include <stdio.h>
#include <string.h>
int main() {
char c[50], d[50];
int A, B, C, D, i, k, n;
A = B = C = D = 0;
k = 0;
printf("请输入一串字符:");
gets(c);
n = strlen(c);
for (i = 0; i < n; i++) {
if (c[i] >= 'a' && c[i] <= 'z' || c[i] >= 'A' && c[i] <= 'Z') {
A++;
} else if (c[i] == ' ') {
B++;
} else if (c[i] >= '0' && c[i] <= '9') {
C++;
} else {
D++;
}
}
printf("字母数:%d\n空格数:%d\n数字数:%d\n其他字符:%d\n", A, B, C, D);
printf("该字符串中的数字为:");
for (i = 0; i < n; i++) {
if (c[i] >= '0' && c[i] <= '9') {
printf("%c", c[i]);
d[k] = c[i];
k++;
}
}
// 排序输出数字
for (i = 0; i < k - 1; i++) {
for (j = 0; j < k - i - 1; j++) {
if (d[j] > d[j + 1]) {
temp = d[j];
d[j] = d[j + 1];
d[j + 1] = temp;
}
}
}
printf("\n按顺序输出的数字为:");
for (i = 0; i < k; i++) {
printf("%c", d[i]);
}
return 0;
}
这段代码会先提示用户输入一串字符,然后通过循环遍历这个字符串,根据字符的不同类型来统计字母数、空格数、数字数和其他字符数。然后,它会将其中的数字按顺序存入数组d中,并通过冒泡排序算法对数字进行排序,最后将排序后的数字输出。
阅读全文