1条回答 默认 最新
- LYSnowy 2022-02-09 10:46关注
你输入的是字符,不能用%d读取,必须用%c,读取字符,而且应该是字符数组
#include <stdio.h> #define N 10 int main() { int i, l = 0, b = 0, d = 0, o = 0; char a[N]; gets_s(a); for (int i = 0; i < N; i++) { if (a[i] >= 65 && a[i] <= 90 || a[i] >= 97 && a[i] <= 122) { l++; } else if (a[i] == 32) { b++; } else if (a[i] >= 48 && a[i] <= 57) { d++; } else { o++; } } printf("letter=%d, blank=%d, digit=%d, other=%d", l, b, d, o); return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用
悬赏问题
- ¥20 delta降尺度方法,未来数据怎么降尺度
- ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
- ¥15 高德地图点聚合中Marker的位置无法实时更新
- ¥15 DIFY API Endpoint 问题。
- ¥20 sub地址DHCP问题
- ¥15 delta降尺度计算的一些细节,有偿
- ¥15 Arduino红外遥控代码有问题
- ¥15 数值计算离散正交多项式
- ¥30 数值计算均差系数编程
- ¥15 redis-full-check比较 两个集群的数据出错