c语言实验题

合集下载

C语言实验7(附参考答案)

C语言实验7(附参考答案)

实验7:程序的输入输出实验目的:1、熟悉字符的输入输出和格式化的输入输出,了解基本规则。

2、进一步熟悉C语言程序的编辑、编译、连接和运行的方法。

实验内容:1、若int a,b; scanf(“%d%d”,&a,&b); 不可以用___A____作为输入的分隔符。

A), B)空格 C)回车 D) TAB键2、已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当用户从键盘输入时,正确的数据输入方式是_______。

int a1,a2; char c1,c2;scanf(“%d%d”,&a1,&a2);scanf(“%c%c”,&c1,&c2);A)1020AB<CR> B)10 20<CR>AB<CR>C)10 20 AB<CR> D)10 20AB<CR>3、阅读以下程序,当输入数据的形式为25,13,10<CR> 正确的输出结果为_______。

main(){int x,y,z;scanf(“%d%d%d”,&x,&y,&z);printf(“x+y+z=%d\n”,x+y+z);}A)x+y+z=48 B)x+y+z=35 C)x+z=35 D)不确定值4、根据定义和数据的输入方式,输入语句的正确形式为_______。

已有定义:float f1,f2;数据的输入方式:4.523.5A)scanf(“%f,%f”,&f1,&f2);B)scanf(“%f%f”,&f1,&f2);C)scanf(“%3.2f %2.1f”,&f1,&f2);D)scanf(“%3.2f%2.1f”,&f1,&f2);5、以下说法正确的是_______。

A)输入项可以为一实型常量,如scanf(“%f”,3.5);B)只有格式控制,没有输入项,也能进行正确输入,如scanf(“a=%d,b=%d”);C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(“%4.2f”,&f);D)当输入数据时,必须指明变量的地址,如scanf(“%f”,&f);6、已有定义int x; float y;且执行scanf(“%3d%f”,&x,&y);语句,若从第一列开始输入数据12345 678<回车>,则x的值为_______ ,y的值为_______。

计算机C语言实验报告含答案

计算机C语言实验报告含答案

高级语言程序设计(C语言)实验报告。

………………………………………………………………………………………………一、实验题目:语句与顺序结构控制程序设计1)编写程序,已知圆半径radius=1.25,求圆周长和面积。

源代码:运行结果:#include <stdio.h> d=7.853981#define PI 3.1415926 s=4.908735void main(){float r=1.25,d,s;d=2.0*PI*r;s=PI*r*r;printf("d=%f\n",d);printf("s=%f\n",s);}2)编写程序完成大写字母的小写转换。

源代码:运行结果:#include <stdio.h> 请输入一个大写字母:H void main() H h{char ch1,ch2;printf("请输入一个大写字母:");ch1=getchar();ch2=ch1+32;printf("%c %c\n",ch1,ch2);}3)任意从键盘输入一个三位整数,要求正确分离出它的个位、十位和百位数,并分别在屏幕上显示。

源代码:运行结果:#include <stdio.h> 请输入一个整数 :123 void main() b=1,s=2,g=3{int a,g,s,b;printf("请输入一个整数:");scanf("%d",&a);b=a/100;s=(a%100)/10;g=a%10;printf("b=%d,s=%d,g=%d\n",b,s,g);}二、实验题目:选择结构程序设计程序设计1)设变量a、b、c分别存放从键盘输入的3个整数。

编写程序,按从大到小的顺序排列这3个整数,使a成为最大的,c成为最小的,并且按序输出这3个整数。

c语言实验题目

c语言实验题目

实验3 顺序结构编程 (2)实验4 if分支结构编程 (3)实验5 if分支结构和switch分支结构编程 (5)实验6 分支结构嵌套和for循环编程练习 (10)实验7和while和do-while练习 (13)实验8 for循环嵌套练习 (16)实验9 函数设计编程练习 (19)实验10函数设计编程练习 (21)实验11 数组编程练习 (24)实验3 顺序结构编程实验题目1 输入两个整型数x,y,求x,y之和、差、积、x/y的商和余数提示: (1)定义整形变量变量int x,y;(2)和、差、积、商和求余数的运算符分别是+、-、*、/、%(3)输入两个整型数可以调用scanf()函数scanf("%d %d", &x,&y);实验题目2 按下列要求编写程序,对变量a,b,c进行unsigned int型说明,将65赋给a,66赋给b,67赋给c,对变量a,b,c用%c格式输出显示提示: (1)定义变量unsigned int a ,b,c;(2)字符型数据输出的格式控制符是%c(3)C语言中的赋值符号是=“65赋给a”表示为a = 65;实验题目3 输入三角形的三条边的边长,求三角形的面积从键盘输入三个整数,判断能否构成三角形的三边,如果能就计算输出三角形面积,按照下图给出的公式计算三角形的面积:s=(a+b+c)/2a,b,c代表三角形的三条边提示1、开根号的数学库函数是sqrt,例如y=sqrt(x),表示求变量x开根号,并把结果赋值给变量y。

