高级语言程序设计实验报告 C语言实验报告(5篇范例)

时间:2019-05-14 03:42:15下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《高级语言程序设计实验报告 C语言实验报告》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《高级语言程序设计实验报告 C语言实验报告》。

第一篇:高级语言程序设计实验报告 C语言实验报告

C语言程序设计实验报告

实验二 循环结构程序设计

班级 2012196 学号 201219628 姓名 李明月

一、实验目的

(1)掌握用while语句,do-while语句和for语句实现循环的方法;(2)掌握循环结构的嵌套;

(3)掌握break语句和continue语句的使用方法。

二、实验内容及步骤

1.相传国际象棋是古印度舍罕王的宰相达依尔发明的。舍罕王十分喜欢象棋,决定让宰相自己选择何种赏赐。这位聪明的宰相指着8×8共64格的象棋盘说:陛下,请您赏给我一些麦子吧,就在棋盘的第一个格子中放1粒,第2格中放2粒,第3格放4粒,以后每一格都比前一格增加一倍,依此放完棋盘上的64个格子,我就感恩不尽了。舍罕王让人扛来一袋麦子,他要兑现他的许诺。国王能兑现他的许诺吗?

程序1:试编程计算舍罕王共要多少粒麦子赏赐他的宰相,这些麦子合多少立方米?(已知1立方米麦子约1.42e8粒)总粒数为:sum=1+2+22+23+„+263 程序代码:

#include int main()//定义一个主函数 { int i;double t=1,sum=1,v;//定义变量

for(i=1;i<=63;i++)//用for循环语句实现循环运算 { t=t*2;sum+=t;//循环表达式 } printf(“总麦粒数为:%fn”,sum);v=sum/1.42e8;printf(“折合体积为: %f立方米n”,v);//对结果进行输出

return 0;} 运行结果:

2.求完数。

程序2:一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如6的因子为1,2,3,而6=1+2+3,因此6是“完数”。编程找出1000之内的所有完数,输出所有的完数(要求:一行显示6个数);

程序代码:

#include int main(){ int i,j,sum,n=0;printf(“ 1000以内的完数有:n”);for(i=1;i<=1000;i++){

sum=0;for(j=1;j

if(i%j==0)

{

sum=sum+j;

} } if(sum==i)

{ printf(“ %d”,i);

n=n+1;

if(n%2==0)

printf(“n”);

} } printf(“n”);return 0;} 运行结果:

3.打印九九乘法表

程序3:编程输出如下上三角形式的九九乘法表。2 3 4 5 6 7 8 9-------n“);for(i=1;i<10;i++)//i { for(j=1;j<=i;j++)// printf(” “);for(j=i;j<10;j++)//j printf(”%-2d “,i*j);// printf(”n“);}

代表行 输出空格达到来使得向右对齐代表列

输出行与列的乘积 3 1 2 3 4 5 6 7 8 9

运行结果:

三、问题讨论

break语句和continue语句在循环结构中使用时有何区别?举例说明。

break语句是跳出整个循环过程,不再判断执行循环的田间是否成立,并且break语句不能用于循环语句和switch语句之外的任何其他语句中。而continue语句则只是结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。

例子:

#include int main(){ int i;for(i=100;i<=200;i++){ if(i%3==0)continue;

