
using namespace std
#define m 45
#define n 100
#define t 10
int main()
{
FILE *fp
char filename[20],c[n]
printf("Type the file name which you want to open:")
scanf("%s",&filename)
fp=fopen(filename,"r+")/*以r-只读方式打开指定文件*/
if((fp=fopen(filename,"r"))==NULL) /*文件不存在输出错误*/
{cout<<"文件不存在!"<<endlexit(-1)}
cout<<"文件中内容如下:"<<endl
for(int j=0!feof(fp)j++){
c[j]=fgetc(fp)//从流中读取字符
}
char keyword[m][t]={"include","int","string","cout","cin","auto","break","case","char","class","const",
"continue","default","delete","do","double","else","enum","extern","float","for","friend","if","inline",
"int","long","new","operator","private","protected","public","register","return","short","sizeof","static",
"struct","switch","template","this","typedef","union","virtual","void","while"}//关键字数组
char a[t],*p=c,*q=a,*s=a
bool w=0,r=0
int i=0
for(i=0i<10i++)a[i]=NULL//初始化临时数组
while (*p !=NULL){
q=s=a
if((*p>='a'&&*p<='z')||(*p>='A'&&*p<='Z')||*p=='_'){//识别标识符
*q=*pp++q++
while ((*p>='a'&&*p<='z')||(*p>='A'&&*p<='Z')||(*p>='0'&&*p<='9')||*p=='_'){
*q=*pp++q++
}
for(i=0i<mi++)if(strcmp(keyword[i],a)==0){r=1break}
if(r==1){cout<<"关键字为:"r=0}
else cout<<"标识符为:"
while(s!=q){
cout<<*s
s++
}
cout<<endl
for(i=0i<ti++)a[i]=NULL
}
else if(*p=='\''){//识辩盯缺别字符常量
p++
while(*p!='\''){
*q=*p
p++
q++
}
cout<<"字符常量为:"
while(s!=q){
cout<<*s
s++
}
cout<<endl
for(i=0i<ti++)a[i]=NULL
p++
}
else if(*p=='\"'){//识别字符串常量
p++
while(*p!='\"'){
*q=*p
p++
q++
}
cout<<"字符串常量为:"
while(s!=q){
cout<携辩<*s
s++
}
cout<<endl
for(i=0i<ti++)a[i]=NULL
p++
}
else if(*p=='+'||*p=='-'||*p=='*'||*p=='/'||*p=='='||*p=='%'||*p=='/'){//识别运算符
cout<<"运算符为:"<<*p
cout<<endl
p++
}
else if(*p==''||*p==','){//识别分解符
cout<<"分界符为:"<<*p
cout<<则升endl
p++
}
else if(*p>='0'&&*p<='9'){
s=q=a
*q=*pp++q++
while(*p>='0'&&*p<='9'||*p=='.'){
*q=*pp++q++
}
while(s!=q){
if(*s=='.'){w=1break}//识别实型常量
s++
}
s=a
if(w ==1){
cout<<"实型常量为:"
while(s!=q){
cout<<*s
s++
}
for(i=0i<ti++)a[i]=NULL
}
else {
cout<<"整型常量为:"
while(s!=q){//识别整型常量
cout<<*s
s++
}
for(i=0i<ti++)a[i]=NULL
}
cout<<endl
}
else p++
}
return 0
}
很简单的东西,你自己学学就会了。
输入输出是针对你的程序来说的。当你需要数据模铅时,你就构造一个输入流(对应服务器、文件系统或别的数谈早据源就是输出流),将数据“输入到你的程序”。当你需要输出数据时(如保存程序结果),你就旦侍好构造一个输出流。
参考以下程序:
import java.io.*
public class In
{
public static void main(String [] args)throws Exception
{
BufferedReader br=new BufferedReader(new InputStreamReader(System.in))
String s=br.readLine()//IOException
if(s.trim().equals("5"))
System.out.println("正确!")
else
System.out.println("错误!")
br.close()
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)