C语言程序设计重点必考实验题
C语言程序常考题.doc

1将成绩分为A,B,C等的程序#include<stdio.h>void main(){int score;char grade;printf("Please input a score:\n");scanf("%d",&score);grade=score>=90?'A':(score>=60?'B':'C');printf("%d belongs to %c\n",score,grade);}2判断是数字,字母,还是其他字符#include<stdio.h>void main(){char c;printf("Please input a character:");c=getchar();if(c>='A'&&c<='Z'||c>='a'&&c<='z')printf("%c is letter\n",c);else if(c>='0'&&c<='9')printf("%c is digit\n",c);elseprintf("%c is other character\n",c);}3三角形面积#include<stdio.h>#include<math.h>void main(){float a,b,c,s,area;scanf("%f,%f,%f",&a,&b,&c);s=(a+b+c)/2.0;area=sqrt(s*(s-a)*(s-b)*(s-c));printf("a=%7.2f,b=%7.2f,c=%7.2f\n",a,b,c);printf("area=%7.2f,s=%7.2f\n",area,s);}4输入数字,即可得到相应星期单词#include<stdio.h>void main(){int x;printf("Input integer number:");scanf("%d",&x);switch(x){case 1:printf("Monday\n");break;case 2:printf("Tuesday\n");break;case 3:printf("Wednesday\n");break;case 4:printf("Thursday");break;case 5:printf("Friday\n");break;case 6:printf("Saturday\n");break;case 7:printf("Sunday\n");break;default: printf("error\n");}}5圆的周长,面积,球的体积,表面积,圆柱体积#include<stdio.h>#define PI 3.1415926void main(){float r,h,l,s,sq,vq,vz;printf("请输入圆半径r,圆柱高h:\n");scanf("%f,%f",&r,&h);l=2*PI*r;s=PI*r*r;sq=4*PI*r*r;vq=4.0/3.0*PI*r*r*r;vz=PI*r*r*h;printf("圆周长: l=%6.2f\n",l);printf("圆面积: s=%6.2f\n",s);printf("圆球表面积:sq=%6.2f\n",sq);printf("圆球体积: sv=%6.2f\n",vq);printf("圆柱体积: sz=%6.2f\n",vz);}6某分段函数,输入X求解Y的值#include<stdio.h>void main(){float x,y;printf("Please input x:");scanf("&f",&x);if(x<-1)y=1;elseif(x<=1)y=2*x-5;elsey=5*x*x-1;printf("y=%10f\n",y);}7比较输入的两个数,并输出较大值#include<stdio.h>void main(){float x,y,max;printf("Please input two number x,y:");scanf("%f,%f",&x,&y);if(x>y)max=x;elsemax=y;printf("max=%7.2f",max);}例5.10 求两个整数的最大公约数和最小公倍数。
c语言编程题汇总

