c程序设计实验、辅导与习题解答实验五
C语言程序设计实验指导书参考答案_第二版
C 语言程序设计 上机实验指导与习题(第二版) 参考答案(仅供教师内部参考)来自华南农业大学目 录
上机实验 ................................................................................................................................................................... 1 实验 1 C 语言程序初步 .................................................................................................................................... 1 一、实验目的............................................................................................................................................ 1 二、实验内容.................................................................................................................................
c c++语言程序设计教程 实验指导与习题解答 第五章答案
第六次实验实验1#include"stdlib.h"#include"stdio.h"int main(int argc,char *argv[]){FILE *fp;char string[81],*filename=string;if(argc!=2||(fp=fopen(argv[1],"r"))==NULL){printf("can't open file");exit(0);}while(fgets(string,81,fp)!=NULL)fp=fopen(filename,"r");fclose(fp);}#include<stdio.h>#include<stdlib.h>main(){FILE *fp;char str[100];int i;if((fp=fopen("test.dat","w"))==NULL){printf("Cannot open the file!");exit(0);}printf("Input a string:");gets(str);for(i=0;str[i]&&i<100;i++){if(str[i]>='a'&&str[i]<='z') str[i]=str[i]-32;fputc(str[i],fp);}fclose(fp);fp=fopen("test.dat","r");fgets(str,100,fp);printf("%s\n",str);fclose(fp);}#include<stdio.h>#include<stdlib.h>#define SIZE 3struct student{long num;char name[10];int age;char address[10];} stu[3],out;void fsave(){FILE *fp;int i;if((fp=fopen("student.dat","wb"))==NULL){printf("Cannot open file!");exit(1);}for(i=0;i<3;i++)if(fwrite(&stu[i],sizeof(struct student),1,fp)!=1)printf("File write error.\n");fclose(fp);}void main(){FILE *fp;int i;for(i=0;i<3;i++){printf("Input student%d:",i+1);scanf("%ld%s%d %s",&stu[i].num,&stu[i].name,&stu[i].age,&stu[i].address);}fsave();fp=fopen("student.dat","rb");printf(" No. Name Age Address\n");while(fread(&out,sizeof(struct student),1,fp))printf("%4ld%-10s%4d %-15s\n",out.num,,out.age,out.address);fclose(fp);}。
《C语言程序设计》实验设计习题答案
《C语言程序设计》实验设计习题答案C语言程序设计是计算机专业的一门基础课程,通过实验设计习题可以帮助学生巩固所学的C语言知识,并提升编程能力。
本文将为您提供《C语言程序设计》实验设计习题的答案,以帮助您更好地理解和掌握相关知识。
实验一:基本输入输出实验题目描述:请编写一个程序,实现输入两个整数并输出其和与积。
```c#include<stdio.h>int main(){int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);int sum = num1 + num2;int product = num1 * num2;printf("和:%d\n", sum);printf("积:%d\n", product);return 0;```实验二:判断奇偶数实验题目描述:请编写一个程序,实现判断输入整数是奇数还是偶数的功能,并输出结果。
```c#include<stdio.h>int main(){int num;printf("请输入一个整数:");scanf("%d", &num);if(num % 2 == 0){printf("%d为偶数\n", num);}else{printf("%d为奇数\n", num);return 0;}```实验三:求和实验题目描述:请编写一个程序,实现输入n个整数并输出其和。
```c#include<stdio.h>int main(){int n, num;int sum = 0;printf("请输入整数的个数:");scanf("%d", &n);for(int i = 0; i < n; i++){printf("请输入第%d个整数:", i+1);scanf("%d", &num);sum += num;printf("和:%d\n", sum);return 0;}```实验四:阶乘实验题目描述:请编写一个程序,实现输入一个整数并输出其阶乘。
C++程序设计实践教程(第二版)实验5答案
1.#include <iostream>using namespace std;int Fibonacci(int n){int F;if(n==0)F=0;if(n==1)F=1;if(n>1)F=Fibonacci(n-1)+Fibonacci(n-2);return F;}int main (){int t;cout<<"请输入指定数t=";cin>>t;for(int n=0;Fibonacci(n)<=t;n++);cout<<"最小Fibonacci数是:"<<Fibonacci(n)<<endl;return 0;}2.#include<iostream>using namespace std;int number(int);int main(){int s=0;int m;cout<<"请输入m:";cin>>m;for(int i=1;i<=m;i++)s+=number(i);cout<<"s="<<s<<endl;return 0;}int number(int n){int y;if(n==1)y=2;y=number(n-1)*10+2;return y;}3.#include<iostream>#include<cmath>using namespace std;int main(){int i,j,k,max=1000,min=2000;for(i=1000;i<=2000;i++){j=int(sqrt(i));for(k=2;k<=j;++k){if(i%k==0)break;}if(k>j){max=i>max?i:max;min=i<min?i:min;}}cout<<max<<'\t'<<min<<endl;return 0;}5.#include<iostream>#include<cmath>using namespace std;int fun(int);int main(){int t,s;cout<<"请输入一个整数:";cin>>t;s=fun(t);if(t==s)cout<<t<<"是回文数"<<endl;cout<<t<<"不是回文数"<<endl;return 0;}int fac(int);int fun(int x){int s=0;for(;;){s+=fac(x);x=x/10;if(x<1)break;}return s;}int fac(int x){int i=0,a,b;a=x%10;while(x>=10){x=x/10;++i;}b=a*pow(10,i);return b;}#include<iostream>using namespace std;int fun(int);int main(){int a;for(a=1;a<=500;a++){if(fun(a))cout<<a<<'\t';}return 0;}int fun(int n){int m;if(n<10)m=n;else if(n>=10&&n<100)m=n%10*10+n/10;elsem=n%10*100+n%100-n%10+n/100;if(m==n)return true;elsereturn false;}。
c++程序设计实验辅导及习题解答-实验
实验十一任务1:程序调试。
类静态数据的应用。
下列程序设计了一个职工类,职工类中包括职工姓名、薪水和所有职工的薪水总和allSalary。
薪水总和员是所有职工对象薪水的统计和,它属于类而不属于某个对象,因而设置为static数据。
程序为:#include""#include<iostream>using namespace std;#include<>class Employee{private:char name[30];float salary;static float allSalary;public:Employee(char *n, float s){strcpy(name, n);salary = s;allSalary = allSalary + salary;}~Employee(void){}static float GetAllSalary(void){ return allSalary; }};float Employee::allSalary = 0;void main(void){Employee e1("张三", 4500);Employee e2("王五", 5200);Employee e3("李四", 2450);float all;all = Employee::GetAllSalary( );cout << "AllSalary = " << all << endl;}任务2:程序设计。
应用类静态数据实现类名对象间的数据访问。
参照任务1,定义一个类,描述某人的姓名和具有的现金数量,此某人有4个子女A、B、C、D,当初父亲具有现金10000元,每年提供给这4个子女的钱分别为1000、500、2000、1800元。
C语言程序设计实验指导含答案
C语言程序设计实验指导含答案实验一:C语言程序设计基础实验内容:本实验主要以C语言的基础语法为主,通过一些简单的示例和练习来帮助学生熟悉C语言的基本概念和语法规则。
实验步骤:1. 编写一个简单的C程序,输出"Hello, World!"。
要求程序能够顺利编译并执行。
答案:#include <stdio.h>int main(){printf("Hello, World!");return 0;}2. 基于上一题的程序,修改代码,要求程序输入一个整数,并将其乘以2输出。
答案:#include <stdio.h>int main(){int num;printf("请输入一个整数:");scanf("%d", &num);printf("乘以2的结果为:%d", num * 2);return 0;}3. 编写一个C程序,输入一个圆的半径,计算并输出其面积和周长。
要求保留2位小数。
答案:#include <stdio.h>#define PI 3.14159int main(){float radius;printf("请输入圆的半径:");scanf("%f", &radius);float area = PI * radius * radius;float circumference = 2 * PI * radius;printf("圆的面积为:%.2f\n", area);printf("圆的周长为:%.2f\n", circumference);return 0;}实验二:循环和判断语句实验内容:本实验主要通过不同的练习来帮助学生熟悉和掌握C语言中的循环和判断语句的使用方法。
C实验报告5参考答案
《高级语言程序设计》实验报告班级: 学号: 姓名: 成绩:实验5 循环结构程序设计一、实验目的1.掌握循环结构程序设计的3种控制语句——while 语句、do ···while 语句、for 语句的使用方法。
2.了解用循环的方法实现常用的算法设计。
二、实验内容1(1)下列程序的功能为:求1~100之和(和值为5050)并输出。
纠正程序中存在的错误,以实现其功能。
程序以文件名sy5_1.c 保存。
#include <stdio.h>main(){int i,sum=0; i=1;while(i<100) while(i<=100) sum=sum+i; { sum=sum+i; i++; i++;} printf(“The sum from 1 to 100 is %d\n ”,sum); }(2)下列程序的功能为:倒序打印26个英文字母。
纠正程序中存在的错误,以实现其功能,程序以文件名sy5_2.c 保存。
#include <stdio.h> main() {char x; x='z';while(x!='a') while(x!='a'-1)或while(x >='a') {printf("%3d",x); printf("%3c ",x); x++;x - -; }}(3)下列程序的功能为:输入一个大写字母,打印出一个菱形。
该菱形中间一行由此字母组成,其相邻的上下两行由它前面的一个字母组成,按此规律,直到字母A 出现在第一行和最末行为止。
纠正程序中存在的错误,以实现其功能。
程序以文件名sy5_3.c 保存。
例如,输入字母D ,打印出如下图形:#include <stdlib.h> main() { int i,j,k; char ch; scanf("%c",&ch); k=ch-'A'+1; for (i=1;i<=k;i++) {for (j=20;j>=i;j--)printf("%c",' ');for (j=1;j<=i-1;j++) for (j=1;j<=2*i-1;j++) printf("%c",'A'+i-1); printf("\n"); }k=ch-'A';for (i=k;i>=1;i--){ for (i=20;i>=i;i--) for (j =20;j >=i;j --) printf("%c",' ');for (j=1;j<2*i-1;j++) for (j=1;j <=2*i-1;j++) printf("%c",'A'+i-1); printf("\n"); }}2.程序填空题(1)用辗转相除法求两个正整数的最大公约数和最小公倍数。
C语言程序设计实验实验指导书及答案
实验一熟悉C程序运行环境班级学号姓名成绩一、实验目的1. 熟悉C语言Visual C++6.0 调试环境。
2. 掌握C程序的编辑、调试及运行。
二、实验内容项目 1. 调试并运行下面程序,并写出运行结果:#include <stdio.h>int main(){printf( “Good morn\ing”)!;printf( “Hello,world!\n ”);return 0;}运行结果(注意,按照屏幕输出格式写):项目 2. 调试并运行下面程序,并写出运行结果:#include <stdio.h>int main(){int a , b , sum; /* 定义变量*/a=23; b=56; /* 为变量赋值*/sum=a+b; /* 计算两个变量的和*/printf( “sum is %d\n”,sum); /* 输出计算结果*/return 0;}运行结果:项目 3. 调试并运行下面程序,并写出运行结果:#include <stdio.h>int max(int,int);int main(){int a , b , c; /* 定义变量*/a=23; b=56; /* 为变量赋值*/c=max(a,b); /* 调用max 函数,将得到的值赋给c*/ printf( “max is %d\n ”,c); /* 输出 c 的值*/return 0;}int max(int x,int y) /* 定义max 函数,函数值为整型*/ {int z; /* 定义变量*/if(x>y)z=x;elsez=y;return(z); /* 将z 的值返回*/}运行结果:三、提高部分3.试想,如果求10 个数中的最大者,则程序该如何编写。
程序代码运行结果:...常熟理工学院电气与自动化工程学院3 《C 语言程序设计》实验指导书实验二数据及其运算班级学号姓名成绩一、实验目的4.掌握C数据类型的概念、熟悉整型、字符型和实型基本类型的常量的用法;学会三种基本类型变量的定义、赋值和使用方法。
C语言实验五最简单的C语言程序设计
C语⾔实验五最简单的C语⾔程序设计实验5:最简单的C语⾔程序设计⼀、实验⽬的:(1)掌握C语⾔中使⽤最多的⼀种语句——赋值语句的使⽤⽅法。
(2)掌握各种类型数据的输⼊输出的⽅法,能正确使⽤各种格式转换符。
(3)进⼀步掌握编写程序和调试程序的⽅法。
⼆、实验内容和步骤:1、通过下⾯的程序掌握各种格式转换符的正确使⽤⽅法。
(1)输⼊以下程序:/* Note:Your choice is C IDE */# includeint main( ){int a,b;float d,e;char c1,c2;double f,g;long m,n;unsigned int p,q;a=61,b=62;c1='a';c2='b';d=3.56;e=-6.87;f=3157.890121;g=0.123456789;m=50000;n=-60000;p=32768;q=40000;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e);printf("f=%15.6f,g=%15.12f\nm=%1d\np=%u,q=%u\n",f,g,m,n,p,q);显⽰结果:(2)运⾏此程序并分析结果。
(3)在此基础上,将程序第10~14⾏改为c1=a,c2=b;f=3157.890121;g=0.123456789;d=f;e=g;运⾏程序,分析结果。
/* Note:Your choice is C IDE */#include"stdio.h"int main(){int a,b;float d,e;char c1,c2;double f,g;long m,n;unsigned int p,q;a=61;b=62;c1=a;c2=b;f=3157.890121;g=0.123456789;d=f;e=g;p=a=m=50000;q=b=n=-60000;printf("a=%d,b=%d\nc1=%c,c2=%c\nd=%6.2f,e=%6.2f\n",a,b,c1,c2,d,e);printf("f=%15.6f,g=%15.12f\nm=%1d,n=%1d\np=%u,q=%u\n",f,g,m,n,p,q);}显⽰结果:(4)⽤sizeof运算符分别检测程序中各类型的数据占多少字节。
C语言实验5(附参考答案)
实验5:运算符与表达式(4)实验目的:1、熟悉条件运算符、复合赋值运算符的基本运用和规则。
2、进一步熟悉C语言程序的编辑、编译、连接和运行的方法。
实验内容:1、写出下面逻辑表达式的值。
设a=3,b=4,c=5。
①a + b > c && b == c =0②a || b + c && b – c =1③!( a > b ) && ! c || 1 =1④(0||0)||5 =1⑤(10<12)&&! (1>-1) =02、将下面的数学表达式写成C语言逻辑表达式:x大于0,并且X小于等于10 x>=0&&x<=10a或b中有一个大于零__a>0||b>0________3、求下面算术表达式的值。
(1)x+a%3*(int)(x+y)%2/4 =0设x=2.5,a=7,y=4.7(2)(float)(a+b)/2+(int)x%(int)y =0设a=2,b=3,x=3.5,y=2.5先自己分析,再试着用程序求解,看得到的结果是否一致。
4、写出下面表达式运算后a的值,设原来a=10。
设a和n已定义成整型变量。
(1)a+=a =20(2)a-=2 =8(3)a*=2+3 =50(4)a/=a+a =0(5)a%=(n%=2),n的值等于5 =0(6)a+=a-=a*=a =0先自己分析,再试着用程序求解,看得到的结果是否一致。
5、闰年是能够被4整除,但是不能够被100整除,或者能够被400整除,假设年份用变量名year表示,请用表达式写出以上条件。
year%4==0&&year%100!=0||year%400==06、程序填空(已知一个摄氏温度c,要求输出华氏温度f。
公式为f=5/9*c+32.5)main( ){float c,f;c=37.5;f= 5.0/9*c+32.5;printf("%5.2f\n",f);}7、先思考下面程序的输入,然后放到编译器里面去验证,看看是否和自己思考的结果一样,并把正确结果写在程序下文。
C语言程序设计第五次实验报告
C语⾔程序设计第五次实验报告C程序设计实验报告实验项⽬:C语⾔程序设计第五次实验报告姓名:彭佳乐实验地点:家中实验时间:2020年4⽉21⽇⼀、实验⽬的与要求1、熟练地掌握函数的定义⽅法和调⽤规则。
2、掌握再 C语⾔程序种主调函数和被条⽤函数之间进⾏数据传递的规则。
3、了解函数的返回值及其类型,并正确使⽤它4、了解局部变量和全局变量的作⽤城及它们与存储分类的关系,理解变量的存在性和可见性的概念5、练习递归函数的使⽤⼆、实验内容6.3.1.1 已知三⾓形的三边,求⾯积6.3.1.2 求N的阶乘6.3.1.3 求两个整数的最⼤公约数6.3.1.4 打印出指定的图形6.3.2.1 求500以内的所有亲密数对6.3.3.1 编写计算x的y次幂的递归函数6.3.3.2 编写计算学⽣年龄的递归函数1、实验练习:6.3.1-1 已知三⾓形的三边,求⾯积(1)问题的简单描述:编写程序,从键盘输⼈三⾓形的3条边,调⽤三⾓形⾯积函数求出其⾯积,并输出结果。
(2)实验代码:#include<math.h>#include<stdio.h>float area(float a,float b,float c){float s,p,area;s=(a+b+c)/2;p=s(s-a)(s-b)*(s-c);area=sqrt(p);return(area);}main(){float a,b,c,ts;printf("请输⼊三⾓形的三条边a,b,c:\n");scanf("%f%f%f",&a,&b,&c);ts=area(a,b,c);if(a+b>c&&a+c>b&&b+c>a)printf("area=%f\n",ts);elseprintf("Data error!");}(3)问题分析:求三⾓形的⾯积采⽤的是浮点型,具有返回值,刚开始写成了调⽤函数后来发现不对将函数调⽤改成函数表达式带⼊程序可以正常运⾏2、实验练习:6.3.1-2 求N的阶乘(1)问题的简单描述:编写函数,求出从主调函数传来的数值i的阶乘值,然后将其传回主调函数并输出(2)实验代码:#include<stdio.h>#define N 5long function(int i)static long f=1;f=f*i;return f;}main(){long product;int i;for(i=1;i<=N;i++){product=function(i);printf("%d的阶层为%d\n",i,product);}}(3)问题分析:定义N为五的时候很纠结忘了define函数,后来问了同学后解决了3、实验练习:6.3.1-3 求两个整数的最⼤公约数(1)问题的简单描述:编写程序,从键盘输⼊两个整数,调⽤gdc()函数求他们的最⼤公约数,并输出结果。
c实验题目(实验1-5及答案)
实验一顺序结构的程序设计1.输入x的值,根据下面的多项表达式求y的值:y=34x5+83+2x-4(1)编程,注意要有输入数据的提示语句。
#include ""main(){double x,y;printf("please input x:\n");scanf("%lf",&x);y=4*x*x*x*x*x+12*x*x*x**x*x*x+2*x-4;printf("y=%\n",y);}(2)x取下列值时,分别运行此程序2.任意输入一个三位整数,然后逆序输出。
如输入为123,则输出为321。
(1) 编程,注意要有输入数据的提示语句(2) 用八进制的形式输出各位数字的ASCII码。
(3) 输入取下列值时,分别运行此程序main(){int x,inversed,hundred,ten,indiv;printf("please input x:\n");scanf("%d",&x);hundred=x/100;ten=(x-hundred*100)/10;indiv=x%10; /*indiv=(x-hundred*100)-ten*10;*/inversed=indiv*100+ten*10+hundred;printf("the original number is %d\n",x);printf("the inversed number is %d\n",inversed);printf("the oct number is %0,%0,%0\n",indiv+'0',ten+'0',hundred+'0');}#include <>main(){int x,inversed,hundred,ten,indiv;printf("please input x:\n");scanf("%d",&x);indiv=x%10;ten=((x-indiv)/10)%10;hundred=(((x-indiv)/10-ten)/10)%10;inversed=indiv*100+ten*10+hundred;printf("the original number is %d\n",x);printf("the inversed number is %d\n",inversed);printf("the oct number is %0,%0,%0\n",indiv+'0',ten+'0',hundred+'0');}实验二选择结构的程序设计1.编程计算下面的分段函数。
C语言程序与设计 第5章_实验及习题答案
}
(2)利用随机数函数产生20个三位数,将这20个数从小到大排列并输出。
参照【例5-4】P127页选择法排序程序,只需做下列修改:
将N的值改为20
将语句:a[i] = rand ( ) % 100 ;改为:a[i] = rand ( ) %900+100;
也可参照【例5-4】和【例5-5】写出用冒泡法排序的程序。
scanf( "%d" ,&a[i][j] ) ;
}
for( i = 0 ; i <M; i++ )
{sum1+= a[i][i] ;sum2+= a[i][M-1-i] ;
}
for( i = 0 ; i <M; i++ )
{ for( j = 0 ; j <N; j++ )
printf( " %4d " ,a[i][j] ) ;
puts(s1) ;
puts(s2) ;
}
(3)期末班级成绩处理。设有学生5人,每人5科成绩,统计每个学生的总分、不及格课程门数,并按总分排名次,按下面格式输出排名后的成绩单。数据由初始化方式提供。
学号姓名科目1科目2科目3科目4科目5总分名次不及格门数
实现的程序可参考(P164~165)
习
一、选择题
{ for( j = 0 ; j <N ; j ++ )
printf( "%4d" , a[i][j] ) ;
printf( " \n" ) ;
}
printf("请输入要交换的两列列号: " ) ;
c程序设计实验参考答案
c程序设计实验参考答案《C程序设计上机指导》答案实验一参考答案四.1、Hello, world !Welcome to the C language world! Everyone has been waiting for.2、a+b=579 579五.1、b=2;2、int a;3、area六.x=5,y=8, 改为x=5,y=8;七.写程序1、编写程序输出用6颗星构成的等边三角形。
main(){printf(" * \n");printf(" * * \n");printf("* * *\n");}2、编写程序求25和5两个整数的和与差。
main(){int a,b,c,d;a=10;b=20;c=35;d=(a+b+c)/3;printf("%d\n",d);}实验二参考答案:一.1、A , 65B, 662、x=1,y=1,z=53、a=%d,b=%d二.1、char a;int b;2、a,a,a3、a=865a,h,m4、u=2*sqrt(a)+b-10;“%f\n”三.1、第1行ch1=’a’; 改为char ch1=’a’;第2行ch2=98; 改为char ch2=98;2、第7行w=x%y; 改为w=x/y;3、int u=v=89; 改为int u,v; u=v=89;4、第3行改为scanf(“%d,%d”,&x,&y); //格式字符串有错。
第5行改为printf("The average is %d:"a); //格式字符串有错。
四.写程序1、编程求111234++的和(精确到小数点后两位)。
main( ){ float i;i=1.0/2+1.0/3+1.0/4;printf("%7.2f",i);}2、鸡兔同笼。
总头数head=60,总脚数feet=160。
《c语言程序设计》实验指导书答案
《c语言程序设计》实验指导书答案《C语言程序设计》实验指导书答案实验一:C语言环境搭建与基本语法1. 问题:如何在计算机上搭建C语言开发环境?答案:搭建C语言开发环境通常需要安装编译器和集成开发环境(IDE)。
常见的编译器有GCC,而IDE如Visual Studio Code、Code::Blocks等。
安装完成后,配置好编译器路径,即可开始编写和编译C语言程序。
2. 问题:C语言的基本数据类型有哪些?答案:C语言的基本数据类型包括整型(int)、字符型(char)、浮点型(float和double)以及更复杂的结构体(struct)和联合体(union)等。
3. 问题:如何定义一个变量?答案:定义变量的基本语法是:`类型名变量名;`。
例如,定义一个整型变量a:`int a;`。
4. 问题:如何实现变量的输入和输出?答案:使用`scanf`函数进行输入,使用`printf`函数进行输出。
例如,输入一个整数并输出:`scanf("%d", &a); printf("%d", a);`。
实验二:控制结构1. 问题:C语言中的条件语句有哪些?答案:C语言中的条件语句主要有`if`语句和`switch`语句。
2. 问题:如何使用`if`语句?答案:`if`语句的基本语法是:`if (条件) { 语句 }`。
例如,判断一个数是否为正数:`if (a > 0) { printf("正数"); }`。
3. 问题:如何使用`switch`语句?答案:`switch`语句用于多条件分支选择。
基本语法是:`switch (表达式) { case 常量1: 语句1; break; case 常量2: 语句2; break; ... default: 默认语句; }`。
4. 问题:C语言中的循环语句有哪些?答案:C语言中的循环语句主要有`for`循环、`while`循环和`do-while`循环。
c语言程序设计实验指导书答案
c语言程序设计实验指导书答案C语言程序设计实验指导书是帮助学生理解和掌握C语言编程技能的重要工具。
本指导书旨在通过一系列实验,引导学生从基础语法到高级编程技巧,逐步提高编程能力。
以下是一些实验题目和相应的答案示例,以供参考。
实验一:C语言基础语法实验目的:- 熟悉C语言的基本语法结构。
- 掌握变量声明、数据类型和运算符的使用。
实验内容:1. 编写一个程序,输入两个整数,输出它们的和、差、积和商。
实验答案:```c#include <stdio.h>int main() {int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);printf("和是:%d\n", num1 + num2);printf("差是:%d\n", num1 - num2);printf("积是:%d\n", num1 * num2);if (num2 != 0) {printf("商是:%d\n", num1 / num2);} else {printf("除数不能为0。
\n");}return 0;}```实验二:控制结构实验目的:- 掌握条件语句和循环语句的使用。
实验内容:1. 使用循环语句计算1到100的和。
实验答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;}printf("1到100的和是:%d\n", sum); return 0;}```实验三:数组和字符串- 掌握数组和字符串的声明、初始化和使用。
实验内容:1. 编写一个程序,输入一个字符串,然后反转该字符串并输出。
《C语言程序设计》实验指导书答案
实验一(第1章实验)实验目的:1.掌握运行C语言程序的全过程。
2.熟悉编译环境Visual C++或者Dev C++或者Turbo C2.0//3.0。
3.初步熟悉C语言程序的语法规定。
4.了解简单函数的使用方法。
实验内容:1.编程且上机运行:求3个整数的和。
2.编程且上机运行:求2个数的和、差、积和商。
3.编程且上机运行:输入3个数,求最大值。
4.编程且上机运行:输入圆的半径,求圆的面积和周长。
5.在屏幕上输出:“hello world!”6.输入并编辑本章中给出的C程序例子,在自己用的环境中形成一个C语言源程序文件;对这个源程序进行加工,得到对应的可执行程序,看一看它的效果。
实验结果:1.#include <stdio.h>#include <stdlib.h>main( ){ int i,j,k;printf("input i,j,k:");//输入整数数据,以半角逗号间隔,比如:1,2,3scanf("%d,%d,%d",&i,&j,&k);//不能缺少地址符号“&”printf("%d+%d+%d=%d\n",i,j,k,i+j+k);system("Pause");}2.#include <stdio.h>#include <stdlib.h>main( ){ int i,j;printf("input i,j(not 0):");//输入整数数据,以半角逗号间隔,j不为0,因为做除数scanf("%d,%d,%d",&i,&j);//不能缺少地址符号“&”printf("%d+%d=%d\n",i,j,i+j);printf("%d-%d=%d\n",i,j,i-j);printf("%d*%d=%d\n",i,j,i*j);printf("%d/%d=%d\n",i,j,i/j);system("Pause");}3. #include <stdio.h>#include <stdlib.h>main( ){ int i,j,k;printf("input i,j,k:");//输入整数数据,以半角逗号间隔scanf("%d,%d,%d",&i,&j,&k);//不能缺少地址符号“&”if(i>j){if(j>k)printf("max:%d",i);else if(i>k)printf("max:%d",i);elseprintf("max:%d",k);}else{if(j<k)printf("max:%d",k);elseprintf("max:%d",j);}system("Pause");}4. #include <stdio.h>#include <stdlib.h>#define pi 3.14main( ){ float r;printf("input r:");scanf("%f",&r);//不能缺少地址符号“&”printf("circle area is:%6.2f",pi*r*r);system("Pause");}5.#include <stdio.h>#include <stdlib.h>#define pi 3.14main( ){printf("hello world!");system("Pause");}6.略实验二(第3章实验一)实验目的:理解C语言的类型系统。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验五
任务1:程序调试。
函数调用、函数定义及函数说明的情况。
(1)下列程序有错误吗?请思考函数定义在后,且调用前没有函数说明的情况。
答:有错误。
“f”找不到标识符。
修改后程序如下:
(2)下列程序有问题吗?请思考函数定义在后,且调用前对函数进行说明的情况。
注意函数说明的形式。
答:会显示未定义y。
修改后程序如下:
(3)下列程序有问题吗?请思考函数定义在后,且调用前对函数进行说明的情况。
答:没有问题。
(4)下列程序有问题吗?请思考:函数定义在调用前,是否一定需要函数说明?
答:程序没有问题。
不一定需要函数说明。
(5)下列程序调用系统函数进行计算。
当程序运行时,如输入a>0,则计算a的b次方;如果输入a<0,则计算(-a)的b次方。
程序有多处错误,请改正。
修改后代码如下:
任务2:程序调试与程序设计。
字符串系统是strlen、strcat、strcpy、strcmp在程序设计中的应用。
仿照下列程序,调用有关字符串的系统函数对字符串进行长度测试、连接、复制、比较。
(1)调试程序。
程序如下:
运行结果如下:
(2)重新定义str,其功能是字符串长度。
程序如下:
运行结果如下:
(3)程序功能是比较字符串的大小,请定义str。
程序如下:
运行结果如下:
(4)程序的功能是连接两个字符串。
程序如下:
运行结果如下:
任务3:程序设计。
默认参数的构造函数的设计。
程序如下:
任务4:程序设计。
重载函数的设计。
设计一个函数。
调用add,可以完成整型、双精度及混合数的加法。
如果是字符串,则表示字符串的连接。
设计代码如下:
任务5:程序设计。
重载构造函数的设计。
设计代码及运行结果如下:
(2)仿照程序,把整型改成字符串并达到相同效果。
设计代码及运行结果如下:
程序如下:
任务7:程序调试与设计。
递归函数的应用。
(1)调试程序。
程序如下:
(2)重新设计,功能是将十进制转化成八进制。
设计代码如下:
(3)程序功能是把十进制转化为十六进制。
设计代码如下:。