2、调用数学库函数必须用如下命令#include <math.h>要求:(1)存储三角形三边的变量用double型(2)打印三角形面积时小数保留两位%.2lf实验题目4 已知半径r=3.4cm,编程求圆的周长和面积:提示: (1)定义浮点型变量使用关键字float;(2)浮点型数据输出的格式控制符是%f(3)C语言中没有∏这个符号,编写程序时直接使用3.14159。

C语言实验报告题及答案

C语言实验报告题及答案

《C程序设计实验》实验一C程序开发环境(2学时)1.实验目的熟悉C语言的集成开发环境,了解菜单的使用方法;掌握C语言程序上机的编辑、编译、连接、运行的基本步骤;了解C语言程序的结构。

2.实验内容(1)熟悉C语言程序上机的编辑、编译、连接、运行的基本步骤;(2)输入并调试、运行下面的程序。

#include <stdio.h>int main( ){printf ("This is a C program.\n");return 0;}(3)输入并调试、运行下面的程序。

#include <stdio.h>int main( ){int max(int x,int y);int a,b,c;scanf("%d,%d",&a,&b);c = max(a,b);printf("max=%d\n",c);return 0;}int max(int x,int y){int z;if (x > y) z = x;else z = y;return(z);}3.实验仪器设备微型计算机一套,配置Windows系统和VC++6.0/Turbo C3.0 软件。

4.问题讨论将printf函数改为print,调试并分析结果。

实验二数据类型、运算符与表达式(2学时)1.实验目的掌握整型、字符型和实型变量的定义和使用;掌握算术运算符的使用;掌握C语言表达式的运算规则。

2.实验内容(1)输入并调试、运行下面的程序。

#include <stdio.h>int main(){char c1,c2;c1=97;c2=98;printf("%c %c\n",c1,c2);printf("%d %d\n",c1,c2);return 0;}(2)输入并调试、运行下面的程序。

#include <stdio.h>int main(){int i,j,m,n;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d\n",i,j,m,n);return 0;}3.实验仪器设备微型计算机一套,配置Windows系统和VC++6.0/Turbo C3.0 软件。

C语言实训题及参考答案

C语言实训题及参考答案

C语言实训题及参考答案第一题:编写一个程序,将输入的两个整数进行加法运算,并输出结果。

参考答案:```c#include <stdio.h>int main() {int num1, num2, result;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);result = num1 + num2;printf("加法结果:%d", result);return 0;}```第二题:编写一个程序,判断输入的整数是否为偶数,并输出“是”或“否”。

参考答案:```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);if (num % 2 == 0) {printf("是");} else {printf("否");}return 0;}```第三题:编写一个程序,计算输入字符串的长度,并输出结果。

参考答案:```c#include <stdio.h>#include <string.h>int main() {char str[100];int length;printf("请输入一个字符串:");scanf("%s", str);length = strlen(str);printf("字符串长度:%d", length);return 0;}```第四题:编写一个程序,将输入的字符串反转,并输出结果。

参考答案:```c#include <stdio.h>#include <string.h>int main() {char str[100];int i, length;printf("请输入一个字符串:");scanf("%s", str);length = strlen(str);for (i = length - 1; i >= 0; i--) {printf("%c", str[i]);}return 0;}```第五题:编写一个程序,将输入的数组元素按从小到大的顺序排序,并输出结果。

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 语言 实验 + 答案 4题

C 语言 实验 + 答案  4题
x1=x0-f/f1;
}while(fabs(x1-x0)>1e-5);
printf("the root of equation is %5.2f\n",x1);
}
第四题:
第一个:
#include<stdio.h>
void main()
{
int day,x1,x2;
day=9;
x2=1;
while(day>0)
(3)用牛顿迭代法求方程2x3-4x2+3x-6=0在1.5附近的根。
在得到正确结果后,请修改程序使所设的x初始值由1.5改变为100、1000、10000,再运行,观察结果,分析不同的x初值对结果有没有影响,为什么?
修改程序,使之能输出对迭代的次数有无影响。
{
x1=(x2+1)*2;
x2=x1;
day--;
}
printf("total=%d\n",x1);
}
第二个:
#include<stdio.h>
void main()
{
int day,x1,x2;
day=9;
x2=1;
while(day>0)
{
x1=(x2+2)*2;
x2=x1;
day--;
}
printf("total=%d\n",x1);
if(m%i==0)
printf("%5d",i);
printf("\n");
}
}
}
第三题:
#include<stdio.h>
#include<math.h>

C语言综合实验题目

C语言综合实验题目