printf(”%d“,i);} printf(”n");return 0;} 输出:

但是换成break之后:

四、实验心得

个人感觉对于这几个循环语句还是for循环最为灵活,不进可以用于循环次数一句in个确定的情况,还可用于不确定的情况下,它也完全可以代替while语句。并且是程序看起来更为简洁明了。

第二篇:《C语言程序设计》实验报告

指导教师学院专业班级学号姓名实验室

实验题目:

实验要求:

实验内容及步骤:

运行结果

心得体会:

第三篇:C语言程序设计 实验报告2.3

C语言程序设计

实验报告

专业

班级

日期

11月26日

成绩

实验组别

第 2(2.3)次实验

指导教师

李开

学生姓名

学号

同组人姓名

实验名称 流程控制实验

一、实验目的

(1)掌握复合语句、if语句、switch语句的使用,熟练掌握for、while、do-while三种基本的循环控制语句的使用,掌握重复循环技术,了解转移语句与标号语句。

(2)熟练运用for、while、do-while语句来编写程序。(3)练习转移语句和标号语句的使用。

(4)使用集成开发环境中的调试功能:单步执行、设置断点、观察变量值。

二、实验任务

3.2 实验内容及要求 1.源程序改错

下面是计算s=n!的源程序,在这个源程序中存在若干语法和逻辑错误。要求在计算机上对这个例子程序进行调试修改,使之能够正确完成指定任务。例如,8!=40320。#include void main(){ int i,n,s=1;printf(“Please enter n:”);scanf(“%d”,n);for(i=1,i<=n,i++)s=s*i;printf(“%d!= %d”,n,s);}

2.源程序修改替换

(1)修改第1题,分别用while和do-while语句替换for语句。

(2)修改第1题,输入改为“整数S”,输出改为“满足n!≥S的最小整数n”。例如输入整数40310,输出结果为n=8。

3.程序设计

(1)假设工资税金按以下方法计算:x < 1000元,不收取税金;1000 ≤ x < 2000,收取5%的税金;2000 ≤ x < 3000,收取10%的税金;3000 ≤ x < 4000,收取15%的税金;4000 ≤ x < 5000,收取20%的税金;x>5000,收取25%的税金。输入工资金额,输出应收取税金额度,要求分别用if语句和switch语句来实现。

(2)将输入的一行字符复制到输出,复制过程中将一个以上的空格字符用一个空格代替。

(3)打印如下杨辉三角形。

/*第0行 */ 1 1 /*第1行 */ 1 2 1 /*第2行 */ 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 1 8 28 56 70 56 28 8 1 1 9 36 84 126 126 84 36 9 1

jjCCii每个数据值可以由组合计算(表示第i行第j列位置的值),而的计算如下:

Ci0(i=0,1,2,„)CijCij1*(i-j1)/ j(j=0,1,2,3,„,i)本程序中为了打印出金字塔效果,要注意空格的数目。一位数之间是3个空格,两位数之间有2个空格,3位数之间只有一个空格,程序编制过程中要注意区分。

(4)编写一个程序,将用户输入的任意正整数逆转,例如,输入1234,输出4321。

4.选做题

32f(x)3x4x5x130满足精度e=10-6 编写一个程序,用牛顿迭代法求方程的一个近似根,并在屏幕上输出所求近似根。

x0axxkf(xk)/f'(xk),其中f'(x)是牛顿迭代法:求方程近似根的迭代公式为k1函数f(x)的导函数。牛顿迭代法首先任意设定的一个实数a来作为近似根的迭代初值x0,然后用迭代公式计算下一个近似根x1。如此继续迭代计算x2, x3, „, xn, 直到xnxn1精度e

,此时值xn即为所求的近似根。

2.3:

1.源程序改错:(源程序)

#include void main(){ int i,n,s=1;printf(“Please enter n:”);scanf(“%d”,n);for(i=1,i<=n,i++)s=s*i;printf(“%d!= %d”,n,s);} 运行结果:

(修改后程序)#include int main(void){

int i,n,s=1;

printf(“Please enter n:”);

scanf(“%d”,&n);

for(i=1;i<=n;i++)

s=s*i;

printf(“%d!= %d”,n,s);

return 0;}

2.源程序修改替换

(1)修改第1题,分别用while和do-while语句替换for语句。(while)

#include int main(void){ int i=1,n,s=1;printf(“Please enter n:”);scanf(“%d”,&n);while(i<=n){ s=s*i;i++;} printf(“%d!= %d”,n,s);return 0;}

(do-while)#include int main(void){ int i=1,n,s=1;printf(“Please enter n:”);scanf(“%d”,&n);do {s=s*i;i++;} while(i<=n);printf(“%d!= %d”,n,s);return 0;}

(2)修改第1题,输入改为“整数S”,输出改为“满足n!≥S的最小整数n”。例如输入整数40310,输出结果为n=8。

#include int main(void){ int i,n=1,s;printf(“Please enter s:”);scanf(“%d”,&s);for(i=1;n= %d”,i-1,s);return 0;}

3.程序设计

