C语言程序设计实验报告

C语言程序设计实验报告

1       实验目的

1.熟练掌握while语句、do-while语句和for语句及使用方法,掌握三种循环控制语句的循环过程以及循环结构的嵌套,利用三种循环语句实现循环结构;

2.掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧;

3.进一步学习调试程序,掌握语法错误和逻辑的检查方法。

2       实验内容

(1)

输出1000以内最大的10个素数以及它们的和.

要求:

①由于偶数不是素数,可以不对偶数进行处理;

     ②输出的形式为:素数1+素数2+...+素数10=总和值.

3       算法描述流程图

主函数流程图:

4       源程序

#include<stdio.h>

main()

{

       int i,j,sum=0,count=0;   

for(i=1000;i>1;i--)                     /*由1000开始依次取数进行检验素数验算*/

       {

              for(j=2;j<i;j++)                    /*由2开始取被除数进行内层循环*/

                     if(i%j==0)

                            break;                    /*不是素数跳出内层循环*/

                     if(i==j)                       /*判断是否为素数*/

                     {

                            count++;                  /*计量素数序列*/

                            sum+=i;                   /*素数求和*/

                            if(count<10)

                                   printf("%d+",i);         /*输出最大的九个素数*/

                            else

                            {

                                   printf("%d=%d\n",i,sum);  /*输出第十个素数及素数和*/

                                   break;                  /*程序结束*/

                            }

                     }

       }

}

6       运行结果

(2)

    输入一串字符串(以回车键结束),统计其中数字、大写字母、小写字母以及其他字符的个数。

要求:

①通过键盘输入字符串;

②在输入字符串之前给出相应提示;

③按照数字、大写字母、小写字母和其他字符数的顺序输出结果。

5       源程序

#include <stdio.h>

main()

{

       char c;

       int  Sletters=0,space=0,Bletters=0,digit=0,others=0;

       printf("please input some characters\n");

       while((c=getchar())!='\n')                         /*当输入回车时跳出循环*/

       {

              if(c>='a'&&c<='z')                         

                     Sletters++;                             /*计量小写字母*/

              else if(c>='A'&&c<='Z')

                     Bletters++;                             /*计量大写字母*/

              else if(c==' ')

                     space++;                               /*计量空格数*/

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

                     digit++;                                /*计量数字数*/

              else

                     others++;                               /*计量其他字符数*/

       }

       printf("all in all:Schar=%d,Bchar=%d,space=%d,digit=%d,others=%d\n",Sletters,Bletters,space,digit,others);

}                                                  /*输出结果*/

7 运行结果

8       实验心得

通过该实验,我对分支(if,if``else,if```else if```)和循环结构(for,while,do```while)的几种用法更加熟练,并掌握了函数的定义与调用,参数说明以及返回值使用。并对C程序设计有了总体的认识。

相关推荐