C语言集中上机实验报告

时间:2024.3.31

C语言集中上机实验报告

学   生:          

学   号:         

班   级:重修六班

专   业:市场营销

 重庆邮电大学移通学院

 20##年12月


1.1  实验目的

(1)掌握一维数组和二维数组的定义、赋值和输入输出的方法

(2)掌握字符数组和字符串函数的使用;

(3)掌握与数组有关的算法。

1.2  实验要求

(1) 在报告中记录建立、保存C程序实习过程。

(2) 完成典型题目,分析遇到的困难和实验中的收获。

1.3  实验基本内容

1.3.1  题目一

打印出以下图案

*

*   *   *

*   *   *   *   *

*   *   *   *   *   *   *

*   *   *   *   *

*   *   *

*

(1) 题目分析:当i=0时,第一行为1。当i=1时,第二行为3。当i=2时,第三行为5。当i=4时,第四行为7;依次循环,要使用两次内循环。

(2) 程序:#include<stdio.h>

void main()

{

       int i,j,k;

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

       {

              for(j=0;j<=2-i;j++)

                     printf(" ");

              for(k=0;k<=2*i;k++)

                     printf("*");

              printf("\n");

       }

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

       {

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

                     printf(" ");

              for(k=0;k<=4-2*i;k++)

                     printf("*");

              printf("\n");

       }

printf("\n");

}

(3) 运行结果:

1.3.2  题目二

编写程序实现输入整数n,输出如下所示由数字组成的菱形。(图中n=5)

1

1 2 1

1 2 3 2 1

1 2 3 4 3 2 1

1 2 3 4 5 4 3 2 1

1 2 3 4 3 2 1

1 2 3 2 1

1 2 1

1

(1) 题目分析:每一行中间那个数往两边依次递减。上下以中间为对称轴对称。

(2) 程序:#include<stdio.h>

void main()

{

   int i,j;

   printf("\n");

   for(i=1;i<=5;i++)

   {

      for(j=1;j<=i;j++)

         printf("%2d",j);

      for(j=i-1;j>=1;j--)

         printf("%2d",j);

      printf("\n");

   }

   for(i=4;i>=1;i--)

   {

      for(j=1;j<=i;j++)

         printf("%2d",j);

      for(j=i-1;j>=1;j--)

         printf("%2d",j);

      printf("\n");

   }

}

(3) 运行结果:


集中上机总结


第二篇:C语言集中上机实验报告《通信录管理》


C语言集中上机实验报告

院 系:

班 级:

姓 名:

学 号: 指导教师:

题目二:通讯录管理

目 录

一.概述............................................................................................. 3

二.流程图 ......................................................................................... 3

三.主程序 ......................................................................................... 5

四.程序的调试与运行结果说明 ....................................................... 8

五.课程设计总结 .............................................................................. 9

六.心得体会 ....................................................................................11

参考文献............................................................................................11

一 概述

1. 课程设计的地位、作用与目的

为综合应用C语言程序设计理论知识、进一步提高学生综合解决问题、协调工作的能力和良好的软件开发习惯,特安排本实验内容。希望通过该实习能够进一步激发学生的学习热情,培养学生初步编程的能力,为后续的学习和发展奠定基础。

2.课程的基本要求

1学生从后面参考题中选取一道题目来做,自己选题的学生必需经指导老师的同意方可,否则视为无效选题。限1人选的题目只能由1人单独完成,限2人选的题目可由1-2人完成。

2模块化程序设计?

3锯齿型书写格式?

4必须上机调试通过?

3. 课程设计的主要设计思想

1、设一个通信录由以下几项数据信息构成:

数据项 类型

姓名 字符串

地址 字符串

邮政编码 字符串

电话号码 字符串

试为通信录数据定义类型和定义通信录变量, 实现功能:存取、显示、删除记录、查询记录等功能。

二 流程图

C语言集中上机实验报告通信录管理

1。打开程序;

2。显示主菜单;

3。选择相应功能的编号: 选择1为输入联系人信息;

选择2为显示所有联系人信息;

选择3为查询联系人信息;

选择4为删除联系人信息;

选择0为退出系统;

4。功能一:输入1。再输入相应联系人的信息后,按回车,数据存入lxr.txt文档,再按回

车同时返回主菜单;

功能二:输入2。显示以前输入的联系人信息; 按回车结束,同时返回主菜单; 功能三:输入3。再输入相应联系人的姓名后,按回车确定查询,即刻显示出早期存入

的数据;按回车结,;同时返回主菜单;

功能四:输入4。再输入相应联系人的姓名后,按回车确定删除;按回车结,;同时返

回主菜单;

