C中的字符串识别问题

liuzq133 2007-02-10 01:08:23
现在要编写一个程序,统计输入的一行字符中字母、数字以及空格的个数,我使用字符串数组来接受输入,可是这个字符串数组一遇到空格字符就认为输入结束了,但是该空格字符后面仍然有字符输入,请问怎样解决这个问题
...全文
412 8 打赏 收藏 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
xyjchinese 2007-02-12
  • 打赏
  • 举报
回复
用gets()
或者
char chStringByScanf[20];
scanf("%[^/n]",chStringByScanf);
printf("String: %s/n",chStringByScanf);
Silent_Spring 2007-02-11
  • 打赏
  • 举报
回复
lex
LuGuangbO 2007-02-11
  • 打赏
  • 举报
回复
那我就不知道了
我没学C++
在学C
呵呵 你问问其他人吧
liuzq133 2007-02-11
  • 打赏
  • 举报
回复
上面的使用C中的标准输入输出函数做的,但是换成了C++的cin好像就不行了,也就是说scanf("%c",&c);不能换成cin >> c,不知道为什么
LuGuangbO 2007-02-10
  • 打赏
  • 举报
回复
#include <stdio.h>
#include <ctype.h>
int main(void)
{
char ch;
int ct_alpha=0,ct_space=0,ct_digit=0 ;
printf("Enter string:\n") ;
while(scanf("%c",&ch),ch!='\n')
{ if(isalpha(ch)) ct_alpha++ ; /*统计字母*/
if(isdigit(ch)) ct_digit++ ; /*统计数字*/
if(ch==' ') ct_space++ ; /*统计空格*/
}
printf("Letter=%d,Digit=%d,Space=%d\n",ct_alpha,ct_digit,at_space) ;
return 0;
}
Immortality_HeeRo 2007-02-10
  • 打赏
  • 举报
回复
可以用gets()
takecareofmyself 2007-02-10
  • 打赏
  • 举报
回复
由于scanf("%s")遇到空格、制表、回车就会结束,因此,改一下就行了

int main()
{
char c;
int alphaCount = 0, spaceCount = 0, numberCount = 0;
printf("Input a string:\n");
while( 1 )
{
scanf("%c",&c);
if( c == '\n' )
break;
if( ( c >= 'a' && c <= 'z' ) || ( c >= 'A' && c <= 'Z') )
alphaCount++;
if( c >= '0' && c <= '9' )
numberCount++;
if( c == ' ' )
spaceCount++;
}
printf("\n");
printf("alpha:%d space:%d number:%d",alphaCount,spaceCount,numberCount);
return 0;
}
飞驰的青蛙 2007-02-10
  • 打赏
  • 举报
