湖北理工学院C语言实验报告六答案(完整版)

合集下载

湖北理工学院专升本C语言真题

湖北理工学院专升本C语言真题

一、单项选择题1. 以下关于C语言中的变量声明的叙述中,正确的是()A. 在C语言中,变量声明可以放在任何位置B. 在C语言中,声明变量时,必须指定变量的类型C. 在C语言中,声明变量时,可以指定变量的值D. 在C语言中,变量声明只能放在函数的开头答案:B2. 下列程序的输出结果是()#include <stdio.h>int main(){int i=1;while(i<=5){printf("%d\n",i);i++;}return 0;}A. 1 2 3 4 5B. 0 1 2 3 4C. 1 2 3 4D. 0 1 2 3答案:A3. 下列程序的输出结果是()#include <stdio.h>int main(){int i=1;doprintf("%d\n",i);i++;}while(i<=5);return 0;}A. 1 2 3 4 5B. 0 1 2 3 4C. 1 2 3 4D. 0 1 2 3答案:A4. 在C语言中,可以使用()来表示一个字A. 单引号B. 双引号C. 尖括号D. 方括号答案:A5. 下列程序的输出结果是()#include <stdio.h>int main(){int i=1;for(;i<=5;i++){printf("%d\n",i); }return 0;}A. 1 2 3 4 5B. 0 1 2 3 4C. 1 2 3 4D. 0 1 2 3答案:A二、填空题1. 在C语言中,变量的声明语句的一般形式是 _____ <类型说明符> <变量名> _____。

答案:int。

C语言试验报告参考答案

C语言试验报告参考答案

长沙理工大学2010C 语言实验报告参考答案实验一熟悉C 语言程序开发环境及数据描述四、程序清单1.编写程序实现在屏幕上显示以下结果:The dress is longThe shoes are bigThe trousers are black答案:#include<> main(){printf("The dress is long\n");printf("The shoes are big\n"); printf("The trousers are black\n");}2.改错题(将正确程序写在指定位置)正确的程序为:#include <>main(){printf(" 商品名称价格\n");printf("TCL 电视机¥ 7600\n");printf(“ 美的空调¥ 2000\n");printf("SunRose 键盘¥ \n");}2.编写程序:a=150,b=20,c=45,编写求a/b、a/c(商)和a%b a%c(余数)的程序。

答案:#include<>main(){int a,b,c,x,y; a=150;b=20;c=45;x=a/b;y=a/c;prin tf("a/b 的商=%d\n",x);prin tf("a/c 的商=%d\n",y);x=a%b;y=a%c;prin tf("a/b 的余数=%d\n",x);prin tf("a/c 的余数=%d\n",y);}4.设变量a的值为0, b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。

(提示:用条件运算符)答案:#in clude<>mai n(){int a,b,c;a=0;b=-10;c= (a>b) ? b:a;prin tf("c = %d\n",c);}五、调试和测试结果1.编译、连接无错,运行后屏幕上显示以下结果:The dress is longThe shoes are bigThe trousers are black3、编译、连接无错,运行后屏幕上显示以下结果:a/b的商=7a/c的商=3a/b的余数=10a/c的余数=154.编译、连接无错,运行后屏幕上显示以下结果:c =-10实验二顺序结构程序设计四、程序清单问题2 改printf("%c,%c,%d\n",a,b,c); 这条语句1.键盘输入与屏幕输出练习问题1 D 。

C语言实验参考答案

C语言实验参考答案

C语言实验参考答案实验一5、输入并运行自已编写的程序(教材第一章P14 三编程题)。

实验二1、编写一个程序,从键盘接收3个实数(分别为10.0、20.0、5.0),输出这3个数的和s、乘积t和平均值a。

#include <stdio.h>main(){float x,y,z,s,t,a;printf(“x,y,z=”);scanf(“%f,%f,%f”,&x,&y,&z);s=x+y+z;t=x*y*z;a=s/3;printf(“s=%f,t=%f,a=%f\n”,s,t,a);}2、编程。

要求用户输入两个整数a、b(分别为20、10),读取用户从键盘输入的值,然后:1)用整数输出这两个数的和、差;2)用长整型输出这两个数的积,用float输出商;3)用整数输出这两个数的余数,用float输出平均值。