(1)假设工资税金按以下方法计算:x < 1000元,不收取税金;1000 ≤ x < 2000,收取5%的税金;2000 ≤ x < 3000,收取10%的税金;3000 ≤ x < 4000,收取15%的税金;4000 ≤ x < 5000,收取20%的税金;x>5000,收取25%的税金。输入工资金额,输出应收取税金额度,要求分别用if语句和switch语句来实现。

(switch语句)#include void main(){

printf(“输入你的工资 ”);

int t;

float x;

scanf(“%f”,&x);

t =(int)(x/1000.0);

switch(t){

case 0:

printf(“no tax!n”);

break;

case 1:

printf(“%fn”,0.05*x);

break;

case 2:

printf(“%fn”,0.10*x);

break;

case 3:

printf(“%fn”,0.15*x);

break;

case 4:

printf(“%fn”,0.20*x);

break;

case 5:

printf(“%fn”,0.25*x);

break;

default:

printf(“%fn”,0.25*x);

break;

}

return 0;}

(if语句)

#include “stdio.h” int main(int argc, char *argv[]){

float x, tax;

scanf(“%f”, &x);

if(x<0)

{

printf(“Wrong input.n”);

return 1;

}

if(x<1000)

{

tax = 0.00;

}

else if(x>=1000&&x<2000)

{

tax = 0.05 * x;

}

else if(x>=2000&&x<3000)

{

tax = 0.10 * x;

}

else if(x>=3000&&x<4000)

{

tax = 0.15 * x;

}

else if(x>=4000&&x<5000)

{

tax = 0.20 * x;

}

else

{

tax = 0.25 * x;

} printf(“Tax of salary %.2f YUAN is %.2f YUAN.n”, x, tax);}

(2)将输入的一行字符复制到输出,复制过程中将一个以上的空格字符用一个空格代替。

#include int main(){ char c,flag;for(flag=0;(c=getchar())!='n';){

if(c==' '){

if(flag==0){

putchar(c);

flag=1;

}

}

else{

putchar(c);

flag=0;

}

}

return 0;}

(3)打印如下杨辉三角形。

/*第0行 */ 1 1 /*第1行 */ 1 2 1 /*第2行 */ 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 1 8 28 56 70 56 28 8 1 1 9 36 84 126 126 84 36 9 1

jjCCii每个数据值可以由组合计算(表示第i行第j列位置的值),而的计算如下:

Ci01

(i=0,1,2,„)CijCij1*(i-j1)/ j(j=0,1,2,3,„,i)本程序中为了打印出金字塔效果,要注意空格的数目。一位数之间是3个空格,两位数之间有2个空格,3位数之间只有一个空格,程序编制过程中要注意区分。

#include int Combination(int a,int b);int Triangle(int n);int main(void){ printf(“input the number for triangle of Yanghuin”);Triangle(9);} int Combination(int a,int b){ int t,p,s=1,q=1;if(a==0||b==0){ printf(“%4d”,q);} else{ for(t=b-a+1;t<=b;t++){ s=s*t;} for(p=1;p<=a;p++){ q=q*p;} printf(“%4d”,s/q);} } int Triangle(int n){ int i,o,u;for(i=0;i<=n;i++){ for(u=1;u<41-i*2;u++){ printf(“ ”);} for(o=0;o<=i;o++){ Combination(o,i);} printf(“n”);} }

(4)编写一个程序,将用户输入的任意正整数逆转,例如,输入1234,输出4321。#include #include int main(void){ int a,i,c,n=0;char m;for(a=0;m=getchar(),m!='n';a++){ c=m-'0';n=n+c*pow(10,a);} printf(“%dn”,n);}

4.选做题

-6 编写一个程序,用牛顿迭代法求方程f(x)3x4x5x130满足精度e=10的一个近似根,并在屏幕上输出所求近似根。

32x0axxkf(xk)/f'(xk),其中f'(x)是牛顿迭代法:求方程近似根的迭代公式为k1函数f(x)的导函数。牛顿迭代法首先任意设定的一个实数a来作为近似根的迭代初值x0,然后用迭代公式计算下一个近似根x1。如此继续迭代计算x2, x3, „, xn, 直到xnxn1精度e,此时值xn即为所求的近似根。