回复
cin.get(str,256);
termux-app_v0.118.3+github-debug_arm64-v8a.apk是专为安卓arm64-v8a架构设备打造的开源终端模拟器安装包,为GitHub编译的debug调试版本,适配主流64位安卓手机、平板设备。该工具最大的核心优势是无需设备ROOT权限,即可在安卓系统中搭建完整且独立的轻量化Linux运行环境,打破移动端系统限制,为移动开发、远程运维、程序调试提供便携的终端工作场景,区别于普通正式版,该调试版本保留完整运行日志,适配开发调试场景。 该软件内置专属Linux包管理体系,搭载pkg包管理器,支持在线安装Python、Git、SSH、编译工具链、网络工具等海量开源组件,完整复刻电脑端Linux常用命令操作,可直接在移动端执行代码编译、脚本运行、网络测试、文件处理等操作。软件采用独立沙盒目录运行,所有程序、配置文件均隔离存储,不会篡改、污染安卓原生系统文件,保障设备系统安全稳定。 在实用功能上,软件支持双向SSH远程运维,既可作为客户端远程连接云服务器、本地主机完成运维工作,也可搭建本地服务端实现电脑反向连接移动端终端。同时支持自定义Shell脚本、自动化任务编写,能够实现文件批量处理、定时任务执行等功能,适配轻量化开发需求。适配手机本地存储读写,可自由调用设备本地文件,实现数据互通处理。 本次arm64架构版本针对64位移动处理器深度优化,运行流畅、资源占用低,后台驻留稳定性更强。Debug调试版本可全程记录程序运行日志、报错信息,方便开发者排查程序异常、调试代码漏洞,是开发测试专用版本。该软件广泛应用于移动轻量开发、便携式服务器运维、网络环境调试等合法场景,是移动端高效的便携Linux终端工具。
本资源提供全国范围2026年水系(线+面)空间分布数据,系统整理全国范围内河流、沟渠、水道、湖泊、水库等水系要素,包含可编辑MXD工程文件、标准Shapefile矢量文件以及标准成图TIF文件,可用于水文地理、水资源管理、生态环境及自然灾害等相关研究。 原始数据来源是Open Street Map(OSM),水系类型包括江、河、溪、水域、水库、河岸、河堤等等,可在shp文件属性表中自行查阅。 数据包含水系线和水系面两类矢量数据。线状水系用于表达河流、沟渠及其他线性水体的空间位置和形态;面状水系用于表达湖泊、水库及其他具有一定面积的水体分布,可较直观地反映全国范围河湖水系的空间格局。 标准Shapefile文件支持空间查询、属性编辑、长度与面积统计、河网密度分析、缓冲区分析及专题制图,可与行政区划、DEM、土地利用、人口、降水及灾害数据进行空间叠加。资源配套提供可编辑MXD工程文件,完成水系图层组织、符号配置、标注及地图版式设置,便于用户直接在ArcGIS中编辑和制图。 该数据可广泛应用于全国范围水资源管理、河湖空间格局研究、洪涝灾害分析、生态环境评价、流域研究及国土空间规划等领域,可为区域水系特征分析及相关GIS空间研究提供基础数据支撑。 同时提供标准成图TIF文件,可直接用于科研论文、项目报告、专题地图及教学展示。整体数据具有线面数据配套、空间分布直观、格式完整、GIS兼容性好等特点,可满足全国范围水系空间分析、专题制图及科研应用需求。
数据集可视化效果可参见下方展示。 【数据集概况】 · 检测类别(中文):[空(empty), 满(full), 半(half)] · 训练集:1884 张 · 验证集:531 张 · 测试集:271 张 · 总计:2686 张 该数据集聚焦于农业收获与品质评估场景,专门针对谷物(如小麦、水稻等)穗部的填充状态进行精细化识别,其定位在于为智能农机装备提供高精度的视觉感知支持,助力实现田间作物成熟度的自动化判别与分级管理,具有显著的农业智能化应用价值。... 【训练曲线与评估图】 【模型训练配置】 参数 | 值 模型 | yolo26n 训练轮数 | 100 epochs 输入尺寸 | 640x640 批次大小 | 24 优化器 | auto 初始学习率 | 0.01 训练设备 【关键指标汇总】 训练了 78 个 epoch,最终轮指标: 指标 | 数值 mAP50 | **0.8118** mAP50-95 | 0.4474 Precision | 0.7709 Recall | 0.7728 train/box_loss | 1.4578 train/cls_loss | 0.7399 val/box_loss | 1.4992 val/cls_loss | 0.7020 【训练过程分析】 78 轮训练后 mAP50 为 0.8118,模型基本收敛但还有提升余地。Loss 曲线下降正常,后期趋于平缓。mAP50-95 为 0.4474,和 mAP50 差距 0.36,定位精度是主要短板。 【模型性能评估】 Precision 0.7709、Recall 0.7728,召回高于精度,存在一定误检。多类检测中,不同类别性能可能有差异,需关注难例类别的表现。 【预测效果展示】 验证集预测效果一般,大部分目标能被检出,但存在部分漏检或框边缘贴合度不足的情况。 【改进建议】 1...

33,315

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