some输入的读入方式

Posted on 2021-09-20 11:15  chen—  阅读(36)  评论(0)    收藏  举报

例1.

输入

(11,LL)  (7,LLL)  (8,R)  (5,)  (4, L)  ()

(3,L)  (4,R)  ()

—— 二叉树的结点编号

 有多组输入且每组输入以"()"结束

读入方式:

char s[MAXN];
while(1){
    if(scanf("%s",s) != 1) return false;    // 整个输入结束 
    if(!strcmp(s,"()"))    break;           // 读到结束标志,退出循环 
    int v;
    sscanf(&s[1],"%d",&v);                  // 将int值读入 
    所用函数f (v,strchr(s,',')+1);           
} 
// strchr(s,',') 返回字符串中从左往右的第一个字符","的指针
// eg. s = "(11,LL)"
//     v = 11
//     strchr(s,',')+1 对应的字符串为"LL)"