c语言每日一练6

编写一个迷你HTML浏览器。浏览器只显示输入文件的内容,并且只需要识别HTML标记:<br>是换行,<hr>是水平线。程序应该将所有的制表符、空格、换行符当做一个空格,每次输出不超过80个字符。

输入格式:

输入是浏览器所需要显示的文本。文件包含词和HTML标记,中间有一个或者多个空格,制表符和换行符。

词是一串字母,数字和标点。每个词不超过81个字符且不包含"<"">"Html标签只有<br><hr>

输出格式:

对输入的一个单词,如果在当前行输出时不超过80个字符,那么就直接输出,否侧在下一行输出。

如果输入的是<br>, 则换行。

如果输入的是<hr>,则换行,如果恰好位于新行的开头就不必换行,输出80个“-”字符再换行。

最后是一个空行。

#include<stdio.h>

#include<string.h>

int main()

{

int count=0;

char word[81];

while(scanf("%s",word)!=EOF)

{

//处理<hr>标记

if(strcmp(word,"<hr>")==0)

{

//如果不是新行,则回车

if(count!=0) printf("\n");

int i; 

for(i=0;i<80;i++) printf("-");

//清除计数器

count=0;

}

//处理<br>标记

else if(strcmp(word,"<br>")==0)

{

//回车并清除计数器

printf("\n");

count=0;

}

else{

//输出当前单词会超过80个字符

if(count+strlen(word)+(count==0?0:1)>80)

{

printf("\n%s",word);

count=strlen(word);

}

else{

//改单词能够在当前行输出

if(count!=0) printf(" ");

printf("%s",word);

count+=strlen(word)+1;

}

}

}

printf("\n");

return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值