C语言程序设计课程实验题目.
华农C语言程序设计实验

华农C语言程序设计实验[题目1118:赋值表达式与赋值语句,写出程序运行结果]阅读下面程序,写出运行结果:void main(){ float a;int b, c;char d, e;a=3.5;b=a;c=330;d=c;4e='\\';printf("%f,%d,%d,%c,%c", a,b,c,d,e);}运行结果为:3.500000,3,330,J,\[提示]赋值语句具有类型转换的功能,但可能会改变数据。
3. 基本运算[题目1119:基本运算,写出程序运行结果]阅读下面程序,写出运行结果:void main(){ int a, b, c;float d=15, e, f;a=35%7;b=15/10;c=b++;e=15/10;f=d/10;printf("%d,%d,%d,%f,%f,%f", a,b,c,d,e,f);}运行结果为:0,2,1,15.000000,1.000000,1.500000[提示]除法分整除与普通除法之分。
5[题目1126:字符的输入与输出]编程实现由键盘输入一个字符后,在屏幕上输出该字符。
参考程序:#include "stdio.h"main(){ char ch;ch = getchar();putchar(ch);}[题目1127:计算加法]编程实现由键盘输入一个加法式,输出正确的结果。
(两个加数均为整数)[第一组自测数据]参考程序:#include "stdio.h"main(){ int a, b;scanf("%d%*c%d", &a,&b);printf("%d", a+b);}[题目1014:求圆面积]参考程序:#include "stdio.h"main(){ float area,r;scanf("%f",&r);area=3.14159*r*r;printf("%0.2f",area);}3[题目1015:计算摄氏温度值]参考程序:#include<stdio.h>void main(){ float f,c;scanf("%f",&f);c=5.0/9*(f-32);printf("%.2f",c);}4参考程序:#include "stdio.h"#include "math.h"void main(){ float a,b;scanf("%f,%f",&a,&b); if(fabs(a*a+b*b-1)<1e-3) printf("Y\n");else printf("N\n");}}[题目1017:求数的位数] 参考程序:main(){ int n,place;scanf("%ld",&n);if(n>99999999) place=9;else if(n>9999999) place=8;else if(n>999999) place=7;else if(n>99999) place=6;else if(n>9999) place=5;else if(n>999) place=4;else if(n>99) place=3;else if(n>9) place=2;else place=1;printf("%ld\n",place);}[题目1018:数的排序]3,6,9参考程序:#include<stdio.h>main(){ int a,b,c,t;scanf("%d,%d,%d",&a,&b,&c); if(a>b) {t=a;a=b;b=t;}if(a>c) {t=a;a=c;c=t;}if(b>c) {t=b;b=c;c=t;}printf("%d,%d,%d",a,b,c);}参考程序:#include <stdio.h>main(){ char a,b,c,d,e;scanf("%c%c%c%c%c",&a,&b,&c,&d,&e); if(a<='Z'&&a>='A') a=a+32;if(b<='Z'&&b>='A') b=b+32;if(c<='Z'&&c>='A') c=c+32;if(d<='Z'&&d>='A') d=d+32;if(e<='Z'&&e>='A') e=e+32;printf("%c%c%c%c%c",a,b,c,d,e);}#include "stdio.h"main(){ int a,b,c,d,e;scanf("%d %d %d %d %d",&a,&b,&c,&d,&e) ;if(a%27==0) printf("YES\n");elseprintf("NO\n");if(b%27==0) printf("YES\n");elseprintf("NO\n");if(c%27==0) printf("YES\n");else printf("NO\n");if(d%27==0) printf("YES\n");else printf("NO\n");if(e%27==0) printf("YES\n");else printf("NO\n");}参考程序:#include "stdio.h"main(){ int n;scanf("%d",&n);if(n<0)printf("negative\n");else printf("positive\n");if(n%2==0)printf("even\n"); else printf("odd\n");}[题目1023:简单计算器]参考程序:#include <stdio.h>int main(){ float a,b,c;char op;scanf("%f%c%f",&a,&op,&b);switch(op){ case '+':c=a+b;break;case '-':c=a-b;break;case '*':c=a*b;break;case '/':c=a/b;break;default:printf("error");break;}printf("result=%.2f",c);}9[题目1024:计算阶乘]输入正整数n,计算n!,结果用长整型数表示(注n!=1*2*3*...*n)参考程序:#include<stdio.h>main(){ long i,n=1,a;scanf("%ld",&a);for(i=1;i<=a;i++) n=n*i;printf("%ld\n",n);}[题目1025:计算数列和] 参考程序:#include<stdio.h>main(){ long n,sum=0,i,t=1; scanf("%ld",&n);for(i=1;i<=n;i++){ sum=sum+t;t=t+2;}printf("%ld\n",sum);}或#include <stdio.h>main(){ long n,sum;scanf("%ld",&n);sum=n*n;printf("%ld",sum);}注:评判系统不对程序实现细节进行分析,只对运行结果进行评测。
c语言课程设计参考题目