#include #include double f(double x);double f_(double x);double root(double m);int main(){ double m=1;printf(“%lfn”,root(m));return 0;}

double f(double x){ return(3*x*x*x-4*x*x-5*x+13);} double f_(double x){ return(9*x*x-8*x-5);} double root(double m){ double n;n=m-f(m)/f_(m);if(fabs(m-n)<=0.000001){ return n;} else{ return root(n);} }

四、实验体会

了解更多有关C语言的语法知识和循环结构以及熟练了调试过程。

第四篇:C语言程序设计—函数—实验报告

实 验 报 告

专业

软 件 工 程

班级

X

学号_ XXXXXXXXXXX_

姓名

实验日期:201X年X月X日

报告退发(订正、重做)

课程

C程序设计实验

实验名称

一、实验目的

① 熟练掌握C程序中函数的定义; ② 掌握函数的调用,函数参数的传递; ③ 熟练掌握函数的嵌套调用和递归调用;

二、实验环境(描述实验的软件、硬件环境)

① 软件环境:windows xp/win7等操作系统,Microsoft Visual C++ 6.0编译器; ② 硬件环境:PC机一台

三、实验内容、步骤和结果分析

题目一:编写一个用来判断质数(素数)的函数。

要求:

(1)在main函数中调用该函数对输入的数值进行判断,并输出判断结果;(2)当输入数值<=1时,停止输入和判断。

#include #include /*=======判断质数(素数)的函数=======*/ int judgePrime(int n){

} /*=======判断质数(素数)的函数=======*/ int main(){

printf(“n提示:输入一个数字来判断是否是质数(素数),当输入数值<=1时,停止输入和判断。nn”);for(int num=2,temp;num>1;){ printf(“Please enter a number:”);for(int i=2;i<=sqrt(n);i++)//一个数n如果是合数,那么它的所有的因子不超过n的开方 {

} return 1;if(n%i==0)return 0;else continue;

}

} scanf(“%d”,&num);if(num<=1)break;//当输入数值<=1时,停止输入和判断 temp=judgePrime(num);if(temp==0)printf(“%d is not a prime numner!nn”,num);else printf(“%d is a prime numner!nn”,num);return 0;

题目二:使用习题1中所编写的判断质数的函数验证哥德巴赫(Goldbach)的1+1猜想-----任何一个>=6的偶数都可以表示成两个素数之和

要求:

① 屏幕提示用户一个>=6的偶数;

② 输出这个偶数等于2个素数之和的表达式; ③ 当输入数据<6或者不是偶数时,停止输入和验证。

#include #include /*=======判断质数(素数)的函数=======*/ int judgePrime(int n){

for(int i=2;i<=sqrt(n);i++)//一个数n如果是合数,那么它的所有的因子不超过n的开方 {

if(n%i==0)return 0;else continue;

} } return 1;//true-->1,false-->0 /*=======验证哥德巴赫猜想的函数(调用judgePrime)=======*/ int proveGoldbach(int m){

} int main(){

}

printf(“n提示:输入一个偶数来验证哥德巴赫猜想,当输入数值<6时,停止输入和判断。nn”);for(int num=6;num>=6;){

} int temp;printf(“Please enter a number:”);scanf(“%d”,&num);temp=proveGoldbach(num);if(temp==0)//当输入小于6或者不是偶数时结束 return 0;printf(“==================================”);if(m<6||m%2!=0){

} if(judgePrime(j)==1&&judgePrime(m-j)==1)//判断两数是否都等于质数 { } printf(“t%d = %d + %dn”,m,j,m-j);return 0;//判断是否大于等于6或者不是偶数 for(int j=2;j<(m/2);j++)

题目三:编写一个求阶乘的函数,接着调用该函数实现组合的求解要求:

① 提示用户输入n和m的数值; ② 输出的 结果

#include /*=======阶乘函数=======*/ int fac(int n){

} /*=======组合函数=======*/ int combine(int m,int n){ } /*=======main函数=======*/ void main(){

int m,n;int res;printf(“n提示:这是求组合求和公式的函数,输入两个整数(分别为上标和下标)nn”);scanf(“%d%d”,&m,&n);if(m>n)//判断上标大于小标重新输入 goto loop;return fac(n)/(fac(n-m)*fac(m));int f;if(n<0)printf(“n<0,data error!”);f=1;else if(n==0||n==1)else f=fac(n-1)*n;return f;loop:printf(“Please enter two numbers:”);

}res=combine(m,n);printf(“tResult is %dn”,res);

