C语言的输入输出-几个函数的使用比较
发布日期:2021-06-29 04:56:25 浏览次数:2 分类:技术文章

本文共 875 字,大约阅读时间需要 2 分钟。

1、gets、puts 函数可以一整行的字母输入输出%s,字符数组,无论中间有没有空格,按完enter就可以了;

2、scanf比较灵活,如果是单个字符%c就可以,一个字符的输入,但是在循环输入中,有空格或者换行符也会被当做字符输入的。所以中间不能有空格出现;

3、对于scanf函数来说,如果是字符数组的输入%s的出现,则如果中间出现空格或者换行符都会被当做结束符,这与gets是不同的,gets是遇到换行符就结束了。用gets输入的时间比用scanf要快。

4、输入一段连续用都用逗号或者空格隔开的数字的方法是,前提是建立了一个比较大的数组: 

while(1)

       {

          scanf("%d",&n[i++]);

              if(getchar()=='\n')

              {

                  break;

              }

       }

数组大小未知的情况则可以这么做:

只能用链表才能行。

头插法:

typedef struct note

{

    int value;

       struct note* next;

}link,*plink;

 

int main()

{

    int i=0,j=0;

       plink head=(plink)malloc(sizeof(link));

       head->value=0;

       head->next=NULL;

       while(1)

       {

           plinknewLink=(plink)malloc(sizeof(link));

              scanf("%d",&(newLink->value));

        newLink->next=head->next;

              head->next=newLink;

              if(getchar()=='\n')

              {

                  break;

              }

              i++;

       }

       while(head->next!=NULL)

       {

           head=head->next;

              printf("%d ",head->value);

       }

       return 0;

}

清空链表需要两个指针指向头指针:

       p=head->next;

       q=head->next;

       while(q!=NULL)

       {

           q=q->next;

              free(p);

              p=q;

       }

转载地址:https://blog.csdn.net/zhang_yin_liang/article/details/52015622 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:分配内存的问题
下一篇:参考任哲的《嵌入式实时操作系统μC_OS-II原理及应用》,对UCOS的任务调度做了下整理。

发表评论

最新留言

第一次来,支持一个
[***.219.124.196]2024年04月17日 07时37分28秒