c语言课程设计参考题目
以下是一些可以作为C语言课程设计参考的题目:
1. 编写一个简单的C程序,实现一个计算器的功能,包括按键输入、按位运算、结果输出等。
2. 设计一个C语言的数据结构,例如链表、树、图等。
3. 实现一个简单的程序,用于检测一个字符串是否包含某个特
定的字符集。
4. 设计一个C程序,实现一个文件管理系统,包括文件读取、修改、删除、创建等操作。
5. 编写一个C程序,模拟一个简单的计算机操作系统,例如进程
管理、内存管理等。
6. 设计一个C程序,用于处理一个字符串,包括查找特定字符、
替换特定字符、翻译文本等。
7. 实现一个简单的编译器,用于编译C程序。
8. 设计一个C程序,用于实现一个网络应用程序,包括用户登录、数据发送、数据接收等。
9. 编写一个C程序,用于实现一个简单的图形用户界面,例如窗口、菜单、按钮等。
10. 设计一个C程序,用于处理一个音频播放器,包括音频读取、播放、暂停、中断等。
这些题目都是相对来说比较难的,但也都是C语言编程中比较经
典的应用场景。
通过这些题目的训练,可以帮助学生更好地掌握C语
言的编程思想和技巧。
C语言课后实验设计题目及答案

