精华内容
下载资源
问答
  • 语言程序设计实验报告 C 语言程序设计实验报告 C 语言程序设计实验报告 实验名称 计算出 1000 以内 10 个最大素数之和 实验目的 1熟练掌握 if if?else if ?else if 语句和 witch 语句格式及使用方法掌握 if 语句中的...
  • 实验操作是教学过程中理论联系实际的重要环节而实验报告的撰写又是 知识系统化的吸收和升华过程因此实验报告应该体现完整性规范性正 确性有效性现将实验报告撰写的有关内容说明如下 1 实验前按实验要求手写程序或...
  • 实验操作是教学过程中理论联系实际的重要环节 而实验报告的撰写又是知 识系统化的吸收和升华过程 因此实验报告应该体现完整性 规范性正确性 有效性现将实验报告撰写的有关内容说明如下 1 实验前按实验要求手写程序或...
  • 实用文档 课程设计报告 课程类别本科 课程名称程序设计基础 C语言 课程代号指导教师 银行 ATM自动取款机系统课程设计 姓名 学号 姓名 学号 姓名 学号 学院 班级 标准文案 实用文档 目 录 1. 课程设计内容 . 2. 课程...
  • MATLAB验报告 学院光电学院 班级073-1 姓名刘颖 学号200713503117 实验三选择结构程序设计 1.求分段函数的值 X + x 6, x 且 x 丰3 y=X2 _5x +6, 0 且 x# 2 及 x 孝 3 X x 1, 其他 用if语句实现分别输出 x=-5.0,-3.0,...
  • 华北科技学院计算机学院综合性实验 实 验 报 告 课程名称 程序设计语言(C) 实验学期 2011 至 2012 学年 第 二 学期 学生所在学院 建筑工程学院 年级 11级 专业班级 土木B112班 ...

    华北科技学院计算机学院综合性实验 实 验 报 告 课程名称 程序设计语言(C) 实验学期 2011 至 2012 学年 第 二 学期 学生所在学院 建筑工程学院 年级 11级 专业班级 土木B112班 学生姓名 季京伟 学号 201105024201 任课教师 张瑾 实验成绩 计算机学院制 实验报告须知 1、 学生上交实验报告时,必须为打印稿(A4纸)。页面空间不够,可以顺延。

    2、 学生应该填写的内容包括:封面相关栏目、实验地点、时间、目的、设备环境、内容、结果及分析等。

    3、 教师应该填写的内容包括:实验成绩、教师评价等。

    4、 教师根据本课程的《综合性实验指导单》中实验内容的要求,评定学生的综合性实验成绩 ;

    要求在该课程期末考试前将实验报告交给任课教师。综合性实验中,所涉及的程序,文档等在交实验报告前,拷贝给任课教师。任课教师统一刻录成光盘,与该课程的期末考试成绩一同上交到系里存档。

    5、 未尽事宜,请参考该课程的实验大纲和教学大纲。

    《 程序设计语言(C)》课程综合性实验报告 开课实验室:

    计算机基础实验室 2012 年 06 月 08 日 实验题目 基于数组和函数的成绩计算 一、实验目的 通过该实验把C语言中的几个主要知识(如:顺序结构、选择结构、循环结构、数组、函数等)得到综合应用。

    二、设备与环境 硬件:多媒体计算机 软件:Windows系列或DOS系列的操作系统、C语言 三、实验内容 程序 函数1 用于统计各科 的最低成绩 函数2 用于统计各科 的最高成绩 函数3 用于计算各科 成绩平均数 主函数 用于输入成绩、 调用函数以及 成绩的输出 ...

    == 试读已结束,如需继续阅读敬请充值会员 ==

    本站文章均为原创投稿,仅供下载参考,付费用户可查看完整且有格式内容!

    (费用标准:38元/月,98元/年,微信支付秒开通!)

    升级为会员即可查阅全文 。如需要查阅全文,请

    免费注册

    登录会员

    7079f5ff82cfac0c452faa2c1f357d20.png

    773d5907648eeae6d32207c14e470447.png

    展开全文
  • 顺序程序设计(C语言实验报告)仲恺农业工程学院实验报告纸信息学院(院、系) 专业 班 C语言程序设计 课学号 姓名 实验日期 教师评定实验名称:顺序程序设计实验目的:(1)掌握C语言中使用最多的一种语句——赋值语句的...

    顺序程序设计(C语言实验报告)

    仲恺农业工程学院实验报告纸

    信息学院(院、系) 专业 班 C语言程序设计 课

    学号 姓名 实验日期 教师评定

    实验名称:顺序程序设计

    实验目的:

    (1)掌握C语言中使用最多的一种语句——赋值语句的使用方法。

    (2)掌握各种类型数据的输入输出方法。

    实验内容与总结:

    1、验证性实验

    (1)键盘输入与屏幕输出练习main()

    {

    char a,b;

    int c;

    scanf("%c%c%d",&a,&b,&c);

    printf("%c,%c,%d\n",a,b,c);

    }

    A)1 2 34 B)1,2,34

    C)’1’,’2’,34 D)12 34

    问题 2与上面程序的键盘输入相同的情况下,要使上面程序的输出语句在屏幕上显示1 2 34,则应修改程序中的哪条语句?怎样修改? printf("%c,%c,%d\n",a,b,c);”改为“printf("%c %c %d\n",a,b,c);”

    问题3要使上面程序的键盘输入数据格式为1,2,34,输出语句在屏幕上显示的结果也为1,2,34,则应修改程序中的哪条语句?怎样修改?scanf("%c%c%d",&a,&b,&c);”改为“scanf("%c,%c,%d",&a,&b,&c);”

    问题 4要使上面程序的键盘输入数据格式为1,2,34,而输出语句在屏幕上显示的结果为'1', '2',34,则应修改程序中的哪语句?怎样修改?scanf("%c%c%d",&a,&b,&c);

    printf("%c,%c,%d\n",a,b,c);

    改为:scanf("%c,%c,%d",&a,&b,&c);

    printf("'%c','%c',%d\n",a,b,c);

    注意事项:

    printf和scanf函数使用是要注意“空格”、“ ’”、“,”的添加。scanf需原样输入,printf函数会原样输出。

    2、编程练习

    (1) 设r=1.5,h=3.0,求圆周长、面积;圆球表面积、圆球体积;圆柱体积。——教材P89-4.8

    提示:圆球表面积=,圆球体积=

    程序如下:

    #include

    #define PI 3.1415926

    #define L 2*PI*r

    #define S PI*r*r

    #define SQ 4*PI*r*r

    #define VQ (4.0/3.0)*PI*r*r*r

    #define VZ PI*r*r*h

    void main()

    {

    float r,h;

    printf("输入圆半径r,圆柱高h:\n");

    scanf("%f,%f",&r,&h);

    printf("圆周长为:L=%6.2f\n",L);

    printf("圆面积为:S=%6.2f\n",S);

    printf("圆球表面积为:SQ=%6.2f\n",SQ);

    printf("圆球体积为:VQ=%6.2f\n",VQ);

    printf("圆柱体积为:VZ=%6.2f\n",VZ);

    }

    (1)程序编制要点:

    ①定义pi;

    ②计算公式的定义与调用;

    ③printf提示数据的输入。

    (2)该题目涉及的知识点和难点:

    ①宏定义;

    ②单精度浮点数float;

    ③scanf函数的使用;

    ④取商“/”。

    (2)输入一个华氏温度,输出摄氏温度。公式为:c=5/9(F-32)。——教材P89-4.9

    程序:

    #include

    #define C (5.0/9.0)*(f-32)

    void main()

    {

    float f;

    printf("输入一个华氏温度:f=");

    scanf("%f",&f);

    printf("输出的摄氏温度是:C=%5.2f\n",C);

    }

    (1)程序编制要点:

    ①公式的定义与调用;

    ②printf提示数据的输入。

    (2)该题目涉及的知识点和难点:

    ①宏定义;

    ②单精度浮点数float;

    ③scanf函数的使用;

    ④5和9要用实型表示,否则5/9值为0.

    程序代码和运行情况描述:

    程序代码的编译没多大问题,只是在操作时我出现了少许错误。一、在C语言中代码的输入与运行都要保持键盘直接输入状态,不能使用一些文字输入法输入。我在程序运行时就是用文字输入法输入,结果程序运行出错。二、取商是没有注意实型的表示,开始时数字的取商都表示成了4/3和5/9,结果编程练习(1)的部分结果与别人的有出入,编程练习(2)无论输入什么,运行结果都是0。把取商都改成4.0/3.0和5.0/9.0后,程序的运行就没出错了。

    在验证实验当中,pri

    展开全文
  • 郑州大学C语言实验报告

    千次阅读 2015-12-08 23:38:11
    zzu c 语言实验报告册总结 鉴于郑州大学c程序报告网上无完整答案,故将后面没有答案的部分补充,以供同学参考。for循环的使用 9.1 #include void main() { int m=3,n=5,s=1,k=1,i,l=1; for(n=1;n;n++) s=s*n; ...

    zzu c 语言实验报告册总结

        鉴于郑州大学c程序报告网上无完整答案,故将后面没有答案的部分补充,以供同学参考。
    
    • for循环的使用
     9.1
     #include<stdio.h>
    void main()
    {
        int m=3,n=5,s=1,k=1,i,l=1;
        for(n=1;n<=5;n++)
            s=s*n;
        for(m=1;m<=3;m++)
            k=k*m;
        for(i=1;i<=(5-3);i++)
            l=l*i;
        printf("%d",s/k/l);
    }
    • 数组的使用
     9.2
    #include<stdio.h>
    # define n 20
    void main()
    {
    int a[n],i,FS=0;float V;
    a[0]=1,a[1]=1;
    for(i=2;i<n;i++)
    a[i]=a[i-1]+a[i-2];
    for(i=0;i<n;i++)
    FS=FS+a[i];
    V=FS*1.0/n;
    printf("%d %f",FS,V);
    }
    • 函数的使用
     9.3
    #include<stdio.h>
    #include<math.h>
    # define n 10
    void main()
    { 
      double f(double x);
      double s(double x,double y,double h);
      double a=0,b=3.14159,di,sn=0,r[n+1];
      int i;
        di=(b-a)/n;
        r[0]=a;
      for(i=1;i<=n;i++)
            r[i]=r[i-1]+di;
        for(i=0;i<n;i++)
            sn=sn+s(f(r[i]),f(r[i+1]),di);
            printf("%0.3f",sn);
    }
    double f(double x)
        {double f;
        f=sin(2*x)+x;
        return(f);}
    double s(double x,double y,double h)
        {double s;
         s=(x+y)*h/2;
         return(s);}
    
    • break函数的使用
         9.4
    #include<stdio.h>
    void main()
    {   int judge(int m);
        int i=1,k;
        for(k=99;k>=1;k--)
        {if(judge(k))
           {printf("%d\n",k);i++;}
         if(i==4) break;}
    }
    int judge(int m)
        {int i,re=1;
        for(i=2;i<m;i++)
        if(m%i==0)
        {re=0;break;}
        return(re);} 
    
    • while循环的使用
        9.5
    #include<stdio.h>
    #include<math.h>
    void main()
    {
    double f(double x);
    double f1(double x);
    double a=1.0;
    do
    {a=a-f(a)/f1(a);}
    while (fabs(f(a))>1.0e-5);
    printf("%f",a);
    }
    
    
    double f(double x)
    {  double f;
       f=x*x*x*x*x+2*x*x*x-x*x+x+1;
       return(f);}
    double f1(double x)
    {  double f1;
       f1=5*x*x*x*x+6*x*x-2*x+1;
       return(f1);}
    • if函数的使用
       9.6
    #include<stdio.h>
    #define n1 100
    #define n2 200
    void main()
    {
        int i,s=0;
        for(i=n1;i<=n2;i++)
            if(i)
                s=s+i;
            printf("%d",s);
    }
    int judge(int m)
        {int i,re=1;
        for(i=2;i<m;i++)
        if(m%i==0)
        {re=0;break;}
        return(re);}
    • 元素的交换
        11.1
    #include<stdio.h>
    void main()
    {void swap(int *p1,int *p2);
    int a,b,c;
    scanf("%d%d%d",&a,&b,&c);
    if(a>b)
    swap(&a,&b);
    if(a>c)
    swap(&a,&c);
    if(b>c)
    swap(&b,&c);
    printf("%d %d %d",a,b,c);
    }
        void swap(int *p1,int *p2)
        {int temp;
        temp=*p1;*p1=*p2;*p2=temp;}
    • 调用键盘输入
        11.2
    #include<stdio.h>
    void main()
    {int n,i;
    float a[20];
    scanf("%d",&n);
        for(i=0;i<n;i++)
            scanf("%f",&a[i]);
         for(i=0;i<n;i++)
            printf("%5.2f  ",*(a+n-1-i));
    }
    • 指针的简单使用
    11.3
    #include<stdio.h>
    void main()
    {float a=3,b=2;
    float *p1,*p2;float temp;
    p1=&a;p2=&b;
    temp=*p1;*p1=*p2;*p2=temp;
    printf("%0.2f %0.2f",a,b);
    }
    • 字符串数组
    11.4
    #include<stdio.h>
    void main()
    {int n;
    char *p[]={"January","February","March","April","May",
    "June","July","August","September","October","November","December"};
    scanf("%d",&n);
    printf("%s\n",p[n-1]);
    }
    • 使用指针交换
    11.5
    #include<stdio.h>
    void main()
    {void swap(int *p1,int *p2);
    int i,j;
    int a[10]={653,29,6,78,222,2,827,8,2,99};
    for(i=0;i<=9;i++)
    for(j=i;j<=9;j++)
    if(a[i]<a[j])
    swap(&a[i],&a[j]);
    for(i=0;i<=9;i++)
    printf("%d\t",a[i]);
    }
    void swap(int *p1,int *p2)
        {int temp;
        temp=*p1;*p1=*p2;*p2=temp;}
    • 字符串命令gets()的使用
    11.6
    #include<stdio.h>
    void main()
    {
        char str[1000];char *p=str;int i;
        gets(str);
        printf("%s",p);
    }
    • strlen()的使用
    11.7
    #include<stdio.h>
    #include<string.h>
    void main()
    {
    char a[]="liuyangwangbadan   ";
    printf("%d",strlen(a));
    }
    • 字符比较命令的使用
    11.8
    #include<stdio.h>
    #include<string.h>
    #define m 100
    #define n 3
    void main()
    {
        char a[m],b[n],c[n];
        int i,num=0,d,j;
        gets(a);
        gets(b);//b[n]只能输入n-1个数,因为"\o",占了一个长度
        for(i=0;i<m-n;i++)
        {for(j=0;j<n-1;j++)
        {
            *(c+j)=*((a+i)+j);
        d=strcmp(b,c);
        if(d==0)
            num++;}
        }
            printf("%d\n",num);
    
    }
    • 二维数组的使用
    12.1
    #include<stdio.h>
    void main()
    {
        float a[2][3];int i,j;
        for(i=0;i<=1;i++)
            for(j=0;j<=2;j++)
                scanf("%f",&a[i][j]);
    for(i=0;i<=1;i++)
    {for(j=0;j<=2;j++)
            printf("%3.0f",a[i][j]);
            printf("\n");}
    }
    • 利用数组找最大值和最小值
    12.2
    #include<stdio.h>
    void main()
    {
        int a[3][6],max,min,i,j,maxi,maxj,mini,minj;
        for(i=0;i<=2;i++)
            for(j=0;j<=5;j++)
                scanf("%d",&a[i][j]);
            max=min=a[0][0];
    for(i=0;i<=2;i++)
    for(j=0;j<=5;j++)
    {if(a[i][j]>max)
        {
            max=a[i][j];maxi=i;maxj=j;
        }
        if(a[i][j]<min)
        {
            min=a[i][j];mini=i;minj=j;
        }
    }
        printf("%d %d %d\n%d %d %d\n",max,maxi,maxj,min,mini,minj);
    }
    • 求学生平均值和挑选满足条件的学生
    12.3
    #include<stdio.h>
    void main()
    {
        int a[3][4],s,i,j;double ave[3];
        for(i=0;i<=2;i++)
            for(j=0;j<=3;j++)
                scanf("%d",&a[i][j]);
        for(i=0;i<=2;i++)
        {{ s=0;
        for(j=0;j<=3;j++)
        s=s+a[i][j];}
        ave[i]=s/4.0;}
        printf("%5.2f,%5.2f,%5.2f",ave[0],ave[1],ave[2]);
         for(i=0;i<=2;i++)
         {for(j=0;j<=3;j++)
              if(a[i][j]<60)
              {printf("\n第%d个学生超过一门课程不及格\n",i+1);break;}
              }
    }
    • 条件表达式的使用
    12.4
    #include<stdio.h>
    void main()
    {   int *readd(int x,int y);
        *readd(9,11);
    printf("%d",readd(9,10));
    }
        int *readd(int x,int y)
        {int*p=&x;int*q=&y;
            return((x>y)?p:q);
        }
    • strcpy()函数的使用
        12.5
    #include<stdio.h>
    #include<string.h>
    void main()
    {  char a[5][10];char b[10]={'0','0','0','0','0'};int i;
    for(i=0;i<=4;i++)
    gets(a[i]);
    for(i=0;i<=4;i++)
    {if(strcmp(b,a[i])<0)
    strcpy(b,a[i]);}
    printf("%s",b);
    }
    
    • 文件的读写,我就都写在一块了哈。
    14.1
     在d盘根目录下右键单击新建一个名为“chengji”的文本文档输入如下数据并保存
    1001 zhangsan 78 90 89
    
    1002 lisi 99 88 77
    
    1003 wangwu 89 76 55
    
    1004 zhaoliu 53 55 44 
    14.2
    #include <stdio.h>
    
    #include <stdlib.h>
    
    #define  N  5
    
     main( )
    
    {
    
      FILE *fp;
    
      int num,sc1,sc2,sc3,score,i;
    
      char name[10];
    
      if((fp=fopen("d:\\chengji.txt","r"))==NULL)
    
      { printf("Error");
    
        exit(0);
    
      }//检验是否有数据
    
      for (i=1;i<=N;i++)
    
      { fscanf(fp,"%d%s%d%d%d\n",&num,name,&sc1,&sc2,&sc3);    score=sc1+sc2+sc3;
    
        printf("%6d%10s%6d%6d%6d%6d\n",num,name,sc1,sc2,sc3,score/3);//向fp指向的文件中
                                                                   //按格式读取数据
    
      }
    
      fclose(fp);}
    14.3
    14.4
    结构体不做要求。
    14.5
    14.5
    #include <stdio.h>
    
    #include <stdlib.h>
    
    void main( ) 
    
    {    
    
      FILE *fp1,*fp2; 
    
      char ch;
    
      if(( fp1=fopen("c:\\tc\\file4.c", "r"))==NULL) //以读文本文件方式打开原有文件
      { printf("Error");
    
        exit(0);
    
      }
    
    if(( fp2=fopen("c:\\tc\\file5.c", "w"))==NULL) //以写文本文件方式打开目标文件
    { printf("Error");
    
        exit(0);
    
      }
    
    ch=fgetc(fp1);
    
      while(ch!=EOF)
    
      { 
    
    fputc(ch,fp2);  //把该字符写入目标磁盘文件
    ch=fgetc(fp1);  //从原有磁盘文件中读一个字符
      }
    
    fclose(fp1);
    
    fclose(fp2);
    
    }
    #include<stdio.h>
    #include<stdlib.h>
    void main()
    {
        int a[100][5],b[100],i,j;FILE *fp;
        for(i=0;i<=99;i++)
            for(j=0;j<=4;j++)
                a[i][j]=(rand()%500+1);
            fp=fopen("D:\\1.0.txt","w+");
            for(i=0;i<=99;i++)
            {{for(j=0;j<=4;j++)
            fprintf(fp,"%d  ",a[i][j]);}
            fprintf(fp,"\n");}
            fclose(fp);
            if((fp=fopen("D:\\1.0.txt","r"))==NULL)
            {
                printf("cannot find what you need,please check it!");
                exit(0);
            }
    
            for(i=0;i<=99;i++)
            {int a=0,b=0,c=0,d=0,f=0;
            fscanf(fp,"%d%d%d%d%d",&a,&b,&c,&d,&f);
            printf("%d\t",b+c+d+f);}
            fclose(fp);
    }
    15.1
    #include<stdio.h>
    void main()
    {
        int i;
        for(i=2;i<=17;i++)
        {printf("%2d ",i);
        if((i-1)%4==0)
            printf("\n");}
    }
    

    最后,祝同学们逢考必过。


    展开全文
  • c语言6次上机总结.doc

    2020-05-06 22:34:56
    C语言程序设计 实验报告 班级 日期 学生姓名 学号 第 6 次上机 实验 文件实验 (一) 实验目的 1熟悉文本文件和二进制文件在磁盘中的存储方式 2熟练掌握流式文件的读写方法 (二) 实验内容及要求 1文件类型的程序验证 ...
  • 学院 管理科学与信息工程学院 班级 计算机 学号 _1401111633 姓名 张浩 程序作者 程光亮 ,张浩 语言程序设计课程 -----设计报告 课程设计的目的 1复习巩固 C 语言的基础知识进一步加深对 C语言的理解 和掌握 2为学生...
  • C语言编写的取款机程序,功能完善。很适合作为C语言入门学习的参考,也可作为课程设计参考
  • 实验总结 附录:从非实验楼环境提交代码 1. 实验要求1、代码风格规范:代码风格的原则:简明、易读、无二义性; 缩进、命名、注释等代码编排的风格规范; 《构建之法》4.1代码规范 高质量C++/C编程指南(林

    “软件工程(C编码实践篇)”实验报告
    实验二:命令行菜单小程序V1.0,具体要求参见视频
    程欣+《软件工程(C编码实践篇)》MOOC课程作业

    目录

    实验要求
    实验过程
    实验心得
    实验总结
    附录:从非实验楼环境提交代码
    1. 实验要求

    1、代码风格规范:

    代码风格的原则:简明、易读、无二义性;
    缩进、命名、注释等代码编排的风格规范;
    《构建之法》4.1代码规范
    高质量C++/C编程指南(林锐)
    2、具体要求(参照视频中的具体实验过程):

    实现一个命令行的菜单小程序,执行某个命令时调用一个特定的函数作为执行动作,实现的命令个数不少于8个;
    类似ftp的help目录或者bash的help目录;
    程序循环、接收用户的命令,如help、others等命令;
    可以广泛通用的命令行菜单子系统组件,可方便地定制而嵌入到其他系统;

    实验过程:
    1. 在GitHub上先建一个库lab2 ,然后clone到本地

    je-vie@jevie-virtual-machine:~$ cd Desktop/
    je-vie@jevie-virtual-machine:~/Desktop$ cd workspace/
    je-vie@jevie-virtual-machine:~/Desktop/workspace$ git clone https://github.com/Je-vie/lab2.git
    fatal: destination path 'lab2' already exists and is not an empty directory.
    je-vie@jevie-virtual-machine:~/Desktop/workspace$ cd ..
    je-vie@jevie-virtual-machine:~/Desktop$ git clone https://github.com/Je-vie/lab2.git
    Cloning into 'lab2'...
    remote: Counting objects: 3, done.
    remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
    Unpacking objects: 100% (3/3), done.
    Checking connectivity... done.
    
    je-vie@jevie-virtual-machine:~/Desktop$ cd lab2
    je-vie@jevie-virtual-machine:~/Desktop/lab2$ ls
    menu.c  README.md
    je-vie@jevie-virtual-machine:~/Desktop/lab2$ vi menu.c 

    2 编辑一个命令行小程序 代码如下:

    
    
        void monthDay()
        {
            char arr[][15] = {"January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"};
            int monthDay;
            printf("请输入数字1-12\n");
            scanf("%d", &monthDay);
            if (monthDay>=1 && monthDay<=12)
            {
                printf("%s\n", arr[monthDay-1]);
            }
            else
            {
                exit(0);
            }
        }
    
        void season()
        {
            char arr[][12] = {"Spring", "Summer", "Autumn", "Winter"};
            int season;
            printf("请输入数字1-4\n");
            scanf("%d", &season);
            if (season>=0 && season<=4)
            {
                printf("%s\n", arr[season-1]);
            }
            else
            {
                exit(0);
            }
        }
    
        void Ask()
        {
            printf("你可以询问如下问题\ninput 1 :询问星期的英文\ninput 2 :询问月份的英文\ninput 3 :询问季节的英文\ninput 0 :退出\n");
        }
    
        void JudgeAndOutput(int inputNumber)
        {
            if (inputNumber == 0)
            {
                exit(0);
            }
            else if(inputNumber == 1)
            {
                weekDay();
            }
            else if(inputNumber == 2)
            {
                monthDay();
            }
            else if(inputNumber == 3)
            {
                season();
            }
        }
    
        while(1)
        {
            int inputNumber;
            Ask();
            scanf("%d", &inputNumber);
            JudgeAndOutput(inputNumber);
        }   
    }

    3 代码运行

    je-vie@jevie-virtual-machine:~/Desktop/lab2$ vi menu.c 
    je-vie@jevie-virtual-machine:~/Desktop/lab2$ gcc menu.c -o menu
    je-vie@jevie-virtual-machine:~/Desktop/lab2$ ./menu
    你可以询问如下问题
    input 1 :询问星期的英文
    input 2 :询问月份的英文
    input 3 :询问季节的英文
    input 0 :退出
    1
    请输入数字1-7
    2
    Tuesday
    你可以询问如下问题
    input 1 :询问星期的英文
    input 2 :询问月份的英文
    input 3 :询问季节的英文
    input 0 :退出
    2
    请输入数字1-12
    12
    December
    你可以询问如下问题
    input 1 :询问星期的英文
    input 2 :询问月份的英文
    input 3 :询问季节的英文
    input 0 :退出
    3
    请输入数字1-4
    3
    Autumn
    你可以询问如下问题
    input 1 :询问星期的英文
    input 2 :询问月份的英文
    input 3 :询问季节的英文
    input 0 :退出
    0
    je-vie@jevie-virtual-machine:~/Desktop/lab2$ 

    4 上交git

    je-vie@jevie-virtual-machine:~/Desktop/lab2$ git add menu.c
    je-vie@jevie-virtual-machine:~/Desktop/lab2$ git commit -m "一个命令行小程序"
    [master 1606047] 一个命令行小程序
     1 file changed, 110 insertions(+)
     create mode 100644 menu.c
    je-vie@jevie-virtual-machine:~/Desktop/lab2$ git push
    warning: push.default is unset; its implicit value has changed in
    Git 2.0 from 'matching' to 'simple'. To squelch this message
    and maintain the traditional behavior, use:
    
      git config --global push.default matching
    
    To squelch this message and adopt the new behavior now, use:
    
      git config --global push.default simple
    
    When push.default is set to 'matching', git will push local branches
    to the remote branches that already exist with the same name.
    
    Since Git 2.0, Git defaults to the more conservative 'simple'
    behavior, which only pushes the current branch to the corresponding
    remote branch that 'git pull' uses to update the current branch.
    
    See 'git help config' and search for 'push.default' for further information.
    (the 'simple' mode was introduced in Git 1.7.11. Use the similar mode
    'current' instead of 'simple' if you sometimes use older versions of Git)
    
    Username for 'https://github.com': Je-vie
    Password for 'https://Je-vie@github.com': 
    Counting objects: 3, done.
    Delta compression using up to 2 threads.
    Compressing objects: 100% (3/3), done.
    Writing objects: 100% (3/3), 1.04 KiB | 0 bytes/s, done.
    Total 3 (delta 0), reused 0 (delta 0)
    To https://github.com/Je-vie/lab2.git
       2222d65..1606047  master -> master
    je-vie@jevie-virtual-machine:~/Desktop/lab2$ 
    

    5 实验总结

    语言开发要注意格式规范,使得代码可读性好,下面记录几个比较常见的c语言开发中要注意的格式问题

    1. 程序块要采用缩进风格编写,缩进的空格数为4个。
    2. 相对独立的程序块之间、变量说明之后必须加空行。比如变量定义和函数之间空一格。
    3. 较长的语句要分成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读。
      例如
      perm_count_msg.head.len = NO7_TO_STAT_PERM_COUNT_LEN
      + STAT_SIZE_PER_FRAM * sizeof( _UL );
    4. 循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分,长表达式要在低优先级操作符处划分新行,操作符放在新行之首。
      例如
      if ((taskno < max_act_task_number)
      && (n7stat_stat_item_valid (stat_item)))
      {
      … // program code
      }
    5. 不允许把多个短语句写在一行中,即一行只写一条语句。
      例如
      如下例子不符合规范。
      rect.length = 0; rect.width = 0;
      应如下书写
      rect.length = 0;
      rect.width = 0;
    6. if、for、do、while、case、switch、default等语句自占一行,且if、for、do、while等语句的执行语句部分无论多少都要加括号{}。
      例如
      如下例子不符合规范。
      if (pUserCR == NULL) return;
      应如下书写:
      if (pUserCR == NULL)
      {
      return;
      }
    7. 程序块的分界符(如C/C++语言的大括号‘{’和‘}’)应各独占一行并且位于同一列,同时与引用它们的语句左对齐。在函数体的开始、类的定义、结构的定义、枚举的定义以及if、for、do、while、switch、case语句中的程序都要采用如上的缩进方式。
    8. 逗号、分号只在后面加空格。
      int a, b, c;
    9. 比较操作符, 赋值操作符”=”、 “+=”,算术操作符”+”、”%”,逻辑操作符”&&”、”&”,位域操作符”<<”、”^”等双目操作符的前后加空格。
      if (current_time >= MAX_TIME_VALUE)
      a = b + c;
      a *= 2;
      a = b ^ 2;
    10. “!”、”~”、”++”、”–”、”&”(地址运算符)等单目操作符前后不加空格。
      p = ‘a’; // 内容操作”“与内容之间
      flag = !isEmpty; // 非操作”!”与内容之间
      p = &mem; // 地址操作”&” 与内容之间
      i++; // “++”,”–”与内容之间
    11. “->”、”.”前后不加空格。
      p->id = pid; // “->”指针前后不加空格
    12. if、for、while、switch等与后面的括号间应加空格,使if等关键字更为突出、明显。
      if (a >= b && c > d)
    13. 一般情况下,源程序有效注释量必须在20%以上。
      说明:注释的原则是有助于对程序的阅读理解,在该加的地方都加了,注释不宜太多也不能太少,注释语言必须准确、易懂、简洁。
    14. 说明性文件(如头文件.h文件、.inc文件、.def文件、编译说明文件.cfg等)头部应进行注释,注释必须列出:版权说明、版本号、生成日期、作者、内容、功能、与其它文件的关系、修改日志等,头文件的注释中还应有函数功能简要说明。
      示例:下面这段头文件的头注释比较标准,当然,并不局限于此格式,但上述信息建议要包含在内。

    /***************************************
    Copyright (C), 1988-1999, Huawei Tech. Co., Ltd.
    File name: // 文件名
    Author: Version: Date: // 作者、版本及完成日期
    Description: // 用于详细说明此程序文件完成的主要功能,与其他模块
    // 或函数的接口,输出值、取值范围、含义及参数间的控
    // 制、顺序、独立或依赖等关系
    Others: // 其它内容的说明
    Function List: // 主要函数列表,每条记录应包括函数名及功能简要说明
    1. ….
    History: // 修改历史记录列表,每条修改记录应包括修改日期、修改
    // 者及修改内容简述
    1. Date:
    Author:
    Modification:
    2. …
    ***************************************/
    15. 函数头部应进行注释,列出:函数的目的/功能、输入参数、输出参数、返回值、调用关系(函数、表)等。
    示例:下面这段函数的注释比较标准,当然,并不局限于此格式,但上述信息建议要包含在内。
    /***************************************
    Function: // 函数名称
    Description: // 函数功能、性能等的描述
    Calls: // 被本函数调用的函数清单
    Called By: // 调用本函数的函数清单
    Table Accessed: // 被访问的表(此项仅对于牵扯到数据库操作的程序)
    Table Updated: // 被修改的表(此项仅对于牵扯到数据库操作的程序)
    Input: // 输入参数说明,包括每个参数的作
    // 用、取值说明及参数间关系。
    Output: // 对输出参数的说明。
    Return: // 函数返回值的说明
    Others: // 其它说明
    ***************************************/
    16. 边写代码边注释,修改代码同时修改相应的注释,以保证注释与代码的一致性。不再有用的注释要删除。
    17. 注释应与其描述的代码相近,对代码的注释应放在其上方或右方(对单条语句的注释)相邻位置,不可放在下面,如放于上方则需与其上面的代码用空行隔开。
    18. 注释与所描述内容进行同样的缩排。
    说明:可使程序排版整齐,并方便注释的阅读与理解。
    示例:如下例子,排版不整齐,阅读稍感不方便。
    void example_fun( void )
    {
    /* code one comments */
    CodeBlock One
    /* code two comments */
    CodeBlock Two
    }
    应改为如下布局。
    void example_fun( void )
    {
    /* code one comments */
    CodeBlock One
    /* code two comments */
    CodeBlock Two
    }
    19. 标识符的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解。
    说明:较短的单词可通过去掉“元音”形成缩写;较长的单词可取单词的头几个字母形成缩写;一些单词有大家公认的缩写。
    示例:如下单词的缩写能够被大家基本认可。
    temp 可缩写为 tmp ;
    flag 可缩写为 flg ;
    statistic 可缩写为 stat ;
    increment 可缩写为 inc ;
    message 可缩写为 msg ;
    20. 对于变量命名,禁止取单个字符(如i、j、k…),建议除了要有具体含义外,还能表明其变量类型、数据类型等,但i、j、k作局部循环变量是允许的。
    21. 说明:变量,尤其是局部变量,如果用单个字符表示,很容易敲错(如i写成j),而编译时又检查不出来,有可能为了这个小小的错误而花费大量的查错时间。
    22. 示例:下面所示的局部变量名的定义方法可以借鉴。
    23. int liv_width
    24. 命名规范必须与所使用的系统风格保持一致,并在同一项目中统一,比如采用UNIX的全小写加下划线的风格或大小写混排的方式,不要使用大小写与下划线混排的方式,用作特殊标识如标识成员变量或全局变量的m_和g_,其后加上大小写混排的方式是允许的。
    示例: Add_User不允许,add_user、AddUser、m_AddUser允许。
    25. 命名规则尽量与所采用的操作系统或开发工具的风格保持一致。
    26. 例如Windows应用程序的标识符通常采用“大小写”混排的方式,如AddChild。而Unix应用程序的标识符通常采用“小写加下划线”的方式,如add_child。别把这两类风格混在一起用。
    27. 程序中不要出现仅靠大小写区分的相似的标识符。
    例如:
    int x, X;    // 变量x 与 X 容易混淆
    void foo(int x);  // 函数foo 与FOO容易混淆
    void FOO(float x);
    28. 除非必要,不要用数字或较奇怪的字符来定义标识符。
    29. 用正确的反义词组命名具有互斥意义的变量或相反动作的函数等。
    说明:下面是一些在软件中常用的反义词组。
    add / remove begin / end create / destroy
    insert / delete first / last get / release
    increment / decrement put / get
    add / delete lock / unlock open / close
    min / max old / new start / stop
    next / previous source / target show / hide
    send / receive source / destination
    cut / paste up / down
    示例:
    int min_sum;
    int max_sum;
    int add_user( BYTE *user_name );
    int delete_user( BYTE *user_name );
    30. 避免使用不易理解的数字,用有意义的标识来替代。涉及物理状态或者含有物理意义的常量,不应直接使用数字,必须用有意义的枚举或宏来代替。
    示例:如下的程序可读性差。
    if (Trunk[index].trunk_state == 0)
    {
    Trunk[index].trunk_state = 1;
    … // program code
    }
    应改为如下形式
    if (Trunk[index].trunk_state == TRUNK_IDLE)
    {
    Trunk[index].trunk_state = TRUNK_BUSY;
    … // program code
    }
    31. 去掉没必要的公共变量。
    说明:公共变量是增大模块间耦合的原因之一,故应减少没必要的公共变量以降低模块间的耦合度。
    32. 仔细定义并明确公共变量的含义、作用、取值范围及公共变量间的关系。
    说明:在对变量声明的同时,应对其含义、作用及取值范围进行注释说明,同时若有必要还应说明与其它变量的关系。
    33. 程序中不要出现标识符完全相同的局部变量和全局变量,尽管两者的作用域不同而不会发生语法错误,但会使人误解。
    34. 变量的名字应当使用“名词”或者“形容词+名词”。
      例如:
      float value;
      float oldValue;
      float newValue;
    35. 全局函数的名字应当使用“动词”或者“动词+名词”(动宾词组)。类的成员函数应当只使用“动词”,被省略掉的名词就是对象本身。
        例如:
        DrawBox();  // 全局函数

    展开全文
  • 错题 1. 若有int ⅰ=10, j=0;则执行完下面的语句后ⅰ的值为11。if (j == 0) ⅰ++; else ⅰ–; 答案:F2. 下面的这个循环的循环次数是( )。 (2分) ...D 1答案:B3.HOW ARE YOU程序include in
  • 大学C语言实验报告实 验 报 告课程名称 程序设计语言C 实验名称 数组 姓 名 学 号 专业班级 实验日期 2016年5 月 9日 成 绩 指导教师 实验目的学习一维数组和二维数组的定义、赋值和输入输出的方法。学习与数组有关...
  • 设计题目猜数字游戏 目 录 目录 目录- 1 - 1 程序分析与设计2 1.1 功能分析与任务分配2 功能分析2 1.2 流程图2 1.3 数据结构4 2 详细设计4 3 参考文献5 4 附录5 5 总结错误未定义书签 C程序设计课程设计实验报告 1 ...
  • 第二次实验报告 总结

    2019-07-09 13:46:00
    C程序设计实验报告 实验项目:1.if语句的应用 2.switch/case语句的应用 3.switch/case语句嵌套if语句的应用 4.switch/case结构的嵌套应用 5.分析程序 姓名:林胜臣 实验地点:教学楼514教室实验时间:2019年4月...
  • 问题描述;功能模块;算法分析;程序清单;运行结果;总结。 输入;增加;插入;修改;查询;排序;统计;输出。
  • C语言实验报告(四)【实验任务】实验一:调试程序实验二:编程实现以下算法实验三:计算房贷【实验内容】实验一:代码调试实验二:算法编程实验三:计算房贷【代码与结果】实验一 调试后代码实验一 调试后运行结果...
  • 掌握黑盒测试中的决策表测试法并对被测程序设计测试用例 二实验环境 操作系统 Windows XP + SP2 /win7 三实验容 1编写一个 NextDate 函数 2掌握黑盒测试中的决策表测试法的基本步骤 3使用决策表法设计测试用例对编写...
  • C 语言课程设计报告 题目 :算术计算器的实现 专 业 班 级 学 号 姓 名 指导教师 成 绩 设计日期 目 录 一选题背景 1 二设计思路 1 三主要问题解决方法及关键技术 2 四程序流程图 2 五源程序清单 3 六程序运行结果 5 ...
  • 杨军 《软件工程(C编码实践篇)》MOOC课程...C编码实践篇实验报告 https://www.shiyanlou.com/courses/reports/1271134 【实验一:写一个hello world小程序】 https://www.shiyanlou.com/courses/rep
  • 高级软件工程(C语言实践篇)学习心得 ... 以下是在网易云课堂上的实验报告实验代码,代码可以在实验楼的环境下直接运行 实验一:写一个helloworld小程序 实验二:命令行菜单小程序V1.0 实验三:内部
  • LEX实验报告

    2019-10-04 10:39:50
    实验总结 副录 实验内容 实验内容: 设计并实现C语言的词法分析程序,要求实现以下功能: 可以识别出用C语言编写的源程序中的每个单词符号,并以记号的形式输出每个单词符号 可以识别并跳过源程序中的注释 可以...
  • 自己写的实验报告,包括分析、程序、流程图、总结等的 要学习的要好好看哈O(∩_∩)O~
  • 2.通过实例总结上机调试C语言程序的过程及此次上机的感想。 【实验步骤】 常用的shell命令为cd、ls、gcc ① cd改变当前目录到主目录(到指定目录) 使用方法:cd +file ② ls列出目录的内容 使用方法:在指定...
  • 长沙学院电子工艺实习报告姓名: 潘舟学号: 2009044211系别: 电子与通信工程时间: 2011.11....主要原理图6、 主要程序7、 程序实现的功能8、 系统调试9、 总结目的:通过对单片机最小系统的研究, 掌握单片机各引...
  • 上机实验报告 班级自动化班 专业/方向自动化 姓名 实验成绩 10分制 学号 上机实验...了解算法 程序实现的过程和方法 2 要求: 使用熟悉的编程语言编制单纯形算法的程序 独立编程完成实验撰写实验报告总结实验内容和
  • 一、每周作业及实验报告博客链接汇总 预备作业一:我期望的师生关系 20165310 我期望的师生关系 预备作业二:学习基础和C语言基础调查 20165310 学习基础和C语言基础调查 预备作业三:Linux安装及学习 ...
  • 一、每周作业及实验报告链接汇总 我期望的师生关系 学习基础和C语言基础调查 Linux安装及学习 《Java程序设计》第一周学习总结 《Java程序设计》第二周学习总结 《Java程序设计》第三周学习总结 《Java程序设计》第...

空空如也

空空如也

1 2 3
收藏数 60
精华内容 24
关键字:

c语言程序报告实验总结

c语言 订阅