题目四:编写一个求矩阵中最大元素以及最小元素的函数selectMaxAndMin(),在main函数中调用该函数

要求:

最大值和最小值的输出操作,可以放在selectMaxAndMin()函数中

#include #define ROW 4//矩阵的行 #define COLUMN 4//矩阵的列

/*=======在矩阵中选择最大最小数的函数=======*/ void selectMaxAndMin(int arry[ROW][COLUMN])//用指针更方便 {

int tempMax,tempMin;if(arry[0][0]>arry[0][1])//赋初始值 {

} else {

} for(int i=0;i

}

} for(int j=0;j

} if(arry[i][j]>tempMax){ } if(arry[i][j]

} int mat[ROW][COLUMN];printf(“Please enter a %d X %d matrix:n”,ROW,COLUMN);for(int i=0;i

} selectMaxAndMin(mat);return 0;for(int j=0;j

题目五:编写一个编码原文的函数,对于给定的内容,按照敌方的规律对其进行编码

要求:

某日,我军某部截获了一份敌方电报,经过仔细分析后发现:该电文中所有的字母字符都是经过某种运算后得到的,然那些非字母字符则没有经过任何处理。例如,原文中的字符A对应电文中的字符E,原文中的字符b对应电文中的字符f,原文中的字符W对应电文中的字符A,原文中的字符!在电文中仍为!

#include #define SIZE 20

//定义大小 /*=======密码翻译的函数=======*/ char trans(char a){

} //主函数 int main(void){

printf(“请输入原文:nnn”);char str[SIZE];gets(str);printf(“nnn”);if((a>='a'&&a<='v')||(a>='A'&&a<='V')){ } else {

} if(a>='w'||a>='W'){ } else { return a;} return a-22;return a+4;

}printf(“正在破解……nnn”);printf(“破译的原文是:”);for(int i=0;i<20;i++){

} printf(“n”);str[i]=trans(str[i]);if(str[i]=='')//判断是否结束 break;printf(“%c”,str[i]);

题目六:编写一个函数,求解输入矩阵的转置矩阵并输出

