永发信息网

c语言将文件file.txt 中大写英文字母显示在显示屏上

答案:4  悬赏:0  手机版
解决时间 2021-02-25 17:04
c语言将文件file.txt 中大写英文字母显示在显示屏上
最佳答案
如果文件不是太大的话可以将文件一次性读取进一个缓冲区里
如果文件比较大的话则可以分片多次进行读取
然后对读取的数据遍历扫描
将所有在A~Z的数据打印出来(包括A和Z)
或者也可以使用isupper函数判断是否为大写字母
同样的也可以一个字节一个字节地读取
但这样效率会有所下降



下面是一个简单的代码
#include 
#include 

int main(int argc,char **argv)
{
    FILE *fp;
    char buf[512];
    size_t n;
    int i;

    if((fp=fopen(argv[1],"rb")) == NULL)
    {
        printf("打开文件出错!
");
        return -1;
    }

    while(!feof(fp))
    {
        n=fread(buf,sizeof(char),sizeof(buf),fp);

        for(i=0;i < n;++i)
            if(isupper(buf[i]))
                putchar(buf[i]);
    }

    fclose(fp);

    return 0;
}命令行的第一参数为file.txt就可以将file.txt中所有的大字字母打印出来

全部回答
你在考试吗,不会是辽工大的我们也在帮同学查呢哈哈
先用fopen和fgets把文件里的字母取出来,再判断一下输出,哪里不会。
#include

main(){
FILE *fp;
int c;
fp=fopen("file.txt","r");
if (!fp){
printf("Can not open file.txt\n");return 0;
};
while(1){
c=fgetc(fp);
if (feof(fp)) break;
if (c>='A' && c<='Z')putchar(c);
}
fclose(fp);
return 0;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
qq头像中一个星星一个月亮是什么意思
大水田乡我想知道这个在什么地方
三元摩配地址在什么地方,想过去办事
企业初始排污权核定是什么意思
如果你对一个女孩说为她改变,她对你说做你自
sleep()和wait()有什么区别
日本出口中国的E-2 1000型新干线与700系列,80
清真食品市场地址在哪,我要去那里办事
北斗宫街地址有知道的么?有点事想过去
杏村怎么去啊,有知道地址的么
结婚犯杨公是什么意思
从油坊桥去板桥雄风路117号怎么去
金色8里城G区在哪里啊,我有事要去这个地方
512是啥意思
陈记亳州鸭煲这个地址在什么地方,我要处理点
推荐资讯
华为S3300 vlan配置
WOW 海浪翡翠 哪里出的
资料管理员英语怎么说
正单桥货车的极限载重是多少吨呀!?
把下列各数填在相应的大括号里:正数集合:﹛
我是男生。头发总是左边高右边塌,我习惯睡右
张裕陶瓷我想知道这个在什么地方
你好!我想为男朋友去世的父亲去寺庙祈福,我
量表的心理测量学特征有()
美国队长和超人比哪个厉害
配制溶液出现问题如何解决 加蒸馏水时不慎超
怎样去爱一个和我分手的人
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?