设 total:桃子的总数
x1 :前一天的桃子数
x2 : 后一天的桃子数
day: 天数
计算公式:x1=(x2+1)*2 第1天的桃子数是第2天桃子数加1后的2倍。
(2)求1-1/2+1/3-1/4+⋯⋯,输入1个正整数n(n<=100),计算并输出1-1/2+1/3-1/4+⋯⋯的前n项和(保留3位小数)。
实验项目四 分支结构程序设计
题目
(1)输入四个整数,输出其中的最小值。
实验报告
1、主程序:
// zx.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "stdio.h"
#include "math.h"
}
2、主程序:
// s.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "stdio.h"
#include "math.h"
int main(int argc, char* argv[])
{
x=x*x*x*x;return(x);
}
int main(int argc, char* argv[])
{
float x;
printf("请输入X=");
scanf("%f",&x);
double s;
C语言程序设计实验与习题(1-4)

ffB v vbvv bgbb实验一C程序运行环境及简单程序的运行2.程序改错并调试改正后的程序⑴下列程序的功能为:计算x*y的值并将结果输出,程序中有8处错误,尝试改正并上机调试之(程序以文件名sy1_2.cpp#include <stdio.h>void main{ int x=2;y=3;aA=x*yprint ("a=%d",a);printf(‘\n’);}⑵下列程序的功能为:输入圆的半径,计算圆面积并将结果输出;程序中有9处错误,尝试改正并上机调试之(程序以文件名sy1_3.cpp存盘)。
#include stdio.h;int mian();float r; area;printf("input r:\n"); scanf("%f",r);area=3.14159r*r;printf("r=%f , area=%f\n"3.编写程序并上机调试⑴输入三个整数a、b、c,显示出其中的最大值。
4.分析与总结⑴总结C程序的结构和书写规则。
⑵阅读:附件1-C语言程序的跟踪调试。
特别提示:当程序在编译时发现很多错误,此时应从上到下逐一改正,或改一个错误,就重新再编译,因为有时一个错误会引起很多错误信息。
12习题一一、选择题参考答案:1~5 C B A C D 6~10 C C A C B 11~14 A A C B二、综合题绘制NS 算法流程图。
(1)输入10个数,求其中的最大值。
(2)输入3个数,将它们升序排列输出。
(3)输入2个数,求它们的最大公约数。
(4)输入一元二次方程的系数a 、b 、c ,判断其根。
实验二顺序结构程序设计1.阅读程序,尝试写出程序的运行结果,然后输入并调试程序,对照其实际输出与分析的结果是否一致,若不一致,请找出原因。
⑴以下程序用于测试C中不同类型数据所占内存字节数,运行并体会sizeof运算符的使用方法。
C语言程序设计本科实验题目1-3

C语言程序设计本科实验题目1-31. 实验题目:学生信息管理系统2. 实验目的:通过设计一个学生信息管理系统,巩固和应用C语言的基本知识和编程技巧。
3. 实验内容:3.1 设计一个数据结构,用于存储学生的基本信息,包括学号、姓名、性别、年龄和成绩。
3.2 编写函数实现以下功能:3.2.1 添加学生信息:从键盘输入学生的基本信息,并将其添加到学生信息管理系统中。
3.2.2 查询学生信息:根据学号或姓名查找学生的基本信息,并在屏幕上输出。
3.2.3 修改学生信息:根据学号或姓名修改学生的基本信息。
3.2.4 删除学生信息:根据学号或姓名删除学生的基本信息。
3.2.5 统计学生人数:统计学生信息管理系统中学生的总人数。
3.2.6 查找平均成绩:计算并输出学生信息管理系统中所有学生的平均成绩。
3.3 编写主函数,调用以上函数完成学生信息的输入、查询、修改、删除和统计等功能。
4. 实验要求:4.1 设计学生信息的数据结构时,要考虑存储的有效性和合理性,以保证数据的完整性和准确性。
4.2 编写的函数要具有良好的模块化和可重用性,函数功能要明确,代码要简洁规范。
4.3 程序的输入和输出应具有一定的界面友好性,给用户提供清晰明了的操作提示。
4.4 实验报告中需包含程序的运行结果和测试用例,以及对程序功能和性能的评价。
5. 实验思路:5.1 首先,定义一个结构体,用于存储学生的基本信息;结构体包括学号、姓名、性别、年龄和成绩等成员变量。
5.2 然后,编写添加学生信息的函数,根据用户输入的数据,利用结构体变量存储相应的学生信息,并将学生信息添加到学生信息管理系统中。
5.3 接下来,编写查询学生信息的函数,根据用户输入的学号或姓名,在学生信息管理系统中查找相应的学生信息,并在屏幕上输出。
5.4 然后,编写修改学生信息的函数,根据用户输入的学号或姓名,在学生信息管理系统中找到相应的学生信息,并根据用户输入的新数据,修改相应的学生信息。
c语言程序设计实验.设计.习题.答案.顺序结构与逻辑运算

}
实验四部分
4-1-a该程序的功能是:输入两个数:a、b,判断a*a+b*b的值,若a*a+b*b的值等于3或1,则y=a+b;若a*a+b*b的值等于0,则y=b-a;若a*a+b*b的值等于其他值,则输出“eerror”;最后输出y的值。
运行结果画面:
#include<stdio.h>
main()
{
int a,M;
scanf("%d",&a);
M=a>0?a:-a;
printf("abs(a)=%d\n",M);
}
4-4运行结果画面:
#include<stdio.h>
main()
{
int c,t,m;
printf("input the number of coat and trousers your want buy:\n");
scanf("%d",&x);
h=x/60;
m=x%60;
printf("%d小时%d分钟",h,m);
}
3-7我使用的算法:进行千分位转换,四舍五入。
运行结果画面:
#include<stdio.h>
main()
{
double x;
scanf("%lf",&x);
printf("%7.2f\n",x);
怎样终止调试状态(程序复位)?在菜单栏中选择“调试”,然后选择“StopDebugging”。
单步调试状态下,向下运行一条语句的操作方法(分两种情况回答,第一种,跟踪到自定义函数内部,第2种,不跟踪到自定义函数内部):第一种选择“Step Into”,跟踪到自定义函数内部;第2种选择“Step over”,不跟踪到自定义函数内部
C语言程序设计练习题(答案)

C语言程序设计练习题(答案)1.1上机实训项目实验1实验步骤1、进入VC环境从“开始”→“程序”→“Microsoft Visual Studio 6.0”→“Microsoft Visual C++ 6.0”,这时进入VC集成环境的主菜单窗口,屏幕显示如图1_1所示。
图1-1 VC集成环境的主菜单窗口2、VC环境下C程序的编辑、连接和运行(1)新建一个源程序①在VC环境中选择“文件”菜单,然后单击“新建”菜单项。
如图1-2所示图1-2 选择新建② 在弹出的新建对话框中设置好相应的内容,如图2-2所示。
要事先准备好保存文件的目录,例d:\lx 目录。
在图1-3中“文件”一栏的源程序文件的扩展名一定要输入C 语言程序的扩展名“.c ”。
设置好后,单击“OK ”,就回到了VC++的编辑界面,即将进行输入和编辑的源程序文件example.c 文件存放在D 盘的LX 目录下。
图1-3 新建对话框的设置③ 在图1-4的工作区中,输入源程序2.设置源程序的文件名,扩展名一定要为“.c ”且一定要输入扩展名1.单击该处3.设置存放目录图1-4 输入、编辑源程序④输入源程序文件后可在主菜单栏中选择“文件”(FILE),并在其下拉菜单中选择“保存”(SAVE),如图1-5所示。
图1-5 保存源程序⑤源程序的编译如图2-6所示,单击主菜单的“编译”(Build),在其下拉菜单中选择“编译example.c”(Compile example.c),或者单击工具栏上的“编译”按钮,如图1-6所示。
在单击“编译”后,屏幕上会出现一个如图1-7所示的对话框。
内容是“This build command requires an activeproject worksapce,Would you like to create a default project worksapce?”,要创建一个默认的项目工作区,单击“是(Yes)”,表示同意,将开始编译;单击“No ”,表示不同意,将取消编译。
C语言程序设计综合实训题目

一、参考题目及选题(1)学生信息管理系统设计问题描述:学生信息包括:学号, 姓名, 年龄, 性别, 出生年月, 政治面貌, 籍贯, 家庭住址, 电话, E-mail等。
试设计一学生信息管理系统, 使之能提供以下功能:(1)系统以菜单方式工作(2)学生信息录入功能(学生信息用文件保存)(3)学生信息浏览功能(4)学生信息排序、查询功能对信息进行排序, 可以按学号, 按姓名, 按性别, 按出生年月日, 按籍贯进行查询(5)信息统计a) 可以按性别, 按出生年, 按籍贯统计学生人数b) 可以按班级统计学生人数c) 可以按政治面貌统计学生人数按班级统计学生党员人数, 团员人数, 以及所占比例, 设计并输出统计报表。
(6)学生信息的删除与修改●设计要求:●界面比较美观;有一定的容错能力, 比如输入的成绩不在0~100之间, 就提示不合法, 要求重新输入;●最好用链表的方式实现。
算法分析:首先, 一个学生包括这么多的属性, 应该考虑定义一个结构, 其次, 我们应该考虑数据的存储形式:是定义一个数组来存储, 还是定义一个链表呢?在这里假如我们以数组的方式来存储, 当然可以, 但是我们知道, 假如我们定义一个数组的话, 我们首先必须知道学生人数大概是多少, 以便我们确定数组的大小, 但是题目中没有给出, 而且题目要求中有大量的删除、插入操作, 所以用链表的方式比较方便。
对于菜单的实现, 其实也比较简单, 首先我们用printf语句把程序的功能列出来, 然后等待用户输入而执行不同的函数, 执行完了一个功能后又回到菜单。
文件的读写操作大家参照书中的有关文件的章节。
(2)、学生综合测评系统每个学生的信息为: 学号、姓名、性别、家庭住址、联系电话、语文、数学、外语三门单科成绩、考试平均成绩、考试名次、同学互评分、品德成绩、任课教师评分、综合测评总分、综合测评名次。
考试平均成绩、同学互评分、品德成绩、任课教师评分分别占综合测评总分的60%, 10%, 10%, 20%。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言程序设计课程实验题目(每组实验内容2学时)实验一C语言上机步骤实验目的:熟练掌握在Turbo C系统上编辑、编译、连接和运行C程序的方法。
实验内容:1.启动Turbo C系统。
①进入MS-DOS方式。
②CD\TC↙③TC↙2. 编辑修改源程序。
①按“F3”,然后输入:exam↙(默认文件名为“NONAME.C”)②输入下列源程序。
main(){ int a,b,sum;a=1;b=2;sum=a+b;printf("sum=%d\n",sum);}③源程序存盘。
方法一:按“F2”键,将以源文件名存盘。
方法二:选取菜单项“File/Write To”,将以新文件名存盘。
3.编译连接程序。
方法一:编译、连接分步执行。
按“Alt+F9”键,编译生成目标文件“exam.obj”;再按“F9”,连接生成可执行文件“exam.exe”方法二:编译、连接连续执行。
按“F9”键,首先编译生成目标文件“exam.obj”;接着自动连接生成可执行文件“exam.exe”4.运行程序。
方法一:编辑状态下,按“Ctrl+F9”键,此时是编译、连接、运行连续进行。
方法二:按“Alt+X”键,然后输入:exam↙(必须编译、连接成功)。
5.显示运行结果。
若按方法一运行程序,按“Alt+F5”键,查看运行结果,按任意键返回到Turbo C编辑状态。
若按方法二运行程序,直接显示结果。
6.退出。
按“Alt+x”键,退出Turbo C。
实验二运算符和表达式实验目的:掌握C语言运算符的优先级和结合方向。
实验内容:1.若有定义int x,a,b,c,*p=&x;,写出顺序执行下列表达式后x的值,然后通过程序验证。
要求:先写出运算结果,然后利用程序验证。
①x=a=b=10②x=25%(c=3)③*p+=2+3④x/=(x+(*p%=2),(a&&5+3))⑤x*=x+=x-=x⑥x=((a=4%3,a!=1),++*p>10)验证程序:main(){ int x,a,b,c,*p=&x;x=a=b=10;printf("x=%d\n",x);x=25%(c=3);printf("x=%d\n",x);*p+=2+3;printf("x=%d\n",x);x/=(x+(*p%=2),(a&&5+3));printf("x=%d\n",x);x*=x+=x-=x;printf("x=%d\n",x);x=((a=4%3,a!=1),++*p>10);printf("x=%d\n",x);}2.若有定义int a=2,b=-3,c=4,*p=&a,*q=&b;,计算下列各表达式的值,然后通过程序验证。
要求:先写出运算结果,然后利用程序验证。
①a>b&&b>c②!(b>c)+(b!=*p)||(a+b)③a++-c+*q④++a-c+++b⑤b%=c+a-c/7⑥(float)(a+b)/2+*q⑦!(a==b+c)&&(*p-a)⑧!c+1+c&&b+c/2验证程序:main(){ int a,b,c,*p=&a,*q=&b;a=2;b=-3;c=4;printf("a>b&&b>c=%d\n",a>b&&b>c);a=2;b=-3;c=4;printf("!(b>c)+(b!=*p)||(a+b)=%d\n",!(b>c)+(b!=*p)||(a+b));a=2;b=-3;c=4;printf("a++-c+*q=%d\n",a++-c+*q);a=2;b=-3;c=4;printf("++a-c+++b=%d\n",++a-c+++b);a=2;b=-3;c=4;printf("b%%=c+a-c/7=%d\n",b%=c+a-c/7);a=2;b=-3;c=4;printf("(float)(a+b)/2+*q=%f\n",(float)(a+b)/2+*q);a=2;b=-3;c=4;printf("!(a==b+c)&&(*p-a)=%d\n",!(a==b+c)&&(*p-a));a=2;b=-3;c=4;printf("!c+1+c&&b+c/2=%d\n",!c+1+c&&b+c/2);}实验三基本输入输出函数实验目的:熟练掌握数据的输入输出格式。
实验内容:1.写出下列程序的输出结果。
要求:先写出输出结果,然后利用程序验证。
#include "stdio.h"main(){ int a=65,b=67,c=67;float x=67.8564,y=-789.124;char C='A';long n=1234567;unsigned u=65535;putchar(C);putchar('\t');putchar(C+32);putchar(a);putchar('\n');printf("%d%d\n",a,b);printf("%c%c\n",a,b);printf("%3d%3d\n",a,b);printf("%f,%f\n",x,y);printf("%-10f,%-10f\n",x,y);printf("%8.2f,%8.2f,%.4f,%.4f,%3f,%3f\n",x,y,x,y,x,y); printf("%e,%10.2e\n",x,y);printf("%c,%d,%o,%x\n",c,c,c,c);printf("%ld,%lo,%lx\n",n,n,n);printf("%u,%o,%x,%d\n",u,u,u,u);printf("%s,%5.3s\n","COMPUTER","COMPUTER"); }2.根据输入,写出下列程序的输出结果。
要求:先写出输出结果,然后利用程序验证。
#include "stdio.h"main(){ char a,*p1=&a;int b,*p2=&b;float c,*p3=&c;a=getchar();putchar(*p1);putchar('\t');putchar(a>='a'&&a<='z'?a-32:a); putchar('\n');getchar();scanf("%c%d%f",&a,&b,&c);printf("a=%c b=%d c=%.2f\n",a,b,c); getchar();scanf("a=%cb=%dc=%f",p1,p2,p3); printf("a=%d b=%c c=%.2f\n",a,b,c); }输入:a↙输出:输入:b□65□3.1234↙输出:输入:a=b□b=65□c=3.1234↙输出:实验四 分支语句实验目的:掌握使用if~else 语句和switch~case 语句实现分支结构的方法。
实验内容:1.求出下面分段函数的值 y=⎪⎩⎪⎨⎧>+≤<≤101210000x x x x x要求:(1)使用if~else 语句(2)x 的值从键盘输入2.运输公司对用户计算运费。
距离越远,每公里运费越低,标准如下: s<250km 无折扣250<=s<500 2%折扣500<=s<1000 5%折扣1000<=s<2000 8%折扣2000<=s<3000 10%折扣3000<=s 15%折扣设每公里每吨货物的基本运费为p ,货物重为w ,距离为s ,折扣为d ,则总运费计算公式为:f=p*w*s*(1-d),编写程序计算运费。
要求:(1)使用switch~case 语句。
(2)p 、w 、s 的值从键盘输入。
实验五 循环语句实验目的:掌握使用三种循环语句实现循环结构的方法。
实验内容:1.猴子吃桃问题。
猴子第一天摘下若干个桃子,当即吃了一半另一个,以后每天早晨都吃剩下的一半另一个,到第十天早晨再想吃时,就剩一个桃子。
问第一天共摘了多少桃子。
要求:分别用三种语句编写程序。
2.编写程序验证下列结论:任何一个自然数n的立方都等于n个连续奇数之和。
例如:13=1;23=3+5;33=7+9+11。
要求:程序对每个输入的自然数计算并输出相应的连续奇数,直到输入的自然数为0时止。
实验六编译预处理实验目的:掌握宏定义、宏调用,以及宏展的处理过程,掌握文件包含的概念和使用。
实验内容:1.试分析以下宏替换后的形式,计算输出结果。
要求:先计算运行结果,然后利用程序验证。
#include "stdio.h"#define CX(y) 2.5+y#define PR(a) printf("%d",(int)(a))#define PR1(a) PR(a); putchar('\n')main(){ int x=2;PR1(CX(5)*x);}2.通过宏调用方式,求从n个数的最大值。
要求:数据从键盘输入。
实验七一维数组实验目的:掌握一维数组的定义、初始化,以及一维数组元素的下标法引用和指针法引用。
实验内容:1.数组a中存放10个非0整数,编写程序,将数组a中的所有正数存放在数组的前面,负数存放在数组的后面。
要求:(1)数组元素值从键盘输入。
(2)用下标法和指针法两种方法。
2.将数组a中的10个元素后移m位,移出的m位顺序存放在数组的前位。
要求:(1)数组元素值在程序中初始化。
(2)m的值从键盘输入。
(3)用下标法和指针法两种方法。