#include #define ROW 3//矩阵的行 #define COLUMN 4//矩阵的列 /*=======矩阵的输入函数=======*/ void matInput(int mat[][COLUMN]){

} /*=======原始矩阵的打印函数=======*/ for(int i=0;i

for(int j=0;j

} printf(“请输入矩阵元素 [%d][%d]=:”,i,j);scanf(“%d”,&mat[i][j]);

void matPrint(int mat[][COLUMN]){

} /*=======转置矩阵的打印函数=======*/ void matTrasPrint(int mat[][COLUMN]){

} /*=======main函数=======*/ int main(void){

} printf(“==================================”);printf(“请输入一个 %d X %d 的矩阵:n”,ROW,COLUMN);int mat[ROW][COLUMN];matInput(mat);printf(“==================================”);printf(“原始矩阵为:n”);matPrint(mat);printf(“==================================”);printf(“原始矩阵的转置矩阵为n”);matTrasPrint(mat);return 0;int arr[COLUMN][ROW];for(int i=0;i

} for(int j=0;j

} printf(“n”);arr[i][j]=mat[j][i];printf(“%3d”,arr[i][j]);for(int i=0;i

} for(int j=0;j

题目七:用户输入的字符串,以相反的顺序打印出来。

要求:利用递归函数调用形式

#include #define SIZE 20 /*=======相反输出字符串的函数=======*/ void reverse(char a[]){

int i=0;if(a[i]!=''){

} int main(void){

}printf(“t提示:输入一串字符以相反的顺序打印n”);char str[SIZE];gets(str);reverse(str);printf(“n”);return 0;

} else return;reverse(&a[i+1]);//递归调用 printf(“%c”,a[i]);

四、讨论

第五篇:C语言程序设计(1,2)实验报告

实验一 C程序的运行环境和方法

一、实验目的

1.了解所用的计算机系统。

2.了解在该系统上如何进行编辑、编译、连接和运行一个C程序。3.通过运行简单的C程序了解C程序的特点。

二、实验内容和步骤

1.熟悉所用的系统。了解Windows资源管理器的使用方法:文件的查看、复制、运行等方法,Visual C++所在目录,文本文件的建立方法。2.进入Visual C++,并新建一个C++源程序文件。

3.熟悉Visual C++的集成环境,了解各菜单项有哪些子菜单。4.输入下面的程序(教材中的例1.1),注意区分大小写。

#include void main(){ printf(“This is a C program.n”);} 编译并运行程序。结果为:

5.关闭工作区,新建一个程序,然后对教材中的例1.2重复4中的操作(即只将程序改为例1.2中的程序,其它操作步骤相同)。其程序为:

#include int main(){ int a,b,sum;a=123;b=456;sum=a+b;printf(“sum is %dn”,sum);return 0;} 运行结果为:

6.关闭工作区,新建一个程序,然后输入并运行一个需要在运行时输入数据的程序

#include void main(){int a,b,c;int max(int x,int y);printf(“input a and b:n”);scanf(“%d,%d”,&a,&b);c=max(a,b);printf(“nmax=%dn”,c);} int max(int x,int y){int z;if(x>y)z=x;else z=y;return(z);}(1)运行程序,若程序有错,则修改错误后继续运行程序,当没有错误信息时输入:2,5并按Enter键,查看运行结果。

其运行结果为:

(2)将程序的第三行改为:int a;b;c;然后按F9看结果如何,将其修改为int a,b,c;将子程序max的第3,4行合并为一行,运行程序,看结果是否相同。将程序的第三行改为:int a;b;c;运行结果为:

将子程序max的第3,4行合并为一行,运行程序,其结果相同,结果为:

7.运行一个自己编写的程序,程序的功能是输出两行文字。其程序为:

#include void main(){ printf(“我是中国人!n”);printf(“我深深的爱着我的祖国!n”);} 运行结果为:

实验二 数据类型、运算符和表达式

一、实验目的

1.掌握C语言数据类型,熟悉如何定义一个整型、字符型和实型的变量,以及对它们赋值的方法。

2.掌握不同数据类型之间赋值的规律。

3.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(――)运算符的使用。

4.进一步熟悉C程序的编辑、编译、连接和运行的过程。

二、实验内容和步骤

1.输入并运行下面的程序 #include void main(){char c1,c2;c1='a';c2='b';printf(“%c %c”,c1,c2);}(1)运行此程序 其结果为:

(2)加入下面的一个语句作为“}”前的最后一个语句:

printf(“%d,%dn”,c1,c2);其结果为:

(3)将第3行改为:

int c1,c2;然后再运行程序,并观察结果是否相同。相同,其结果为:

(4)将第3行改为int c1,c2;将第4,5行依次改为:

c1=a;c2=b;c1=“a”;c2=“b” c1=300;c2=400;每改为一次后运行程序,观察结果。其程序为: #include void main(){int c1,c2;c1='a',c2='b';c1=300;c2=400;printf(“%c %cn”,c1,c2);printf(“%d %dn”,c1,c2);} 其结果为:

2.分析教材第3章习题3.5中的程序的运行结果,然后输入该程序并运行,将运行结果与前面分析的结果对比。其程序为:

#include int main(){int a,b;float x,y;char c1,c2;scanf(“a=%d b=%d”,&a,&b);scanf(“%f %e”,&x,&y);scanf(“%c %c”,&c1,&c2);printf(“a=%d,b=%d,x=%f,y=%f,c1=%c,c2=%cn”,a,b,x,y,c1,c2);return 0;} 其运行结果为:

3.输入并运行下面的程序

#include void main(){int a,b;unsigned c,d;long e,f;a=100;b=-100;e=50000;f=32767;c=a;d=b;printf(“%d,%dn”,a,b);printf(“%u,%un”,a,b);printf(“%u,%un”,c,d);c=a=e;d=b=f;printf(“%d,%dn”,a,b);printf(“%u,%un”,c,d);} 请对照程序和运行结果分析: 运行结果为:

