收获——ungetc()函数

    xiaoxiao2022-07-14  161

    学习小发现: 今天练习了C语言的几个题目,其中有一个关于求和的问题,要求实现输入多组数据a[]、b[],数据数未知,根据输入者输入的数据数而定,然后实现输出未知组数的数据和。此问题的核心问题就是怎样实现输入多组数据(不定个数)。

    方法一:运用C语言中的EOF(用C语言处理多组数据,一把用ctrl+z结束,ctrl+z就是eof)

    while(scanf("%d%d",&a[i],&b[i++])!=EOF);

    方法二:

    #includde<stdio.h> int main() { int a[100];//存储数据 int b[100];//存储数据 int number=0;//计数器char c;//判断是否输入完毕 int i=0;c=getchar();//接收数据 while(1) {ungetc(c,stdin);//将一个字符退回到输入流中 scanf("%d",&a[number]); scanf("%d",&b[number++]); c=getchar();if(c=='\n') { c=getchar(); if(c=='\n') break; } } for(i;i<number;i++)     printf("%d",a[i]+b[i]); printf("\n"); return 0; }

    这里主要介绍一下ungetc这个函数,今天最大的收获就是认识了解到了ungetc这个函数。

    用法:(可直接调用)

    作用:将一个字符退回到输入流中、

    格式:int ungetc(char c,FILE *stream);c 要写入的字符,stream文件流指针。调用举例ungetc(c,stdin);、

    输出参数:字符c——操作成功,EOF——操作失败

     

     

    最新回复(0)