C语言综合实验题目(说明:每位同学必须按时完成所指定的综合实验题目,并提交详细的实验报告。

如果没有完成本次综合实验,总实验成绩以0分计,实验题目不能随意更改。

综合实验报告提交截止时间7月7号,其他实验提交截止时间7月3号)一.基本题目1.航班售票系统(请学号末尾位为0和5的同学完成)航班售票系统,要求完成以下功能:1)假设该民航有若干航班,要求实现增加航班和取消某个航班的功能。

2)查询:根据用户提出的终到站查询航班号、售票情况等航班信息;也可根据航班号,列出该航班已订票的乘客名单。

3)订票:根据航班号为客户订票,如该航班有余票,则为客户订票;如该航班已满员,则显示相应信息。

4)退票:按乘客要求退出已预定的机票。

提示:数据结构:可以使用链表表示航线表,对每个航班应包括以下信息:航班号、到达港、总座位数、余票额、乘客名单等;其中乘客名单应为一个单链表,每个乘客的信息有:乘客姓名、证件号码、座位号等,为方便查找,可考虑按乘客姓名排序;相应数据类型示范如下:struct cnode{ char name[20]; /*乘客姓名*/char idcard[30]; /*证件号码*/int seatno; /*座位号*/struct cnode *clink; /*下一乘客指针*/};struct pnode{ int no; /*航班号*/char destin[30]; /*终到站*/int limit,rest; /*总座位数、余票额*/struct cnode *clist; /*乘客名单*/struct pnode *plink; /*下一航班指针*/};2.银行帐户管理(请学号末尾位为1和6的同学完成)要求建立二进制文件存储银行帐户信息,其中每个用户帐户信息中要求保存帐号、用户身份证号码、用户姓名、用户地址、帐户金额等,完成以下功能:1)录入新帐户;2)查询帐户情况,根据输入的帐号查询用户情况和帐户金额;3)修改帐户信息,要求用户输入帐号,根据用户需要修改除了帐号之外的其余信息;4)删除帐户:根据输入的帐号找到要删除的帐号信息以后,经确认后删除该帐号信息;提示:程序中定义用户帐户结构体:struct account{char accountid[10];char customerid[30];char name[20];char address[30];float balance; };其中存储用户帐户信息的二进制文件中每个数据类型应为struct account,在操作之前可以考虑先将文件中的用户帐户信息读出并建立成一个链表,然后进行查询、删除等操作,可节省读写文件的时间;当录入新帐户信息、修改帐户信息之后,同时更新相应文件的内容;3.学生信息管理系统(请学号末尾位为2和7的同学完成)用户可以选择1-7可以分别进行学生信息的查看、添加、删除,修改,计算平均成绩,保存,退出系统操作。

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

