c++|c 在刷题时经常会遇到系统没有提供输入字符的长度,这个时候就没法使用循环。
我们通常使用EOF进行判断系统是否输入完了。
EOF的结束,在windows输入完数据之后 需要 ctrl+z 然后 enter才能实现。
code
属于一个字符串,其中以空格隔开。
方法1
int num=0;
char ans[100][100];
while(scanf("%s",ans[num])!= EOF){
num++
}
方法2
tring s[81];
int num=0;
while(cin >> s[num]){
num++;
}
//如果是cin>>s[num++],最后一个字符没输入的时候,Num会++,
方法3
c++竟然没有 split函数,这也太 。。。不方便了。
#include <string.h>
#include <stdio.h>
#include <iostream>
int main(){
char s[1000] ;
getline(cin,s);
const char *sep = ",*"; //可按多個字符來分割
char *p;
p = strtok(s, sep);
while(p){
printf("%s ", p);
p = strtok(NULL, sep);
}
printf("\n");
return 0;
}
//輸出: a b c d