实验一:简单的C程序设计(2学时)一、实验方式:一人一机二、实验目的:1、了解C语言程序的编译环境和编写过程。
2、掌握C语言程序在Visual C++ 6.0环境下的调试过程。
3、初步了解C语言程序的特点。
4、掌握C语言的数据类型。
三、实验内容:1、计算两个数x和y的和。
(教材P5【例1-2】)2、从键盘输入华氏温度h,输出摄氏温度c(摄氏温度=5/9*(华氏温度-32))。
(实验教材P18)3、给定圆环,输入内圆环半径r1、外圆环半径r2,求出圆环的面积。
(实验教材P27)4、从键盘上输入两个整数x、y,实现两个数的交换,并求出最大值、最小值和两个数的平均值。
(实验教材P21)5、输入并运行以下程序,分析运行结果。
(实验教材P27)#include <stdio.h>void main( ){int i,j;i=8; j=10;printf(“%d,%d\n”,++i,++j);i=8; j=10;printf(“%d,%d\n”,i++,j++);i=8; j=10;printf(“%d,%d\n”,++i,i);i=8; j=10;printf(“%d,%d\n”,i++,i);}四、实验程序代码:1#include "stdio.h"void main(){int x,y,sum;x=123;y=456;sum=x+y;printf("sum is=%d\n",sum);}#include "stdio.h"main(){double h,c;// printf("Input h\n");scanf("%lf",&h);c=5.0/9*(h-32);printf("c=%lf",c);}3#include "stdio.h"#define p 3.14void main(){float r1,r2;double s1,s2,s;printf("please enter r1,r2:");scanf("%f%f",&r1,&r2);s2=r2*r2*p;s1=r1*r1*p;s=s2-s1;printf(“圆环面积为%lf\n",s);}4#include "stdio.h"void main(){int x,y,t,max,sum=0;float average;printf("请输入两个整数 x y:");scanf("%d%d",&x,&y);printf("您输入的两个整数 x y为:");printf("x=%d,y=%d\n",x,y);max=x;if(max<y) max=y;sum=x+y;average=sum/2.0;{t=x;x=y;y=t;}printf("交换后的两个整数 x y为:");printf("x=%d,y=%d\n",x,y);printf("最大值max=%d\n",max);printf("平均值average=%f\n",average); }五、实验运行结果(截图):2.3.4.实验二:顺序结构程序设计(2学时) 一、实验方式:一人一机二、实验目的:1、掌握标识符、常量、变量的定义及使用。
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、计算整数各位数字之和(10 分)输入一个3 位正整数,将其每一位的数字相加,输出和输入格式:输入一个3 位正整数。
变量数据类型为unsigned 。
输出格式:输出整数每一位相加后的整数和。
输入样例:输出样例:【参考答案】#include "" int main(){ unsigned int a,ge,shi,bai,sum;scanf("%d",&a);ge=a%10;shi=a/10%10;bai=a/100;sum=ge+shi+bai;printf("%d\n",sum);return 0;}2、计算代数表达式(10 分)求:输入格式:输入角度x。
变量数据类型为double 。
π 为。
输出格式:输出y 的值,精确到小数点后2 位。
输入样例:输出样例:【参考答案】#include <>#include <>#define PIint main(){double x,y;scanf("%lf",&x); y=sqrt((sin(60*PI/180)+1)*(sin(30*PI/180)+1)/cos(x*PI/180));printf("%.2lf",y);return 0;}3、逆序的三位数 (10 分)程序每次读入一个正3 位数,然后输出按位逆序的数字。
有结尾的0 时,输出不应带有前导的0。
比如输入700,输入格式:每个测试是一个3 位的正整数。
输出格式:输出按位逆序的数。
输入样例:输出样例:注意:当输入的数字含输出应该是7。
【参考答案】#include ""int main(){ int a,ge,shi,bai,b;scanf("%d",&a);ge=a%10;shi=a/10%10;bai=a/100;b=ge*100+10*shi+bai;printf("%d\n",b);return 0;}4、求整数均值 (10 分)本题要求编写程序,计算4 个整数的和与平均值。
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程序设计题库及详解答案

