新手来博客,请多多指教。

作为一名大二的学生,在大一的时候学习了C语言。但是现在已经忘记的差不多了,自己买了一本《C程序设计语言》,因为要参加一个C语言的比赛。现在想在博客中重新学习一下C语言。

 

C语言程序,都是由函数和变量组成的。

 

char 字符  short 短整型  long  长整型  double  双精度浮点

#define M N 把符号定义为一个特定的字符串,在结尾没有分号。

出现边界条件时,while语句与for语句有助于确保程序的合理性。

 

有关统计行数的程序

 

#include <stdio.h>

main()

{

           int c,n1=0;

           while((c=getchar())!=EOF)

               if(c=='\n')

                   ++n1;

           printf("%d\n",n1);

}

这个程序真的很简单,就是统计一下有多少个换行符,然后输出统计数就是行数了。

 

 

统计行数,单词数与字符数的程序

 

#include <stdio.h>

       #define  IN 1              //在单词内

      #define  OUT 0            //在单词外

main()

{

            int c,n1,nw,nc,state;                  //state是记录程序当前是否正位于一个单词内

            state=OUT;

            n1=nw=nc=0;

            while((c=getchar())!=EOF)

            {

                        ++nc;                   //统计字符数

                        if(c=='\n')

                              ++n1;            

                       if(c==' '||c=='\n'||c=='\t')

                              state==OUT;             //此时state不在单词内

                       else if (state==OUT)

                             {

                                      state==IN;     //state在单词中,并且单词数加1.

                                      ++nw;

                              }

               }

                printf("%d,%d,%d",n1,nw,nc);  //代表含义分别为行数,单词数,字符数。

}

 

 

这个程序是运用数组来统计数字,空白字符,其他字符出现的次数

#include <stdio.h>

main()

{
          int c,i,nwhite,nother;

          int ndigit[10]

          nwhite=nother=0;

          for(i=0;i<10;++i)

                ndigit[i]=0;

          while((c=getchar())!=EOF)

                if(c>='0'&&c<='9')

                       ++ndigit[c-'0']

                else if(c==' '||c=='\n'||c=='\t')

                        ++nwhite;

               else

                         ++nother;

               printf("digti=");

               for(i=0;i<10;++i)

                      printf("%d",ndigti[i]);

              printf(",white space=%d,other=%d\n",nwhite,nother);

}

虽然都是几个简单的小程序,但是我重新开始学嘛,对我来说难度还差不多的。

要是有哪位高手看出了我的错误,还望多多指教,谢谢大家啦。

转载于:https://www.cnblogs.com/guo-809264853/p/4340060.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值