




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
上海工程技术大学C语言实验报告姓名:[你的姓名]学号:[你的学号]专业:[你的专业]指导教师:[教师姓名]
一、实验目的1.熟悉C语言的基本语法结构,包括变量定义、数据类型、控制语句等。2.掌握C语言程序的编辑、编译、链接和运行过程。3.通过编写简单的C语言程序,培养程序设计的基本思维和解决问题的能力。
二、实验环境1.硬件环境:个人电脑2.软件环境:Windows操作系统、VisualStudioCode集成开发环境、MinGW编译器
三、实验内容及步骤
实验一:简单的C语言程序1.实验内容编写一个C语言程序,输出"Hello,World!"。2.实验步骤打开VisualStudioCode,创建一个新的C文件,命名为`hello_world.c`。在文件中输入以下代码:```cinclude<stdio.h>
intmain(){printf("Hello,World!\n");return0;}```保存文件。打开终端,进入文件所在目录,使用命令`gccohello_worldhello_world.c`进行编译,生成可执行文件`hello_world.exe`。运行可执行文件,查看输出结果。
实验二:数据类型与变量1.实验内容定义不同数据类型的变量,并进行赋值和输出。2.实验步骤在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
intmain(){//定义整型变量intnum1=10;//定义浮点型变量floatnum2=3.14;//定义字符型变量charch='A';
printf("整型变量num1的值为:%d\n",num1);printf("浮点型变量num2的值为:%f\n",num2);printf("字符型变量ch的值为:%c\n",ch);
return0;}```保存文件,重新编译并运行程序,查看输出结果。
实验三:输入输出函数1.实验内容使用`scanf`函数从键盘读取数据,使用`printf`函数输出数据。2.实验步骤在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
intmain(){intnum;printf("请输入一个整数:");scanf("%d",&num);printf("你输入的整数是:%d\n",num);
return0;}```保存文件,编译并运行程序,输入一个整数,查看输出结果。
实验四:控制语句1.实验内容使用`ifelse`语句、`switch`语句、`for`循环、`while`循环等控制语句编写程序。2.实验步骤使用`ifelse`语句判断一个数的奇偶性在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
intmain(){intnum;printf("请输入一个整数:");scanf("%d",&num);
if(num%2==0){printf("%d是偶数\n",num);}else{printf("%d是奇数\n",num);}
return0;}```使用`switch`语句根据成绩输出等级在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
intmain(){intscore;printf("请输入成绩:");scanf("%d",&score);
switch(score/10){case10:case9:printf("成绩等级为:A\n");break;case8:printf("成绩等级为:B\n");break;case7:printf("成绩等级为:C\n");break;case6:printf("成绩等级为:D\n");break;default:printf("成绩等级为:E\n");break;}
return0;}```使用`for`循环计算1到100的和在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
intmain(){intsum=0;for(inti=1;i<=100;i++){sum+=i;}printf("1到100的和为:%d\n",sum);
return0;}```使用`while`循环实现猜数字游戏在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>include<stdlib.h>include<time.h>
intmain(){intnum,guess;srand(time(0));num=rand()%100+1;
printf("猜数字游戏开始,请输入一个1到100之间的整数:");while(1){scanf("%d",&guess);if(guess==num){printf("恭喜你,猜对了!\n");break;}elseif(guess<num){printf("猜小了,请重新输入:");}else{printf("猜大了,请重新输入:");}}
return0;}```分别保存以上代码,每次保存后编译并运行程序,查看输出结果。
实验五:数组1.实验内容定义和使用数组,包括一维数组和二维数组。2.实验步骤定义一维数组并输出元素在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
intmain(){intarr[5]={1,2,3,4,5};for(inti=0;i<5;i++){printf("arr[%d]=%d\n",i,arr[i]);}
return0;}```使用冒泡排序法对一维数组进行排序在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
voidbubbleSort(intarr[],intn){inti,j,temp;for(i=0;i<n1;i++){for(j=0;j<ni1;j++){if(arr[j]>arr[j+1]){temp=arr[j];arr[j]=arr[j+1];arr[j+1]=temp;}}}}
intmain(){intarr[5]={5,4,3,2,1};printf("排序前的数组:\n");for(inti=0;i<5;i++){printf("%d",arr[i]);}printf("\n");
bubbleSort(arr,5);
printf("排序后的数组:\n");for(inti=0;i<5;i++){printf("%d",arr[i]);}printf("\n");
return0;}```定义二维数组并输出元素在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
intmain(){intarr[2][3]={{1,2,3},{4,5,6}};for(inti=0;i<2;i++){for(intj=0;j<3;j++){printf("arr[%d][%d]=%d\n",i,j,arr[i][j]);}}
return0;}```分别保存以上代码,每次保存后编译并运行程序,查看输出结果。
实验六:函数1.实验内容定义和调用函数,包括有参函数和无参函数。2.实验步骤定义一个无参函数,输出"Hello,Function!"在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
voidprintHello(){printf("Hello,Function!\n");}
intmain(){printHello();
return0;}```定义一个有参函数,计算两个数的和在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
intadd(inta,intb){returna+b;}
intmain(){intnum1=10,num2=20;intsum=add(num1,num2);printf("%d+%d=%d\n",num1,num2,sum);
return0;}```保存以上代码,编译并运行程序,查看输出结果。
实验七:指针1.实验内容理解指针的概念,掌握指针的定义、初始化和使用。2.实验步骤定义指针变量并输出其指向的值在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
intmain(){intnum=10;int*ptr=#printf("num的值为:%d\n",num);printf("ptr指向的值为:%d\n",*ptr);
return0;}```使用指针变量修改其指向的值在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
intmain(){intnum=10;int*ptr=#*ptr=20;printf("num的值为:%d\n",num);printf("ptr指向的值为:%d\n",*ptr);
return0;}```保存以上代码,编译并运行程序,查看输出结果。
实验八:结构体1.实验内容定义和使用结构体,包括结构体变量的定义、初始化和访问。2.实验步骤定义一个结构体,包含学生的姓名、年龄和成绩在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
structStudent{charname[20];intage;floatscore;};
intmain(){structStudentstu={"张三",20,85.5};printf("姓名:%s,年龄:%d,成绩:%.1f\n",,stu.age,stu.score);
return0;}```定义结构体数组,存储多个学生的信息并输出在`hello_world.c`文件中添加以下代码:```cinclude<stdio.h>
structStudent{charname[20];intage;floatscore;};
intmain(){structStudentstus[3]={{"李四",21,90.0},{"王五",19,80.5},{"赵六",22,88.0}};
for(inti=0;i<3;i++){printf("姓名:%s,年龄:%d,成绩:%.1f\n",stus[i].name,stus[i].age,stus[i].score);}
return0;}```保存以上代码,编译并运行程序,查看输出结果。
四、实验结果与分析1.实验结果按照实验步骤完成了各个实验内容,程序运行结果符合预期。例如,在实验一中输出了"Hello,World!";在实验二中正确定义和输出了不同数据类型的变量;在实验三中实现了从键盘读取数据并输出等。2.结果分析通过本次实验,对C语言的基本语法结构有了更深入的理解和掌握。在编写程序过程中,遇到了一些问题,如语法错误、逻辑错误等。通过仔细检查代码和调试,逐步解决了这些问题。例如,在使用`scanf`函数时,要注意变量前面需要加上取地址符`&`;在进行条件判断时,要注意运算符
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 墓地买卖合同书
- 2025年租赁店面合同范本示例
- 2025微博小程序开发合同
- 2025企业设备采购合同模板
- 2025年北京市商品房预租合同范文
- 2025酒店股权转让协议合同
- 2025咨询服务合同范本
- 2025年产权式酒店租赁合同分析及租赁条款研究
- 作文:我学会了教学
- 2025年中国能源建设集团(股份)有限公司招聘笔试参考题库附带答案详解
- 2025年高考语文模拟作文导写及点评:社会时钟
- 《护理信息系统》课件
- 单片机技术与应用知到智慧树章节测试课后答案2024年秋甘肃省农垦中等专业学校
- 施工现场平面布置与临时设施、临时道路布置方案
- 建筑施工大型机械设备安全使用与管理培训
- T-CNPPA 3027-2024 药品泡罩包装应用指南
- 山东省潍坊市2025届高考数学二模试卷含解析
- 6S管理制度(可参考)-6s管理制度
- 四肢与关节检查
- 产后抑郁症讲课课件
- 低碳生活 主题班会课件-2篇
评论
0/150
提交评论