c程序设计题库及详解答案在C语言的学习过程中,掌握各类编程题目并理解其解答是至关重要的。
以下是一些常见的C程序设计题库及对应的详解答案。
1. 求两个数的最大公约数使用辗转相除法(欧几里得算法)可以求得两个数的最大公约数。
以下是求解的C程序代码:```c#include <stdio.h>int gcd(int a, int b) {while (b != 0) {int temp = b;b = a % b;a = temp;}return a;}int main() {int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);printf("最大公约数是:%d\n", gcd(num1, num2));return 0;}```2. 计算一个数的阶乘阶乘是一个数与所有小于它的正整数的乘积。
以下是计算阶乘的C 程序代码:```c#include <stdio.h>long long factorial(int n) {if (n == 0)return 1;return n * factorial(n - 1);}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);printf("%d 的阶乘是:%lld\n", num, factorial(num)); return 0;}```3. 判断一个数是否为素数素数是指只能被1和其本身整除的大于1的自然数。
以下是判断素数的C程序代码:```c#include <stdio.h>#include <math.h>int isPrime(int n) {if (n <= 1)return 0;for (int i = 2; i <= sqrt(n); i++) {if (n % i == 0)return 0;}return 1;}int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (isPrime(num))printf("%d 是素数。
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)。
5 大写字母转换成小写字母 输入一个大写英文字母,输出相应的小写字母。 6 编写摄氏温度、华氏温度转换程序。 从键盘输入一个摄氏温度,屏幕就显示对应的华氏温度,输出取两位小数。转换 公式:F=(C+32)×9/5 。
1
分支结构 7 判断数的符号 输入整数 x,若x 大于0,y=1;若x 等于0,y=0;否则,y=-1,最后输出y。 8 计算个人所得税 输入一个职工的月薪 salary,输出应交的个人所得税tax(保留2 位小数)。 tax = rate * (salary-850) 当 salary <= 850 时,rate = 0; 当 850 < salary <= 1350 时,rate = 5; 当 1350 < salary <= 2850 时,rate = 10; 当 2850 < salary <= 5850 时,rate = 15; 当 5850 < salary 时,rate = 20; 9、试编程判断输入的正整数是否既是 5 又是 7 的正倍数。若是,则输出 yes; 否则输出 no。
2
循环结构 10.是求 1 -100 之间的所有除 5 余 2 的数之和。 11.所谓回文数是从左往右和从右往左读起来都一样的数字,如 121 是一个回文 数,计算从 1881 开始到 4000 年为止,共有多少个年号是回文年号? 12.是求 1-5000 之间的能被 7 整除的前若干个偶数之和, 当和大于 600 时程序退 出,请将运行结果。 13.编程序求出 1~100 所有整数的平方和并输出结果。 14.一个数如果刚好与小于它的所有因子之和相等,则称该数为一个“完数”, 如:6=1+2+3,则 6 就是一个完数。求出 800 以内的所有完数之和。 15.所谓回文数是从左至右与从右至左读起来都是一样的数字,如:121 是一个 回文数。编写程序,求出 300—800 的范围内所有回文数的和。 16.有 36 个学生一起买小吃,共花钱 120 元,其中每个大学生花 4 元,每个中学 生花 2 元,每个小学生花 1 元,问大、中、小学生的人数分配共有多少种不同的 解(去掉某类学生为 0 的解)? 17. 求 1 至 100 之间的奇数和 18.输出 2 至 1000 之间在的质数。 19.输入一个 3 位的正整数,输出其各位上的数字。 20.对 15 个数进行排序,按从小到大的顺序输出。 21.一个数除了能被 1 和它本身整除之外,不能被其它整数整除,该数称为素数。 求出 1000-5000 之间素数的和。 22.求[600,900]之间素数的个数。
3
函数 23.求a+aa+aaa+…+aa…a 输入 2 个正整数a 和n, 求a+aa+aaa+…+aa…a(n 个a)之和。 要求定义并调用函数 fn(a,n),它的功能是返回aa⋯a(n 个a)。 例如,fn(3,2)的返回值是33。 24. 统计素数并求和 输入 2 个正整数m 和n(1<=m,n<=500),统计并输出m 和n 之间的素数的个 数以及这些素数的和。 要求定义并调用函数 prime(m)判断m 是否为素数。 25. 输出 Fibonacci 序列 输入 2 个正整数m 和n(1<=m,n<=10000), 输出m 和n 之间所有的Fibonacci 数。Fibonacci 序列(第1 项起):1 1 2 3 5 8 13 21 ...... 要求定义并调用函数fib(n), 它的功能是返回第n 项Fibonacci 数。 例如, fib(7) 的返回值是13。 26.用下列迭代公式求a的平方根。X从键盘输入。精读为10
5
指针 32.查找整数 定义一个函数 search(int list[],int n,int x),在数组list中查找元素x,若找 到则返回相应下标,否则返回-1。在main函数中调用search,main函数如下: void main() { int i, x, a[10], res; for(i=0; i<10; i++) scanf("%d", &a[i]); scanf("%d", &x); res = search(a, 10, x); printf("%d ", res); } 33.排序 定义函数void sort(int a[],int n),用选择法对数组a中的元素排序。自己定义 main函数,并在其中调用sort函数。 34.找最长的字符串 输入5个字符串,输出其中最长的字符串。 35.字符串复制 分别用字符数组和字符指针定义函数strmcpy(s,t,m), 将字符串t中从m个字符 开始的全部字符复制到字符串s中去。 36.删除字符 编写一个函数delchar(s,c),该函数将字符串s中出现的所有c字符删除。自己 定义main函数,并在其中调用delchar(s,c)函数。
x n 1 1 a ( xn ) 2 xn
-6
4
数组和字符串 27. 求最大值及其下标 输入一个正整数 n (1<n<=10),再输入n 个整数,输出最大值极其下标(设最大 值惟一,下标从0 开始)。 28. 逆序输出 输入一个正整数 n (1<n<=10),再输入n 个整数,按逆序输出这些数。 29. 交换最小值和最大值 输入一个正整数 n (1<n<=10),再输入n 个整数,将最小值与第一个数交换,最 大值与最后一个数交换,然后输出交换后的n 个数。 30. 求矩阵每行元素之和 输入 2 个正整数 m 和 n (1≤m, n≤6),然后输入该m 行 n 列矩阵a 中的元 素,分别求出各行元素之和, 并存入一维数组row 中, 再输出row. 31. 求字符串长度 连续输入一批以 # 结束的字符串(字符串的长度不超过80),遇 ## 则全部输入 结束。统计并输出每个字符串的有效长度。
C 语言程序设计实验 36 题 邓作杰 编 简单程序设计与基本数据处理 1 显示短句 在屏幕上显示一个短句“Programming in C is fun!” 2 求两个数的和与差 输入整数 a 和 b,计算并输出 a、b 的和与差。 3 求平方根 输入 1 个实数 x,计算并输出其平方根(保留 1 位小数) 4 华氏温度转换为摄氏温度 输入华氏温度 f,计算并输出相应的摄氏温度 c(保留 2 位小数)。c = 5/9(f-32).
6