#include <stdio.h>main(){int a,b,he,cha,yu;long ji;float shang,aver;printf(“a,b=”);scanf(“%d,%d”,&a,&b);he=a+b;cha=a-b;ji=(long)a*b;shang=1.0*a/b;yu=a%b;aver=(a+b)/2.0;printf(“a+b=%d,a-b=%d,a*b=%ld\n”,he,cha,ji);printf(“a/b=%f,a%%b=%d,aver=%f\n”,shang,yu,aver);}实验三1、编写一个程序,从键盘接收一个一位的整型数,经转换,用字符函数putchar输出。

例如,输入整数5,程序运行后输出字符5。

#include <stdio.h>main(){int a;char c;printf(“a=”);scanf(“%d”,&a);c=a+48;putchar(c);}2、编程。

(完整版)c实验报告

(完整版)c实验报告

(完整版)c实验报告实验名称: C语言实验报告实验内容:本次实验主要针对C语言编程进行实验。

通过实验的设计和完成,检验和加深对C语言的理解和应用能力。

实验步骤:1. 实验准备在开始实验之前,需要准备好以下必要的工具和材料:- 计算机- C语言编译器(比如GCC、Clang等)- 文本编辑器(比如Notepad++、Sublime Text等)2. 实验环境搭建在计算机上安装C语言编译器,并配置好相应的环境变量。

这样可以在终端或命令提示符中执行相关的C程序。

3. 编写实验代码根据实验要求,使用文本编辑器编写C语言代码。

根据实验的要求和功能需求,合理设计和组织代码结构,包括头文件的引用、变量的定义、函数的声明和定义等。

4. 编译和运行代码在命令行或终端中使用编译器对编写好的C语言代码进行编译,并生成可执行文件。

编译命令的具体格式根据不同的编译器而有所差异,但一般形式如下:```gcc -o output_file input_file.c```其中,"output_file"表示生成的可执行文件名,"input_file.c"表示待编译的C源代码文件名。

编译成功后,通过命令行或终端执行生成的可执行文件,检查程序的运行结果是否符合预期。

5. 实验结果分析根据实际运行结果,对实验数据进行分析和归纳。

可以通过输出结果、打印特定信息或观察程序的行为来判断程序是否正确地实现了预期的功能。

6. 实验总结在实验报告中对本次实验的过程、方法、结果进行总结,并提出实验中遇到的问题和解决方法。

同时,对所学习的C语言相关知识点进行总结和归纳,以加深对相关知识的理解和记忆。

实验结果:通过本次实验的设计和实现,我成功完成了对C语言编程的实验,达到了预期的目标。

通过编写实际的代码,我巩固了对C语言语法和基本概念的理解。

在实验过程中,我遇到了一些问题,通过查阅资料和与同学的讨论,我成功解决了这些问题。

湖北理工学院c语言实验报告七答案(完整版)

湖北理工学院c语言实验报告七答案(完整版)

湖北理工学院c语言实验报告七答案(完整版)本页仅作为文档封面,使用时可以删除This document is for reference only-rar21year.March实验七结构体和共用体实验课程名:高级语言程序设计(C)专业班级:学号:姓名:实验时间:实验地点:指导教师:input(stu);print(stu);}运行结果:运行结果分析:首先定义的是结构体(其中要注意结构体中数组),在定义和引用结构体数组是要注意结构体数组的引用,定义函数和引用函数要注意括号内部的变量时结构体。

2、任务名称scanf("%d", &stu[i].score[j]);}}average=0;max=0;maxi=0;for(i=0;i<3;i++){sum=0;for(j=0;j<3;j++)sum+=stu[i].score[j];stu[i].avr=sum/3.0;average+=stu[i].avr;if(sum>max){max=sum;maxi=i;}}average/=N;printf("NO. name score1 score2 score3 average\n");for(i=0;i<N;i++){printf("%5s%10s",stu[i].num, stu[i].name);for(j=0;j<3;j++)printf("%9d",stu[i].score[j]);printf("%8.2f\n",stu[i].avr);}printf("average=%6.2f\n",average);printf("The highest score is:%s,score total:%d.",stu[maxi].name,max); }运行结果:运行结果分析:输入输出时要引用结构体数组中的各种变量,弄清输入输出时的格式,要把简单的排序、求和、求平均值运用于结构体时不能搞混乱了,思路要清晰。

C语言实验六实验报告——指针

C语言实验六实验报告——指针