功能五:输入0。退出系统;

三 主程序

#include <stdio.h>

#include<string.h>

struct lxr

{

char name[8]; char addres[10]; char number[10];

char phonenum[12];

char sex[4];

}lxr;//定义一个结构体 并第一个结构体的全局变量lxr void main()

{

void save();

void read();

void search(); void delet();

int n;

do

{

printf("主菜单:\n");

printf("\n 1 输入联系人信息:\n"); printf("\n 2 显示所有联系人信息:\n"); printf("\n 3 查询联系人信息:\n"); printf("\n 4 删除联系人信息:\n"); printf("\n 0 退出系统\n"); printf("\n请选择功能:"); scanf("%d",&n); switch(n) { case 1:save();break; case 2:read();break; case 3:search();break; case 4:delet();break; default:printf("退出系统\n"); } }while(n!=0);

}

void save()

{

FILE*fp,*fpp;//定义两个文件指针

int n=0;

fpp=fopen("num.txt","rb");//fopen(文件名,使用文件方式) "rb"(只读):为输入打开一个二进制文件

fread(&n,sizeof(int),1,fpp);//sizeof为保存字节数 fclose(fpp); fp=fopen("lxr.txt","a"); printf("请录入信息\n");

printf("\n姓名 地址 邮政编 电话号码 性别 \n");

printf("\n");

scanf("%s%s%s%s%s",lxr.name,lxr.addres,lxr.number,lxr.phonenum,lxr.sex);

fwrite(&lxr,sizeof(struct lxr),1,fp);//fwrite函数就是向fstu指向的文件里写入信息 n++;

fpp=fopen("num.txt","wb");

fwrite(&n,sizeof(int),1,fpp);

fclose(fpp);//fclose表示关闭文件

fclose(fp);

}

void read()