数组1:显示十个数据并找到最大值#include<stdio.h>void main(){int temp[10],i,max;i=0;while(i<10){scanf("%d",&temp[i]);i++;}max=temp[0];for(i=0;i<10;i++)if(max<temp[i])max=temp[i];printf("max=%d\n",max);}当输入超过十个数时,为什么它还是可以选出最大的那个数?2:求...的平均值!#include<stdio.h>double a[5]={2.38,3.142,5.64,8.27,6.44};void main(){int n;float sum=0.0;for(n=0;n<5;n++)sum+=a[n];printf("Average:%f\n",sum/5);}3.输入一串字符,判断单词个数!#include<stdio.h>void main(){char str[100];int i,num=0,w=0;char c;gets(str);for(i=0;(c=str[i])!='\0';i++){if(c==' ')w=1;else if(w==1){w=0;num++;}}printf("there are %d words\n",num);}4.函数:求两个数的最大公约数#include<stdio.h>void main(){int a,b,x;int gcd(int,int);printf("Enter a,b:");scanf("%d,%d",&a,&b);x=gcd(a,b);printf("The Result is:%d",x);}int gcd(int u,int v){int n,i,m=0;n=u<v?u:v;//*求两个数中较小者*//for(i=1;i<=n;i++){ if(u%i==0&&v%i==0)m=i;}return m;}5.求1+2+3+4..+n#include<stdio.h>void main(){int n;int sub(int);printf("\nEnter n:");scanf("%d",&n);printf("%d\n",sub(n));}int sub(int n){int a;if(n==1)return 1;a=n+sub(n-1);return(a);}6.求pi,精确到0.0005,pi/2=1+1/3+1/3 * 2/5+1/3 * 2/5 * 3/7.......#include<conio.h>#include<math.h>#include<stdio.h>void main(){double x;double pai(double);printf("\nPlease enter a precision:");/*precision :精确度输入0.0005*/scanf("%lf",&x);printf("\neps=%1f,pi=%lf",x,pai(x));}double pai(double eps){double x,y;int n;for(n=1,x=0,y=1;y>eps;n++){x+=y;y=n*y/(2*n+1);/*1+1/3+1/3 *2/5+1/3 * 2/5 * 3/7....其中,通项(每一小项)为n/2*n+1,在用递归的方法求通项,则:y=y*n/2*n+1;,然后把y 的值用x来储存起来,既:x+=y;*/}return(2*x);}7.C++求两点距离!(类)#include<math.h>#include<iostream.h>class comple{public:void set(int x,int y,int z,int w);double distance();void printf();private:int a,b,c,d;};void comple::set(int x,int y,int z,int w){a=x;b=y;c=z;d=w;}double comple::distance(){return sqrt((d-b)*(d-b)+(c-a)*(c-a));}void comple::printf(){cout<<"("<<a<<","<<b<<")"<<","<<"("<<c<<","<<d<<")"<<endl;}void main(){int e,f,g,h;comple comple1;cin>>e>>f>>g>>h;comple1.set(e,f,g,h);comple1.printf();cout<<comple1.distance()<<endl;}8.建一个复数类,求复数的模#include<math.h>#include<iostream.h>class comple{public:void set(int x,int y);double mode();void printf();private:int a,b;};void comple::set(int x,int y){a=x;b=y;}double comple::mode(){return sqrt(a*a+b*b);}void comple::printf(){cout<<a<<"+"<<b<<"i"<<endl;}void main(){comple comple1;comple1.set(5,8);comple1.printf();cout<<comple1.mode();}9.*一组数排序冒泡法#include<stdio.h>#define N 8void main()float x[N],t;int a,b;for(a=0;a<N;a++)scanf("%f",&x[a]);for(a=1;a<N;++a)for(b=0;b<N-a;++b)if(x[b]>x[b+1]){t=x[b];x[b]=x[b+1];x[b+1]=t;}printf("\n排序结果:"); for(a=0;a<N;a++)printf("%5.1f",x[a]);}函数法#include<stdio.h>#define N 8void main(){float x[N];int a;void sort(float *);for(a=0;a<N;a++)scanf("%f",&x[a]);sort(x);for(a=0;a<N;a++)printf("%5.1f",x[a]);}void sort(float *xx)int a,b;float t;for(a=1;a<N;++a)for(b=0;b<N-a;++b)if(xx[b]>xx[b+1]){t=xx[b];xx[b]=xx[b+1];xx[b+1]=t;}}10.计算3*3矩阵的乘积#include<stdio.h>#include<math.h>void main(){int i,j,k;int N=3;double x;double C[3][3];double A[3][3]={{23,2,19},{34,78,45},{10,23,18}}; double B[3][3]={{3,5,8},{2,6,7},{8,1,4}};for(i=0;i<N;i++)for(j=0;j<N;j++){x=0.0;for(k=0;k<N;k++)x+=A[i][k]*B[k][j];C[i][j]=x;for(i=0;i<N;i++)for(j=0;j<N;j++)printf("%7.0f%c",C[i][j],j==N-1?'\n':'');}11.输出一个10人的班中.......输出一个10人的班中,某门功课及格学生的学号,成绩,及格人数和及格率。

#include<stdio.h>void main(){int i,k=0,a[10][2];printf("input numbers and grades,press 0 to end.\n");for(i=0;i<10;i++){scanf("%d",&a[i][0]);scanf("%d \n",%a[i][1]);}for(i=0;i<10;i++){printf("number %d grade %d\n",a[i][0],a[i][1]);if(a[i][1]<60)contine;k++;}printf("the passed people:%d\n the passed rate: %5.2F%%\n",k,100. 0*k/10);}12输入一串字符,判断单词个数!#include<stdio.h>void main(){char str[100];int i,num=0,w=0;char c;gets(str);for(i=0;(c=str[i])!='\0';i++){if(c==' ')w=1;else if(w==1){w=0;num++;}}printf("there are %d words\n",num);}13.求e,e=1+1/1!+1/2!+1/3!......1/n!,e精确到1e-7! #include<stdio.h>void main(){int i;float sum=0.0;int fac(int);for(i=0;1.0/fac(i)>=1e-7;i++){sum+=1.0/fac(i);}printf("%f",sum);}int fac(int n){int k;if(n==0)k=1;elsek=n*fac(n-1);return k;}14.输入N个数,倒序输出#include<stdio.h>#define M 20void main(){int i,x[M],n,m,*p,*k,*j;printf("\nEnter n:");scanf("%d",n);printf("\nEnter array x[i](i=0~n):");for(i=0;i<n;i++)scanf("%d",x+i);printf("\n");m=n/2;k=x;j=x+n;p=x+m;for(;k<=p;k++,j--){int t=*k;k=j;*j=t;}printf("\nThe array inverted:\n");for(i=0;i<n;i++)printf("%d",x[i]);}。

相关文档
最新文档