一、实验项目名称指针二、实验目得1.掌握指针得基本概念与基本用法。

包括:变量得地址与变量得值,指针变量得说明、指针变量得初始化、指针得内容与定义格式、指针得基本运算等;2.掌握数组与指针得关系并能够利用指针解决数组得相关问题;3。

掌握字符串与指针得关系并能够利用指针处理字符串得问题;4。

掌握指针与函数得关系并能够利用指针处理函数问题;5.了解指向指针得指针得概念及其使用方法;6。

能够使用指针进行程序设计。

三、实验内容有关指针得程序设计1。

编程实现:任意输入得10个数,求其平均值。

要求:(1)10个数采用scanf语句读入。

(2)利用指针实现对这10个数得访问。

(3)要求平均值得精度为小数后面2位。

2。

编程实现:将一个任意整数插入到一个已排序得整数数组中,插入后数组中得数仍然保持有序.要求:(1)整数数组由初始化方式输入。

任意整数由scanf函数输入;(2)实现过程采用指针处理;(3)输出原始数组数据以及插入数据后得数组数据并加以相应说明。

3。

编写函数newcopy(char *new,char *old),它得功能就是删除old所指向得字符串中得小写字母,并将所得到得新串存入new中。

要求:(1)在主函数中以初始化方式输入一个字符串;(2)调用newcopy()函数;(3)在主函数中输出处理后得结果.4。

编程实现:输入三个整数,按由大到小得顺序输出。

要求:(1)通过scanf函数输入三个数据并存入三个变量中;(2)利用指针实现从大到小输出;(3)修改程序,将三个整型数据改为字符型数据,输入三个字符,按从大到小数顺序输出;(4)修改程序,将三个字符型数据改为字符串数据,输入三个字符串,按从小到大顺序输出;(5)体会指针对不同数据处理得特点.四、实验步骤及结果一、#include <stdio、h〉voidmain(){ﻩint a[10],n,sum=0;ﻩfloat aver;/*定义平均数为浮点型*/int *p=a;/*初始化*/ﻩprintf("Pleaseinput 10 numbers:\n”);for (n=0;n<10;++n)ﻩscanf("%d",&a[n]);/*输入十个数*/ﻩfor(n=0;n<10;++n)ﻩsum=sum+*(p+n);/*使用指针访问数据*/ﻩaver=(float)sum/n;ﻩprintf(”Average is%、2f",aver);/*精确到小数点后两位*/}二、#include〈stdio、h>void arr(int *a,int n);/*定义排序函数*/void insert(int *a,int num);/*插入并排序函数*/intn=10;/*定义数据个数,可修改*/voidmain(){int*a,num,j,k,b[10];ﻩprintf("请输入个数据:\n");ﻩfor(j=0;j〈n;++j)scanf("%d",&b[j]);/*输入原始数据*/ﻩa=&b[0];/*初始化*/arr(a,n);/*调用排序函数*/ﻩprintf("排序好得数据为:\n");ﻩfor(j=0;j<n;++j)printf("%d",*(a+j));/*输出排序好得原始数据*/ ﻩprintf("\n请输入要插入得数:”);scanf(”%d",&num);printf("插入%d后得数据为:\n”,num);insert(a,num);/*调用插入并排序函数*/}voidarr(int*a,int n)/*排序函数*/{ﻩintk,j,h;ﻩfor (k=0;k〈10;++k)ﻩ for (j=0;j〈n-k—1;++j)ﻩif(*(a+1+j)<*(a+j)){ﻩﻩh=*(a+1+j);ﻩﻩﻩ*(a+1+j)=*(a+j);ﻩﻩ*(a+j)=h;ﻩ}}void insert(int *a,int num){ﻩvoidarr(int *a,intn);ﻩint j,k;*(a+n)=num;/*将插入得数排在数组最后一位*/arr(a,n+1);/*将新数组重新排序*/ﻩfor (j=0;j〈(n+1);++j)ﻩ if (*(a+j)==num){ﻩﻩﻩk=j;ﻩbreak;}/*找到插入得数在数组中得位置*/ﻩfor(j=0;j<(n+1);++j)ﻩﻩprintf(”%d",*(a+j));ﻩprintf("\n插入得数据排在数组得第%d位",k+1);}三、#include <stdio、h>void newcopy(char *new1,char *old);void main(){ﻩchar*new1,*old,a[10];/*new就是不能当做变量,所以用new1*/ old=a;new1=a;/*字符串得初始化*/ﻩprintf("请输入字符串:\n”);scanf("%s",a);ﻩnewcopy(new1,old);/*调用函数*/printf(”新得字符串为:\n");printf("%s”,new1);}void newcopy(char*new1,char*old){ﻩint n,j=0;for (;*old!=’\0';++old)ﻩif ((* old)>'z' ||(*old)〈'a’){ﻩﻩ*(new1+j)=* old;ﻩﻩ++j;}/*排除原字符串中得小写字母,将其她字符存入新字符串*/*(new1+j)='\0';/*结束新字符串,否则新字符串得输出会故障*/}四、#include <stdio、h>voidmain(){ﻩvoid exchange(int *q1,int *q2,int*q3);int a,b,c,*q1,*q2,*q3;ﻩprintf(”请输入个数:\n");ﻩscanf(”%d,%d,%d",&a,&b,&c);ﻩq1=&a;q2=&b;q3=&c;/*将三个数得地址存入q1q2q3中*/ ﻩexchange(q1,q2,q3);/*调用排序函数*/printf("3个数从大到小排列为:\n%d,%d,%d",a,b,c); }voidexchange(int *q1,int*q2,int *q3){ﻩvoid s*q1,int*q2);/*调用交换函数*/ﻩif (*q1〈*q2)ﻩﻩs);/*若*q1小于*q2,交换地址位置*/if (*q1〈*q3)ﻩs);if(*q2<*q3)ﻩs);}void s*q1,int*q2)/*交换函数*/{int n;n=*q1;ﻩ*q1=*q2;ﻩ*q2=n;}修改程序,将三个整型数据改为字符型数据,输入三个字符,按从大到小数顺序输出:只需将程序中得所有int改为char,将%d改为%c即可。