{

FILE*fp,*fpp;

int i,n; fp=fopen("lxr.txt","r");//"r"(只读):为输入打开一个文本文件

fpp=fopen("num.txt","r");

fread(&n,sizeof(int),1,fpp);//人数文件里的人数存到变量n里; fread(buffer,size,count,fp) count:要进行读写多少个size字节的数据项

printf("\n"); printf("联系人信息如下:\n");

printf("*****************************************************************************\n");

printf("姓名 地址 邮政编 电话号码 性别 \n");

} printf("\n"); for(i=0;i<n;i++) { fread(&lxr,sizeof(struct lxr),1,fp);//fread函数把 文件里的信息读出 printf("\n%-8s%8s%8s } fclose(fp); %8s%8s \n",lxr.name,lxr.addres,lxr.number,lxr.phonenum,lxr.sex);

void search()

{

FILE*fp,*fpp;

int i,j,m;

char n[10];

m=0;

printf("输入要查找的姓名:");

scanf("%s",n);

printf("姓名 地址 邮政编码 电话号码 性别 \n"); fpp=fopen("num.txt","r");

fp=fopen("lxr.txt","r");

fread(&j,sizeof(int),1,fpp);

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

{

fread(&lxr,sizeof(struct lxr),1,fp);

if(strcmp(lxr.name,n)==0)

{

printf("\n%-8s%8s%8s

\n",lxr.name,lxr.addres,lxr.number,lxr.phonenum,lxr.sex);

m++;

}

}

if(m==0)printf("没有符合的信息\n");

void delet()

{

FILE*fp,*fpp;

struct lxr lxr[10];

int i,j,n,flag;

char name[10];

printf("请输入要删除的联系人姓名:");

scanf("%s",name);

fp=fopen("lxr.txt","r");

fpp=fopen("num.txt","r");

fread(&j,sizeof(int),1,fpp);

fclose(fpp);

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

fread(&lxr[i],sizeof(struct lxr),1,fp);

for(i=0,flag=1;i<j&&flag;i++)

{

if(strcmp(lxr[i].name,name)==0)

{

for(n=i;n<j-1;n++)

{

strcpy(lxr[n].name,lxr[n+1].name); %8s%8s

} } strcpy(lxr[n].addres,lxr[n+1].addres); strcpy(lxr[n].number,lxr[n+1].number); strcpy(lxr[n].phonenum,lxr[n+1].phonenum); strcpy(lxr[n].sex,lxr[n+1].sex); } flag=0; fpp=fopen("num.txt","w"); fwrite(&j,sizeof(int),1,fpp); j--; fclose(fpp);

fclose(fp);

fp=fopen("lxr.txt","w");

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

fwrite(&lxr[i],sizeof(struct lxr),1,fp);

} fclose(fp);

四 程序的调试与运行结果说明 主界面运行截图

C语言集中上机实验报告通信录管理

各种功能截图 输入

C语言集中上机实验报告通信录管理

显示

C语言集中上机实验报告通信录管理

查询

C语言集中上机实验报告通信录管理

删除

C语言集中上机实验报告通信录管理

五 课程设计总结

本次设计基本达到了要求,设计了一个具有相关功能的通讯录,能进行简单的操作,包括存取、显示、删除记录、查询记录 。

六 心得体会

通过本次C语言上机实验的练习,加深了我对C语言的应用。了解了C语言中更多的应用功能,例如FILE*fp,fp=fopen(文件名,使用文件方式),fread( ), fclose( ),fwrite( ),sizeof( )等函数的应用。虽然在运用的过程中仍旧存在许多不足,但对培养我们的自主性与解决问题的能力有很大的帮助。在今后的学习,应用中相信我们能更好的掌握C语言的运用。

参考文献

[1] 谭浩强,C程序设计(第二版),北京,清华大学出版社,20xx年9月。

更多相关推荐:
C语言上机实验心得

在科技高度发展的今天,计算机在人们之中的作用越来越突出。而C语言作为一种计算机的语言,学习它将有助于我们更好的了解计算机,与计算机进行交流,因此,我们一定要学好C语言,这对我们以后的发展是十分重要的。说到这,上…

C语言集中上机实验报告

重庆邮电大学移通学院C语言集中上机实验报告学生学号班级专业重庆邮电大学移通学院20xx年5月重庆邮电大学移通学院目录第一章循环311实验目的312实验要求313实验基本内容3131题目一3132题目二5第二章数...

大一C语言上机实验试题及答案

实验一上机操作初步2学时一实验方式一人一机二实验目的1熟悉VC语言的上机环境及上机操作过程2了解如何编辑编译连接和运行一个C程序3初步了解C程序的特点三实验内容说明前三题为必做题目后两题为选做题目1输出入下信息...

川师C语言上机实验报告答案

四川师范大学计算机学院实验报告册院系名称计算机科学学院课程名称C语言程序设计实验学期20xx年至20xx年第二学期专业班级20xx级2班姓名黄涛学号20xx110210指导教师苏菡老师实验最终成绩本学期年开设实...

C语言上机实验报告样式

实验一实验的名称一、实验目的:1、熟悉VC++语言的上机环境及上机操作过程。2、了解如何编辑、编译、连接和运行一个C程序。3、初步了解C程序的特点。二、实验内容:1、建立VC++工程。2、编写HelloWorl…

C语言上机实验报告

中南大学C语言程序设计实验报告学生姓名学号专业班级指导教师学院信息科学与工程学院完成时间20xx年10月20xx年12月实验报告一顺序程序结构设计一目的要求1熟悉C语言的表达式语句空语句和复合语句2熟悉函数调用...

C语言_上机实验报告样例

实验报告课程名称程序设计语言C实验名称控制结构程序设计姓名潘登学号20xx120xx628专业班级材料1006实验日期20xx年5月20日成绩指导教师侯锐一实验目的1学会正确使用关系运算符和关系表达式逻辑运算符...

C语言上机实验(第四版)参考答案

C语言程序设计上机实验指导与习题参考答案第四版学生改编实验1C语言程序初步一实验目的1了解所用的计算机系统的基本操作方法学会独立使用该系统2了解在该系统上如何编辑编译连接和运行一个C程序3通过运行简单的C程序初...

C语言程序设计上机实验指导与习题第四版

加载到下一页C语言程序设计上机实验指导与习题参考答案第四版学生改编实验1C语言程序初步一实验目的1了解所用的计算机系统的基本操作方法学会独立使用该系统2了解在该系统上如何编辑编译连接和运行一个C程序3通过运行简...

05 VC6.0上机指导--- C语言实验讲义

实验一C语言的运行环境和运行过程实验目的1掌握c程序设计编程环境visualc掌握运行一个c程序设计的基本步骤包括编辑编译连接和运行2掌握c语言程序设计的基本框架能够编写简单的c程序3了解程序调试的思想能找出并...

c语言上机实验题

1下列程序中要求main函数实现如下功能从键盘上输入三个正整数求出它们中的最大值请完善程序并在程序最后用注释的方式给出你的测试数据及在这组测试数据下的运行结果includeltstdiohgtvoidmaini...

上机实验1:利用C语言图形函数绘图

信息与计算科学专业基础课ComputerGraphicsReportOfcourseexperiment课程实计算机图形学验报告实验题目利用C语言图形函数绘图班级姓名杨恒学号3080811017指导教师胡钢日期...

c语言上机实验报告(38篇)