(1)将一个负整数赋给一个无符号的变量,会得到什么结果。画出它们在内存中的表示形式。

(2)将一个大于32767的长整数赋给一个整型变量,会得到什么结果。画出它们在内存中的表示形式。

(3)将一个长整数赋给无符号的变量,会得到什么结果。画出它们在内存中的表示形式。4.输入习题3.10(1)运行程序,注意i,j,m,n的值。(2)将第4,5行改为:

m=i++;n=++j;再运行。(3)将程序改为:

#include void main(){int i,j;i=8;j=10;printf(“%d,%dn”,++i,++j);i=8;j=10;printf(“%d,%dn”,i++,j++);i=8;j=10;printf(“%d,%dn”,++i,i);i=8;j=10;printf(“%d,%dn”,i++,i);} 运行程序并分析运行结果。其结果为:

5.按习题3.6的要求编程并上机运行:

要将“China”译成密码,密码规律是:用原来的字母后面第4个字母代替原来的字母。例如,字母“A”后面第4个字母是“E”,用“E”代替“A”,因此,“China”应译为“Glmre”。请编一程序,用赋初值的方法使c1、c2、c3、c4、c5这5个变量的值分别为’C’,'h', 'i','n', 'a',经过计算,使c1、c2、c3、c4、c5分别变为:'G','l','m',r','e',并输出.程序提示:

main函数算法如下:

定义char型变量 c1,c2,c3,c4,c5;给字符型变量赋值 c1=c1+4;c2=c2+4;c3=c3+4;c4=c4+4;c5=c5+4;输出c1,c2,c3,c4,c5 其程序为: #include int main(){char c1='C',c2='h',c3='i',c4='n',c5='a';c1=c1+4;c2=c2+4;c3=c3+4;c4=c4+4;c5=c5+4;printf(“password is %c%c%c%c%cn”,c1,c2,c3,c4,c5);return 0;} 其运行结果为:

下载高级语言程序设计实验报告 C语言实验报告(5篇范例)word格式文档
下载高级语言程序设计实验报告 C语言实验报告(5篇范例).doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    C语言程序设计II实验报告

    第二部分 实验内容一、实验目的 1、掌握一维数组的定义和引用 2、掌握一维数组的初始化方法 3、了解与一维数组有关的应用编程方法 二、实验意义 数组的定义,元素引用特征和......

    c语言实验报告

    学号:__________ 姓名:__________ 班级:__________ 日期:__________ 指导教师:__________ 成绩:__________实验一 上机操作初步和简单的C程序设计一、实验目的1、熟悉C语言运行环......

    C语言 实验报告

    C语言程序设计(B) (2010-2011-2) 实验报告 教学班级: 学号: 姓名: 课程教师: 实验辅导教师: 江西理工大学自由编辑的程序 一、实验前的源程序: //任意整数的叠加 #include void main......

    C语言实验报告

    C语言程序设计(B) (2010-2011-2) 实验报告 教学班级: 学号: 姓名:课程教师:王华金 实验辅导教师:王华金 江西理工大学1 P123--五、1、编写函数,找出5*5数组对角线上元素的最小值,并在......

    c语言实验报告

    实验一 熟悉C语言程序的运行环境 一、实验目的 1、了解在该系统上如何编辑、编译、连接和运行一个C 程序; 2、通过运行简单的C程序,初步了解C程序的特点。 二、实验预习1、......

    c语言实验报告

    南昌大学实验报告 学生姓名: 学 号: 专业班级: √ 综合 □ 设计 □ 创新 实验日期: 实验成绩: 实验类型:□ 验证 □一.实验名称 实验3 控制语句 二.实验目的 1.熟练掌握if 、if…el......

    c语言实验报告

    计算机软件技术基础实验报告 实验一:线性表的排序与查找 一.实验内容 a) 键盘输入一组无序数据,添加到线性表中; b) 排序线性表并输出排序结果; c) 键盘输入一个数,并插入到排好......

    C语言实验报告

    郑州轻工业学院 实 践 报 告 实现内容: OJ1123最佳校友(数组)、OJ1158又是升序(指针)、OJ1180成绩统计(结构)、OJ1203做幻方(文件) 学号:541507020140 学生姓名:王红旭 专业班级:电子信......