C语言实验报告(实验6)

C语言实验报告(实验6)
《C语言程序设计》实验(上机)报告
班级·学号姓名实验日期任课教师
实验名称
实验六数组
验证型
一、实验目的及要求
1.掌握一维数组的定义、赋值和输入输出的方法。
2.掌握字符数组的使用。
3.掌握与数组有关的算法(例如排序算法)。
4.学会使用断点调试方法。
二、上机内容
1.编写程序:从键盘输入一串整数保存到数组中,调用函数antitone()将数组反序输出。自定义函数void antitone(int a[],int n)实现将数组中的n个数据按逆序存放。
gets(str); //输入一行字符
longword(str, lg); //调用最长单词函数
puts(lg); //输出最长单词
return 0;
}
//最长单词函数
void longword(char s[], char t[])
{
int i, j, n, k, m, word; //中间单词长度
printf("%d: %d\n",i,s[i]);
2://教材P154输入一行字符,将此字符串中最长的单词输出
#include <string.h>
void longword(char s[], char t[]); //定义最长单词函数
int main()
{
char str[255], lg[20];
{
word=1;
p[j++]=s[i];
}
else if (word==1)
{
if (j>k)
{
for (m=0; m<j; m++)
t[m]=p[m];

C语言实验报告(实验六)

C语言实验报告(实验六)

姓 名 学 号 实验组
实验时间 指导教师 成 绩
实验项目名称 数组
一、实验目的及要求:

(1) 熟悉使用一维数组、二维数组。

1、程序改错(3处错误):下列程序的功能是计算3×3矩阵的主对角线元素之和。
#include “stdio.h”
main()
{ int i,a[3][3]={1,2,3,4,5,6,7,8,9},sum=0;
for(i=1;i<=3;i++) sum+=a[i][i];
printf("sum=%d\n",sum);
}
运行结果截图:

2、填空:下面程序的功能是检查一个N×N矩阵是否对称(即判断是否所有的a[i][j]等于
a[j][i])。请填空。
#define N 4
main()
{ int a[N][N]={1,2,3,4,2,2,5,6,3,5,3,7,4,6,7,4};
int i,j,found=0;
for(j=0;jfor( ;iif(a[i][j]!=a[j][i])
{ ;
break;
}
if(found) printf("No");
else printf("Yes");
}
运行结果截图:

3.编写程序:将3×3矩阵转置并输出。
(1)源程序清单:

(2) 运行结果截图:
指导教师意见:
签名: 年 月 日

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档