| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 717 人关注过本帖
标题:接收一组数据 形式%d%s%d ,其中%s可以由1个或2个字符组成,如果同时接受, ...
取消只看楼主 加入收藏
oszc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:111
专家分:154
注 册:2011-4-15
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:1 
接收一组数据 形式%d%s%d ,其中%s可以由1个或2个字符组成,如果同时接受,怎么做?
比如要接受一个库存记录:

记录号码    工具名称        数量  
1            Tom Curious    5

如果用 scanf("%d%s%d") 显然行不通,各位兄弟有什么好办法?
搜索更多相关主题的帖子: 兄弟 
2011-06-05 23:18
oszc
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:111
专家分:154
注 册:2011-4-15
收藏
得分:0 
以下是引用fragileeye在2011-6-6 00:07:20的发言:

#include <stdio.h>
int main(int argc, char *argv[])
{
    int tool, ct;
    char name[20];
    scanf("%d\n%[^\n]%d", &tool, name, &ct);
    printf("tool = %d\n",tool);
    printf("name = %s\n", name);
    printf("ct = %d\n", ct);
    return 0;
}
/*input:(如果用scanf就得每次输入回车,建议用fgets())
1
Tom Curious   
5
*/

/*output:
tool = 1
name = Tom Curious
ct = 5
*/

能否给无回车的版本,我找了fgets()的例子,也没研究出来
2011-06-06 02:21
快速回复:接收一组数据 形式%d%s%d ,其中%s可以由1个或2个字符组成,如果同时接 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025097 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved