文档库 最新最全的文档下载
当前位置:文档库 › c语言实验题目

c语言实验题目

c语言实验题目
c语言实验题目

实验3 顺序结构编程 (2)

实验4 if分支结构编程 (3)

实验5 if分支结构和switch分支结构编程 (5)

实验6 分支结构嵌套和for循环编程练习 (9)

实验7和while和do-while练习 (12)

实验8 for循环嵌套练习 (15)

实验9 函数设计编程练习 (18)

实验10函数设计编程练习 (20)

实验11 数组编程练习 (23)

实验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)/2

a,b,c代表三角形的三条边

提示1、开根号的数学库函数是sqrt,例如y=sqrt(x),表示求变量x开根号,并把结果赋值给变量y。

2、调用数学库函数必须用如下命令#include

要求:(1)存储三角形三边的变量用double型

(2)打印三角形面积时小数保留两位%.2lf

实验题目4 已知半径r=3.4cm,编程求圆的周长和面积:

提示: (1)定义浮点型变量使用关键字float;

(2)浮点型数据输出的格式控制符是%f

(3)C语言中没有∏这个符号,编写程序时直接使用3.14159。

(4)C语言中没有求次方的运算符,半径的平方需用乘号*。

实验4 if分支结构编程

实验题目1 输入三角形的三条边的边长,求三角形的面积

从键盘输入三个整数,判断能否构成三角形的三边,如果能就计算输出三角形面积,按照下图给出的公式计算三角形的面积,如果不能就打印出不能构成三角形的提示信息。

a,b,c代表三角形的三条边,s代表中间变量,area代表面积

s=(a+b+c)/2

提示:

1.定义变量存储三角形三边,中间变量s,三角形面积area:double a,b,c,s ,area;

2.printf函数提示用户输入三条边:

printf(“请输入三个整数,中间用空格分开”);

3.scanf函数把用户输入的三个值,放入变量a,b,c中

scanf(“%lf %lf %lf”,&a,&b,&c);

4.考虑输入的三条边不构成三角形的情况,即要求任意两边之和大于第三边采

用关系运算符>和逻辑运算符并且&&

(a+b>c&&a+c>b&&b+c>a)

5.开根号的数学库函数是sqrt,例如y=sqrt(x),表示求变量x开根号,并把结

果赋值给变量y。

6.调用数学库函数必须用如下命令#include

7.打印三角形面积时小数位保留两位%.2lf

8.构成三角形和不构成三角形两种情况,用if…else…进行处理

if (a+b>c&&a+c>b&&b+c>a)

{

s = (a+b+c)/2;

area =sqrt(s*(s-a)*(s-b)*(s-c));

printf(“三角形的面积area=%%.2lf”);

}

else

{

printf(“输入的三条边不构成三角形”);

}

实验题目2火车坐直线匀加速运动,初速度为0,加速度为0.19m/s2,求30s时火车的速度(速度km/h为单位)

提示: (1) 注意速度的单位km/h和加速度单位的换算要除以1000乘以3600

( 2 ) 速度计算公式速度=初速度+加速度*时间

( 3 ) 定义变量存放初速度赋值为0 float v0= 0;

(4)定义变量存放加速度赋值为0.19,并作单位变换

double a = 0.19/1000*3600;

(5)定义变量存放速度赋值为0 double v = 0;

(6)定义变量存放时间值为0 double t = 30;

( 7 ) 计算速度v=(v0+a*t)

(8 ) 输出速度采用printf(“v=%lf”,v);

实验题目3 一辆汽车以15m/s的速度先开出10min后,另一辆汽车以20m/s的速度追赶,问多少分钟可以追上?

提示(1)定义变量存放汽车1的速度,行驶时间,行驶距离并赋予初始值

double v1 = 15,t1 =0,s1=0 ;

( 2 ) 定义变量存放汽车2的速度,行驶时间,行驶距离并赋予初始值

double v2 = 20,t2 ,s2=0;

( 3 ) 汽车1追上汽车2

t1 = t2+10*60;

根据s1 == s2 得出

20*t2 == 15*( t2+10*60)

t2 = 15*10*60/5 ;

s2 = v2*t2

(4)输出汽车2追上汽车1所花的时间

printf(“汽车2追上汽车1所花的时间t2=%lf”,t2);

(5)输出汽车2追上汽车1行驶了多少距离

printf(“汽车2追上汽车1行驶了距离s2=%lf”,s2);

实验5 if分支结构和switch分支结构编程

实验题目1输入一个整数,判断它能否被3,5,7整除

提示:

9.首先写c程序的基本框架

#include //包含基本输入输出头文件stdio.h

int main()

{

return 0;

}

接下来往{}里面return 0;前添加代码进行实现

10.定义变量存储用户输入的整数:int a;

11.printf函数提示用户输入字符:

printf(“请输入一个整数,回车结束”);

12.scanf函数把用户输入的整数,放入变量a中

scanf(“%d”,&a);

13.能否被3,5,7整除,如果x能被y整除,满足:x%y==0同时满足用逻辑运

算符并i&&

(a%3==0)&& (a%5==0) &&(a%7==0)

14.输入的数能被3,5,7同时整除,输入的整数不能被3,5,7同时整除,if...else...

进行处理

if ((a%3==0)&& (a%5==0) &&(a%7==0))

{

printf(“%d能被3,5,7同时整除\n”,a);

}

else

{

printf(“%d不能被3,5,7同时整除\n”,a);

{

实验题目2 从键盘输入一个字符,如果该字符为小写字母,则转换为大写字母输出,如果该字符为大写字母,则转换为小写字母输出,

小写字符转大写字符-32

大写字符转小写字符+32

提示:

1.首先写c程序的基本框架

#include //包含基本输入输出头文件stdio.h

int main()

{

return 0;

}

接下来往{}里面return 0;前添加代码进行实现

2.定义字符型char变量存储用户输入的字符:char a;

3.printf函数提示用户输入字符:

printf(“请输入一个英文字符,回车结束”);

4.scanf函数把用户输入的英文字符,输入控制符用%c,放入字符型char变

量a中

scanf(“%c”,&a);

5.考虑输入的是小写字母的情况,用关系运算符>=和<=和逻辑运算符并且&&

(a >=’a’&&a<=’z’)

6.考虑输入的是大写字母的情况,用关系运算符>=和<=逻辑运算符并且&&

(a >=’A’&&a<=’Z’)

7.输入的是大写字母,输入的是小写字母和用户输入的不是英文字符这三种情

况用if...else if...else进行处理

if (a >=’a’&&a<=’z’)

{

printf(“%c\n”,a-32); //转换成大写字符;

}

else if (a >=’A’&&a<=’Z’)

{

printf(“%c\n”,a+32); //转换成小写字符;

}

else

{

printf(“用户输入的不是英文字符”);

}

实验题目3假定征税的办法如下:收入在800元以下(含800元)的不征税;收入在800元以上,1200元以下者,超过800元的部分按5%收税;收入在1200元以上,2000元以下者,超过1200元的部分按8%收税;收入在2000元以上者,2000元以上部分按按20%的税率收税,试编写按收入计算税费的程序(要求用switch语句编写程序)

提示:

1.首先写c程序的基本框架

#include //包含基本输入输出头文件stdio.h

int main()

{

return 0;

}

接下来往{}里面return 0;前添加代码进行实现

2.定义变量存储用户输入的收入s_r,不同征收情况的整数值p,不同情况的

整数值就是switch后面的那个值p,应缴税收shui_shou:

int s_r,p;

double shui_shou;

3.printf函数提示用户输入收入:

printf(“请输入你的收入,回车结束”);

4.scanf函数把用户输入的收入,放入变量s_r中

scanf(“%d”,&s_r);

5.根据不同收入s_r的征税shui_shou情况不同进行考虑

收入小于800元不征税

s_r<=800 shui_shou=0.0

收入大于800元小于1200元超过800元的部分按5%收税;

800< s_r <=1200 shui_shou =( s_r -800)*0.05

收入在1200元以上2000元以下者超过1200元的部分按8%收税

1200

s_r>2000 shui_shou =400*0.05+800*0.08+(s_r-2000)*0.2

不同的征收税收的情况对应的整数值p相等的情况如何处理呢?

例如:假设收入分别为1200元和1220元,采用转换公式p=(s_r-800)/100 , s_r表示收入:

(1200-800)/100=4

(1220-800)/100=4

对应的整数值p都是4

但是根据题目要求:收入在1200元以上,2000元以下者,超过1200元的部分按8%收税;得知收入1200元和1220元征收税额应该不同。

假设收入分别为1200元,1220元

我们发现

(1200-800)%100=0等于0

(1220-800)%100=20不等于0

采用(s_r-800)%100!=0,即收入减去800对100取余数不等于0

采用(s_r-800)%100=0,即收入减去800对100取余数等于0

进行条件判断。

如果不等于0,则加1,就是整数值p加1,采用p=(s-800)/100+1;如果等于0,则不加1,整数值p不加1,采用p=(s-800)/100;

!=表示不等于

代码如下:

if ((s_r-800)%100!=0)

p=(s_r-800)/100+1;

else

p=(s_r-800)/100;//p为switch后面的表达式

8.不同情况的处理采用switch

switch(p)

{

case0:shui_shou =0.00;break;

case 1:

case 2:

case3:

case 4:

shui_shou =(s_r-800)*0.05; break;

case 5:

case 6:

case 7:

case 8:

case 9

case 10:

case 11:

case 12:

shui_shou=400*0.05+(s_r-1200)*0.08; break

default:

shui_shou =400*0.05+800*0.08+(s_r-2000)*0.2;

}

9.输出计算得出的应缴税额和收入

printf(“你的收入为%d元\n”,s_r);

printf(“你的应缴税额为%lf元\n”,shui_shou);

实验6 分支结构嵌套和for循环编程练习

实验题目1 输入三角形的三条边的边长,从键盘输入三个整数,判断能否构成三角形的三边,如果能就判定它是等边还是等腰还是直角三角形还是任意三角形,并输出三角形的名称。

提示:

15.首先写c程序的基本框架

#include //包含基本输入输出头文件

int main()

{

return 0;

}

接下来往{}里面,return 0;前添加代码进行实现

16.定义变量存储三角形三边:double a,b,c,

17.printf函数提示用户输入三条边:

printf(“请输入三个整数,中间用空格分开”);

18.scanf函数把用户输入的三个值,放入变量a,b,c中

scanf(“%lf %lf %lf”,&a,&b,&c);

19.考虑输入的三条边不构成三角形的情况,即要求任意两边之和大于第三边采

用关系运算符>和逻辑运算符并且&&

(a+b>c&&a+c>b&&b+c>a)

20.等边三角形的判断条件:(a==b&&b==c&&c==a)

21.等腰三角形的判断条件:(a==b||b==c||c==a)

22.直角三角形的判定条件,两边的平方的和等于第三边:(a*a + b*b == c*c ||b*b +

c*c == a*a || a*a + c*c == b*b )

23.构成三角形和构成三角形类型,用if嵌套进行处理

if (a+b>c&&a+c>b&&b+c>a)

{

if (a==b&&b==c&&==a)

{

printf(“这是一个等边三角形”);

}

else if (a==b||b==c||c==a)

{

printf(“这是一个等腰三角形”);

}

else if (a*a + b*b == c*c ||b*b + c*c == a*a || a*a + c*c == b*b )

{

printf(“这是一个直角三角形”);

}

}

else

{

printf(“输入的三条边不构成三角形”);

}

实验题目2 输入今天的日期y(年),m(月),d(日),输出明天的日期

提示:

1.首先写c程序的基本框架

#include //包含基本输入输出头文件

int main()

{

return 0;

}

接下来往{}里面,return 0;前添加代码进行实现

2.定义整型int变量存储用户输入的年y,月m,日d:int y,m,d;

3.printf函数提示用户输入今天的日期:

printf(“请输入今天的日期,输入格式为2012 3 27”);

4.scanf函数把用户输入的年月日,分别放入整型int变量y,m,d中

scanf(“%d %d %d”,&y,&m,&d);

5.几种不同情况的考虑,采用if…else if…else if…else进行处理

闰年的判断条件:该年能被4整除y%4==0,并且&&不能被100整除y%100!=0,或者||该年能被400整除y%400==0

a)如果输入的日期是闰年的2月29日

if (y%4==0&&y%100!=0|| y%400==0&&m==2&&d==29)

明天的日期为3月1日

printf(“明天的日期为%d年%d月%d日”,y,m=3,d=1);

b)如果输入的日期是平年的2月28日

else if (m==2&&d==28)

明天的日期为3月1日

printf(“明天的日期为%d年%d月%d日”,y,m=3,d=1);

c)如果输入今天的日期为一年的最后一天

else if (m==12&&d==31),

明天的日期是,年y加上1:y+1,月m为1月:m=1,日d为1: d=1 printf(“明天的日期为%d年%d月%d日”,y+1,m=1,d=1);

d)如果输入的今天的日期为大月(奇数月和8月,10月)的最后一天

else if (d==31&& m%2==1||m==8||m==10),

明天的日期是,月加上1 m+1,日为1 d=1

printf(“明天的日期为%d年%d月%d日”,y,m+1,d=1);

e)当输入的今天的日期为小月的最后一天

else if (d==30&&&m!=2&&m%2==0)

那么明天的日期是,月加上1,日为1

printf(“明天的日期为%d年%d月%d日”,y,m+1,d=1);

f)其他情况:else

日加上1

输出明天的日期

printf(“明天的日期为%d年%d月%d日”,y,m,d+1);

实验题目3

编写程序用for实现

求1到100的奇数和

求1到100的奇数个数

求1到100的奇数之和的平均值

求1到100的偶数个数

求1到100的偶数之和

求1到100的偶数之和的平均值

提示:参考教材63页6-8例题,需要重新定义4个变量

奇数个数

奇数之和的平均值

偶数个数

偶数之和的平均值

实验7和while和do-while练习

实验题目 1 顺序结构编程练习——计算定期存款本金和利息之和。设银行定期存款的年利率rate为0.5%,并已知存款期为n年,存款本金为capital元,试编程计算n年后的本金和利息之和deposit。要求定期存款的年利率rate、存款期n和存款本金capital均由键盘输入。

提示:

假设我手上有2000元(存款本金),存到了银行1年,年利率为0.5%

一年的利息=本金*年利率=2000*0.005=10

那么本金和利息之和为:

2000+2000*0.005=2000*(1+0.005)=本金*(1+年利率)

也就是说存了1年后的本金和利息之和为:本金*(1+年利率) 1

第二年的本金就为2000*(1+0.005),也就是说存到了银行2年后本金和利息之和为:2000*(1+0.005) +2000*(1+0.005)*0.005= 2000*(1+0.005)*(1+0.005)=2000*(+0.005)2

也就是说存了2年后的本金和利息之和为: 本金*(1+年利率) 2

据题目提示

存款日期为:n年

本金和利息之和为:deposit

定期存款的年利率:rate

存款本金:capital

存了n年后的本金和利息之和就是:本金*(1+年利率) n

deposit=capital * (1+rate) n

幂函数c语言用pow()函数,例如pow(2,3),表示23

所以(1+rate) n

用c语言表示就是pow(1+rate,n)

#include

#include

int main()

{

int n; //存款年限变量定义

double rate; //存款年利率变量定义

double capital; //存款本金变量定义

double deposit; //本金和利息之和变量定义

printf("Please enter rate, year, capital:"); //提示输入数据

scanf("%lf,%d,%lf", &rate, &n, &capital); //输入数据

deposit = capital * pow(1+rate, n); //计算存款利率之和,pow为幂函数

printf("deposit = %f\n", deposit); //打印存款本金和利息之和

return 0;

}

实验题目2 while循环结构编程练习——计算需要存多少年定期存款本金和利息利之和才达到规定数额。设银行定期存款的年利率rate为0.5%,并已知存款期为n年,存款本金为capital元,试编程计算多少年后年后的本金和利息之和deposit达到3000元。要求定期存款的年利率rate

和存款本金capital均由键盘输入。

提示:

假设我手上有2000元(本金),存到了银行1年,年利率为%0.5

#include

#include

main()

{

int n = 1; //存款年限变量定义

double rate; /*存款年利率变量定义*/

double capital; /*存款本金变量定义*/

double deposit; /*本金和利息之和变量定义*/

printf("Please enter rate, capital:"); /*提示输入数据*/

scanf("%lf %lf", &rate, &capital); /*输入数据*/

deposit= capital* (1+rate); //计算存款第一年的本金和利息之和

while (deposit<=3000.00) //循环判断条件,本金和利息之和deposit小于等于3000

{

deposit =deposit * (1+rate); //计算存款本金和利息之和

n++;

}

printf("本金和利息之和为deposit = %lf\n存款年限为n=%d年\n", deposit,n);

/*打印存款本金和利息之和和存款年限*/

}

实验题目3求sn=a+aa+...+aaa+...+a,例如,当a=2,n=4,sn=2+22+222+2222,

要求:

1、a和,n由键盘输入

2、用for循环实现

3、输出格式为:2+22+222+2222=2468

实验8 for循环嵌套练习

实验题目1用for循环编程输出如图所示的棱形

*

***

*****

*******

*****

***

*

提示:参考教材65页例题6-9

分上下两部分。

先输出:

*

***

*****

*******

再输出:

*****

***

*

采用双重循环,一行一行输出。

每一行输出步骤:一般3步。

1)光标定位: 输出空格

2 ) 输出图形:输出*号

例如本题:共7行,若行号用i表示,上半部分行号从1到4,则每一行有2*i-1个*号。下半部分行号从3到

3)每输完一行光标换行(\n)

实验题目2用for循环嵌套编程实现地下车位分配问题,假设地下车位的面积为4000平方米,需要分配成面积为55平方米的大车位和30平方米的小车位,求两种车位各分配多少个时,剩余的面积最少

提示:把所有可能的分配结果列出来,比较剩余面积temp,最后输出

实验题目3 do…while循环结构编程练习——计算需要存多少年人口数达到20亿,设人口的每年的增长率rate为:试编程计算需要多少年人口数达到20亿。要求当年人口数p和年人口增长率rate均由键盘输入。

提示:参考教材75页习题3

根据公布数字我国当前人口数p为,假设每年的人口增长率rate为:

得出:当年人口数=前人口数×(1+年人口增长率)

p =p* (1+rate);

实验题目4:用for和if嵌套编程解决如下问题:一辆卡车违反交通规则,撞人后逃跑。现场有三人目击事件,但都没有记住车号,只记下车号的一些特征。甲说:牌照的前两位数字是相同的;

乙说:牌照的后两位数字是相同的,但与前两位不同;

丙是数学家说:四位的车号刚好是一个整数的平方。

请根据以上线索编程求出车号。

提示:

(1)需要用for循环把所有可能的车牌号都列举出来

(2)用if分支条件,把复合条件的车牌号打印出来

假设x1,x2,x3,x4分别表示车牌号的第1位,第2位,第3位,第4位

那么,用变量a存放车牌号,n表示整数

甲说:牌照的前两位数字是相同的;x1==x2

乙说:牌照的后两位数字是相同的,但与前两位不同;x3==x4&&x1!=x3

丙是数学家说:四位的车号刚好是一个整数的平方。a=n*n

车牌号为4位数,如果要使得一个整数的平方为4位数,那么这个整数至少要从32开始,因为31*31=961,32*32=1024

1.这是一个循环次数确定的循环,采用for

2.假设用户输入的a是2,n是4;我们发现

22=2*10+2

222=22*10+2

2222=222*10+2

假设初始输入的是a,用一个中间变量t存放上一次的值;

那么循环体可以写成:

t=t*10+a;

sum = sum+t;

3.参考代码

#include

int main()

{

int a;//定义整型变量,存放用户输入的a

int n;//定义整型变量,存放用户输入的n

int i;//定义循环变量i

int t=0; //定义中间变量t,就是每次循环加的那一项,注意初始赋值为0

long sum = 0;//定义整型变量sum,用于存放2+22+222+2222的和

printf(“请输入两个正整数a 和n\n”);//输入提示

for (i=1;i

{

t=t*10+a;//每一次循环加的值

sum=sum+t

if (i

printf(“%d+”,t)

else

printf(“%d=%d”,t,sum)

}

}

实验9 函数设计编程练习

实验题目1顺序结构函数设计编程练习——设计一个函数计算摄氏温度输入一个华氏温度,要求输出摄氏温度。公式为:C=5/9(F-32),输出要有文字说明,取2位小数。

式中:C表示摄氏温度,F表示华氏温度。

1.根据题目要求根据用户的输入

2.函数名见名知意可huashi2 sheshi ()

3.形式参数存放输入的华氏温度:

huashi2 sheshi(double a)

实验题目2 设计一个函数,实现从键盘输入三个整数,判断能否构成三角形的三边,如果能就计算输出三角形面积,按照下图给出的公式计算三角形的面积,如果不能就打印出不能构成三角形的提示信息。

提示:

a,b,c代表三角形的三条边,s代表中间变量,area代表面积

s=(a+b+c)/2

1.根据题目要求根据用户的输入,采用if…else进行处理

2.函数名见名知意可用sanjiaoxing_mianji()

3.形式参数三个分别存放三角形的三条边:

sanjiaoxing_mianji(double a,double b,double c)

实验题目3计一个函数实现如下功能

输入密码,如果等于8848则显示“loading…”,并退出循环;

否则显示“input again!”。

如果输入超过三次,则退出循环并结束程序。

要求密码用ikeyword输入,用icount记录输入次数

提示:

1.根据题目要求根据用户的输入采用do…while循环,如果第一次输入就对的

情况退出循环

2.函数名见名知意可用keyword

3.形式参数两个:一个用于接收用户密码,一个用于统计密码输入错误次数keyword(int ikeyword,int icount)

ikeyword用于存放用户输入的密码,icount用于统计错误输入的次数

4.退出系统用函数exit(1),参考流程图进行代码编写

实验10函数设计编程练习

实验题目1设计一个函数判断输入数据是否是素数

提示:

一个数只能被1和它本身整除那么这个数就是素数

例如:2 3 5

所以要判断一个数是不是素数?

只需要从2开始到val-1去整除这个数,如果有一个整除了,那么这个数就不是素数

例如:9

9%2==1

9%3==0

所以找到了一个3能整除9,3既不是1也不是9,所以9不是一个素数

利用for和if嵌套编程:

for (i=2;i<=val-1;i++)

if (val%i==0)

break;

判断采用循环变量i的最终值

if (i==val)

printf(“yes”);

else

printf(“No”);

函数的形参为接收用户输入的整数,函数名尽量见名知意:

例如:panduan_sushu(int num)

功能尽可能单一,只做这个数是否是素数的判断

最好有布尔类型的返回值.:bool panduan_sushu(int num)

有两个值:true:1 false:0

不是素数返回假false:return false

是素数返回真true:return true

实验题目2设计一个函数根据用户的输入n,计算n!

提示:利用递归函数实现

实验题目3计算轿车产量:某工厂生产轿车,1月份10000辆,2月份是1月份产量减去5000,再翻一番;3月份是2月份减5000,再翻一番,如此下去,一年轿车产量多少?要求:用递归函数实现;

提示:

假设用car(n)表示n月份产量,

哈工大C语言实验题

Q308.(10分)第5章实验2:体型判断。 医务工作者经广泛的调查和统计分析,根据身高与体重因素给出了以下按“体指数”进行体型判断的方法。体指数计算公式是: t = w /(h*h) 其中:t是体指数;w是体重,其单位为千克;h是身高,其单位为米。根据给定的体指数t计算公式,可判断你的体重属于何种类型: 当t<18 时,为低体重; 当18≤t<25 时,为正常体重; 当25≤t<27 时,为超重体重; 当t≥27 时,为肥胖。 ****输入提示信息格式:"Please enter h,w:\n" ****输入数据格式要求:"%f,%f"(先读入身高,再读入体重,身高以米读入,体重以千克读入) ****输出数据格式要求: 当t<18 时,输出:"Lower weight!\n" 当18≤t<25 时,输出:"Standard weight!\n"

当25≤t<27 时,输出:"Higher weight!\n" 当t≥27 时,输出:"Too fat!\n" #include #include main() { float t,w,h; printf("Please enter h,w:\n"); scanf("%f,%f",&h,&w); t = w/(h*h); if(t<18) printf("Lower weight!\n"); else if(t>=18&&t<25) printf("Standard weight!\n"); else if(t>=25&&t<27) printf("Higher weight!\n");

c语言实验答案

c语言实验答案

//1.1编写一程序,在屏幕上输出如下内容:// X | X | X //---+---+--- // | | //---+---+--- // 0 | 0 | 0 #include void main() { printf(" X | X | X\n"); //注意转义字符\n的用法 printf("---+---+---\n "); printf(" | |\n"); printf("---+---+---\n "); printf(" 0 | 0 | 0\n"); } //1.2输出"Hello world!"语句 #include void main() { printf("Hello world!\n"); } //2.1编写一程序,接受用户输入的两个整数,并计算它们的和、差、积、商,程序运行结果应如下所示。 //注意,尖括号部分表示用户输入数据或要被替换的输出内容,尖括号本身并不需要输入或输出。 //多使用几组整数尝试一下,你发现了什么?//The program gets two integers,and

computes their sum,difference,produc t and quotient. //The first number:<第一个整数在此输入> //The second number:<第二个整数在此输入> //Results as follows: //<第一个整数>+<第二个整数>=<和> //<第一个整数>-<第二个整数>=<差> //<第一个整数>*<第二个整数>=<积> //<第一个整数>/<第二个整数>=<商> #include void main() { int a,b; printf("The program gets two integers,and computes their sum,difference,produc t and quotient.\n"); printf("The first number:"); scanf("%d",&a); printf("The second number"); scanf("%d",&b); printf("Results as follows:\n"); printf("%d+%d=% d\n",a,b,a+b); printf("%d-%d=% d\n",a,b,a-b); printf("%d*%d=% d\n",a,b,a*b); printf("%d+%d=% f\n",a,b,1.0*a/b); //做除法时要注意,除得的

C语言实验报告参考答案

《C语言程序设计》 实 验 手 册

《C语言程序设计》实验课程简介 课程名称:C语言程序设计实验 课程性质:专业必修课 课程属性:专业必修课 学时学分:学时32 学分1 开课实验室:软件实验室 面向专业:网络工程、软件工程、计算机科学与技术 一、课程的任务和基本要求 C语言程序设计实验是面向计算机相关专业学生开设的《C语言程序设计》实验课,是配合《C语言程序设计》课程而开设的实验性教育环节。本课程的主要任务是让学生充分掌握C 语言程序设计的基本概念、各种数据类型的使用技巧、模块化程序设计的方法等。C语言程序设计实验对课程中所涉及的知识进行验证,同时也是学生很好地学习课程的辅助手段。通过C语言上机实验的教学活动,使学生真正全面掌握C语言的基础知识,培养和提高学生的程序开发能力。 二、实验项目 【实验一】最简单的C程序---顺序程序设计 【实验二】逻辑运算和判断选取控制 【实验三】循环结构程序设计(一) 【实验四】循环结构程序设计(二) 【实验五】函数 【实验六】数组(一) 【实验七】数组(二) 【实验八】指针 【实验九】结构体、共用体和文件 【实验十】C程序综合性实验 三、有关说明 1、与其它课程和教学环节的联系: 先修课程:计算机文化 后续课程:面向对象程序设计、Java程序设计、数据结构、软件工程 2、教材和主要参考书目: (1)教材: 《C程序设计习题解答与上机指导》,谭浩强吴伟民著,北京:清华大学出版社,2003年。(2)主要参考书目: 《C语言程序设计》谭浩强主编,清华大学出版社,2003年。

三、实验内容 实验一最简单的C程序---顺序程序设计 (验证性实验 2学时) (一)、实验目的 1.熟悉win-tc程序运行环境 2.掌握运行一个C程序的步骤,理解并学会C程序的编辑、编译、链接方法 3.掌握C语言中使用最多的一种语句——赋值语句 4.掌握数据的输入输出方法,能正确使用各种格式控制符 (二)、实验内容 1.写出下列程序的运行结果 (1)#include void main() { printf(“*****************\n”); printf(“This is a c program. \n”); printf(“****************\n”); } 运行结果及分析:运行结果为: Printf函数语句表示输出引号内的字符串,最后的\n表示换行, 将程序中的\n去掉后,运行结果及分析:运行结果为: 去掉\n后不换行连续显示 (2)#include void main() { int a=100,b=20,sum,sb; sum=a+b; sb=a/b; printf("sum=%d,sb=%d",sum,sb); } 运行结果及分析: sum=100+20=120;sb=100/20=5. (3)#include void main( )

C语言实验报告参考答案原

C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include<> main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.编写程序: (1) a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 (2)a=160,b=46,c=18,d=170, 编写求(a+b)/(b-c)*(c-d)的程序。 答案: (1) #include<> main() {

int a,b,c,x,y; a=150; b=20; c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } (2) #include<> main() { int a,b,c,d; float x; a=160; b=46; c=18;

d=170; x=(a+b)/(b-c)*(c-d); printf("(a+b)/(b-c)*(c-d)=%f\n",x); } 3. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b 时,将0赋给c。(提示:用条件运算符) 答案: #include<> main() { int a,b,c; a=0; b=-10; c= (a>b) b:a; printf("c = %d\n",c); } 五、调试和测试结果 1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 2、(1) 编译、连接无错,运行后屏幕上显示以下结果: a/b的商=7

c语言实验题目

实验3 顺序结构编程 (2) 实验4 if分支结构编程 (3) 实验5 if分支结构和switch分支结构编程 (5) 实验6 分支结构嵌套和for循环编程练习 (9) 实验7和while和do-while练习 (12) 实验8 for循环嵌套练习 (15) 实验9 函数设计编程练习 (18) 实验10函数设计编程练习 (20) 实验11 数组编程练习 (23)

实验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)/2 a,b,c代表三角形的三条边 提示1、开根号的数学库函数是sqrt,例如y=sqrt(x),表示求变量x开根号,并把结果赋值给变量y。 2、调用数学库函数必须用如下命令#include 要求:(1)存储三角形三边的变量用double型 (2)打印三角形面积时小数保留两位%.2lf 实验题目4 已知半径r=3.4cm,编程求圆的周长和面积: 提示: (1)定义浮点型变量使用关键字float; (2)浮点型数据输出的格式控制符是%f (3)C语言中没有∏这个符号,编写程序时直接使用3.14159。 (4)C语言中没有求次方的运算符,半径的平方需用乘号*。

c语言实验习题及答案详解

1.数据类型 a.输入一个小数点后有多位数字的小数,实现将其保留三位小数,并输出;, #include<> main() {double b,d; printf("请输入一个小数:"); scanf("%lf",&b); printf("输出原来的数:%f\n",b); b*=1000; b+=; b=(int)b; d=b/1000; printf("输出现在的数:%.3lf\n0",d); } b.输入一个4位整数,求其得各位数字的平方和;(1234 1+4+9+16=30) #include<> main() {int n,sum=0,i,t; printf("请输入一个四位整数:\n"); scanf("%d",&n); for(i=0;i<4;i++) {t=n%10; n/=10; sum+=t*t; } printf("%d\n",sum);

} c.定义字符型变量ch,写出六种给ch赋值字符’A’的代码; #include<> main() {char ch; ch='A'; ch=65; ch=0x41; ch=0101; ch='\101'; ch='\x41'; } d.编写程序输出26组大小写字母;(AaBbCc……….XxYyZz) #include<> main() {int i; for(i=65;i<91;i++) {printf("%c",i); printf("%c",i+32); } printf("\n"); } e.定义浮点型变量f1、f2,为f1赋值10的-30次,为f2赋值10的30次 #include<> main() { double f1,f2; f1=10e-30;

C语言实验答案

一1 #include void main() { int iNum; float fNum=134.23; printf("a=%d\tf=%.2f\n",iNum,fNum); } 一2 #include void main() { int a,b,c,sum=0; scanf("a=%d,%d%d",&a,&b,&c); sum=a+b+c; printf("a=%d,b=%d,c=%d\n",a,b,c); printf("sum=%d\n",sum); } 一3

#include void main() { char a,b; scanf("%3c%4c",&a,&b); printf("c1=%c,c2=%c\n",a+1,b-1); } 一4 #include #include void main() { float a; printf("Enter a:"); scanf("%f",&a); printf("The original data is:%f\n\n",a); printf("h=%.2f\n",a); }

一5 #include void main() { int a,b,c,s,e; printf("Please input two numbers:\n"); scanf("%d%d",&a,&b); c=a+b; s=c*c; e=s+s; printf("%d,%d,%d\n",c,s,e); } 一6 #include void main() { float a,b; printf("input a:"); scanf("%f",&a); b=5*(a-32)/9; printf("%.0f(℉)=%.2f(℃)\n",a,b);

C语言程序设计实验-答案

-前言- /*非常感谢度娘以及各位网上C语言高手的支持,才能让敝人完成此文档的整理。 本文档集合了本人、度娘、众网友的力量,其中代码的正确率约为90%(不正确的有标注)。为回报度娘及众网友的帮助,本文档免费下载。 */ /*配“电子科技大学出版社(周信东主编)”的C语言程序设计实验*/ /*努力吧,骚年以及学妹们!*/ /*整理ed by 口玉刀一of GUET.*/ ===================== 实验一C语言程序初步 ===================== 1.---------------------------- 已知a=5,b=4,c=6,求出s并换行 #include"stdio.h" main() { int a,b,c,s; a=5;b=4;c=6; s=(a+b+c)/3; printf("a=%d,b=%d,c=%d\n,s=%d",a,b,c,s); } 2.------------------------------- 输入一个数字求他的平方 #include main() { int r,s; scanf("%d",&r); s=r*r; printf("s=%d\n",s); } 3.-------------------------------- (1) #include main() { printf(" *\n"); printf("***\n"); printf(" *\n"); } (2) #include

{ int v; int a,b,c; //a,b,c aer sides,v is volume of cube a=3;b=3;c=5; v=a*b*c; printf("v=%d\n",v); } ================================= 实验二数据类型、运算符和表达式 ================================= 1. (1)-------------------------------------------------- //总觉得打印结果怪怪的,DO YOU THINK SO? main() { char s1='3',s2='4',s3='5'; int c1=101,c2=102; printf("3%c\t4%c\t5%c\n",s1,s2,s3); //3%c为输出3和%c printf("s1=%d\ts2=%d\ts3=%d\n",s1,s2,s3);//注意哦,s1,s2,s3是char!而%d:输入输出为整形%ld 长整型%hd 短整型%hu无符号整形%u %lu%s:输入输出为字符串%c字符%f:输入输出为浮点型%lf双精度浮点型printf("c1=%d\t~%c\n",c1,c1); //换码符'\t',表示水平制表位(horizeontal tab),它的作用是将光标移到最接近8的倍数的位置 printf("c2=%d\t~%c\n",c2,c2); //注意c1,c2的类型 } (2) //运行结果为8.300000 %是求余数先运算x-y,把结果转换为int型的有利于四则运算 main() { float x=8.3,y=4.2,s; int a=7; s=x+a%5*(int)(x-y)%2/3; printf("s=%f",s); }

C语言课后实验设计题目及答案

C语言实验题目及答案 1、实验项目一 C程序的编辑、编译、连接和运行 题目:编写程序,要求屏幕上显示如下信息: *********************** This is a C program . *********************** 程序: #include void main() { printf(“***********************\n”); printf(“This is a C programn .\n”); printf(“***********************\n”); } 实验项目二数据类型、运算符、表达式 题目 (1)程序填空:输入1 个实数x,计算并输出其平方根(保留1 位小数)。 填空 1.double x,root; 2.root=sqrt(x); (2)输入一个大写英文字母,输出相应的小写字母。 填空 1.ch=ch+32; 1、#include "stdafx.h" #include "stdio.h" #include "math.h" int main(int argc, char* argv[]) { printf("This is a Cprogram\n"); return 0;

} 2、#include "stdafx.h" #include "stdio.h" #include "math.h" int main(int argc, char* argv[]) { double x; printf("x="); scanf("%lf",&x); printf("%lf\n",sqrt(x)); return 0; }

C语言实验报告参考答案完整版

C语言实验报告参考答 案 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

长沙理工大学2010C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述 四、程序清单 1.编写程序实现在屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 答案: #include<> main() { printf("The dress is long\n"); printf("The shoes are big\n"); printf("The trousers are black\n"); } 2.改错题(将正确程序写在指定位置) 正确的程序为: #include <> main() { printf("商品名称价格\n"); printf("TCL电视机¥7600\n"); printf("美的空调¥2000\n"); printf("SunRose键盘¥\n"); } 2.编写程序: a=150,b=20,c=45,编写求a/b、a/c(商)和a%b、a%c(余数)的程序。 答案: #include<> main() { int a,b,c,x,y; a=150; b=20;

c=45; x=a/b; y=a/c; printf("a/b的商=%d\n",x); printf("a/c的商=%d\n",y); x=a%b; y=a%c; printf("a/b的余数=%d\n",x); printf("a/c的余数=%d\n",y); } 4. 设变量a的值为0,b的值为-10,编写程序:当a>b时,将b赋给c;当a<=b时,将a赋给c。(提示:用条件运算符) 答案: #include<> main() { int a,b,c; a=0; b=-10; c= (a>b) b:a; printf("c = %d\n",c); } 五、调试和测试结果 1.编译、连接无错,运行后屏幕上显示以下结果: The dress is long The shoes are big The trousers are black 3、编译、连接无错,运行后屏幕上显示以下结果: a/b的商=7 a/c的商=3 a/b的余数=10 a/c的余数=15 4. 编译、连接无错,运行后屏幕上显示以下结果: c =-10 实验二顺序结构程序设计 四、程序清单 1.键盘输入与屏幕输出练习 问题1 D 。

C语言-数组-实验题目及答案

实验六数组程序设计 【实验目的】 1、掌握使用一维数组编程方法 2、掌握使用二维数组进行程序设计 【实验内容】 一、上机验证程序,并分析结果 要求:读懂程序,写出分析结果;上机运行程序,得到运行结果,比较之。1、#include int main() { int a[ ]={1,2,3,4,5} , i, j, s=0 ; j = 1; for ( i = 4 ; i>=0 ; i--) { s = s+ a[i] * j ; j = j * 10 ; } printf(" s= %d \n" , s ); return 0; } 二、程序改错题 1.下面程序的功能,是从键盘输入一个数组(数组长度为10),查找数组中正数的个数。源代码如下,程序中存在错误,请将其改正。 #include int main()

{ int a(10);/*定义数组*/ int count,i;/* i循环变量 count 正数个数*/ for(i=0;i<=10;i++) {/*循环输入*/ scanf("%d",a[i]); } count=1; for(i=0;i<=10;i++) {/*查找正数*/ if(a(i)>0) count++; } printf("数组中正数有:%d个\n",count); return 0; } 三编写程序 1.编写程序要求输入30个学生的单科成绩,输出高于平均分的成绩。#include #define N 30 int main() { float score[N],sum=0,aver; int i; for(i=0;i<30;i++) { scanf("%f",&score[i]); sum=sum+score[i]; } aver=sum/30; printf("平均分为:%.2f\n",aver); for(i=0;iaver) printf("%.2f ",score[i]); printf("\n");

C语言实验参考答案

C语言实验参考答案 实验一 5、输入并运行自已编写的程序(教材第一章P14 三编程题)。 实验二 1、编写一个程序,从键盘接收3个实数(分别为10.0、20.0、5.0),输出这3个数的和s、乘积t和平均值a。 #include main() {float x,y,z,s,t,a; printf(“x,y,z=”); scanf(“%f,%f,%f”,&x,&y,&z); s=x+y+z; t=x*y*z; a=s/3; printf(“s=%f,t=%f,a=%f\n”,s,t,a); } 2、编程。要求用户输入两个整数a、b(分别为20、10),读取用户从键盘输入的值,然后: 1)用整数输出这两个数的和、差; 2)用长整型输出这两个数的积,用float输出商; 3)用整数输出这两个数的余数,用float输出平均值。 #include

main() {int a,b,he,cha,yu; long ji; float shang,aver; printf(“a,b=”); scanf(“%d,%d”,&a,&b); he=a+b; cha=a-b; ji=(long)a*b; shang=1.0*a/b; yu=a%b; aver=(a+b)/2.0; printf(“a+b=%d,a-b=%d,a*b=%ld\n”,he,cha,ji); printf(“a/b=%f,a%%b=%d,aver=%f\n”,shang,yu,aver); } 实验三 1、编写一个程序,从键盘接收一个一位的整型数,经转换,用字符函数putchar输出。例如,输入整数5,程序运行后输出字符5。 #include main() {int a; char c;

C语言实训题目

2011秋季 1.学生成绩管理系统 功能要求: (1)可以从文件导入或录入多名学生的多门课程的学习成绩;(2)完成按姓名查找学生记录,并显示; (3)排序功能: 按学生平均成绩进行排序; (4)插入功能: 按平均成绩高低插入一条学生记录; (5)要求使用结构体,录入结果存放到文件; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 2.个人通讯录 功能需求: (1)可以对多名人物的信息进行输入; (2)显示所有的记录信息,若无记录,则给出提示信息;(3)可以按姓名查询该记录的有关信息; (4)可以按姓名对任意一种记录信息进行删除; (5)可以任意修改记录信息 (6)通过文件储存所输入的记录; (7)可以通过一个文件读入已有的通信录记录;

显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 3.火车订票系统 功能要求: (1)列车原始信息从文件导入或从控制台录入,包括车次、票数等; (2)可以按车次进行列车信息查询; (3)客户对某一天订票,订票成功后,当日的票数需要被更改; (4)客户退票; (5)要求使用结构体; 显示要求: 程序输出菜单,用户按照提示操作,最终得到操作结果。 4、万年历系统 功能要求: (1)从2000年开始,用户输入年份与月份,将显示出该年该月份的日历,对应的星期。 (2)注意闰年情况 显示格式要求如下: (1)第一行显示月份(中英文都可以) (2)下一行显示星期,从周日到周六,中英文都可以 (3)下一行开始显示日期从1号开始,并按其是星期几实际情况与上面的星期数垂直对齐

(4)程序输出菜单,用户按照提示操作,最终得到计算结果。 5、积分的实现 功能要求: (1)使用复合梯形公式求解函数f=1+x 2、f=log(1+x)以及f=1/(1+x2)三个函数的定积分。 (2)积分上下限及步长由C语言函数参数传递。 (3)用户输入函数编号,上下限和步长,程序输入结果。 显示要求: 程序输出菜单,用户按照提示操作,最终得到计算结果。 6、矩阵的运算 功能要求: 使用三个C语言函数分别实现两个矩阵的加、减和相乘功能。结果存放在第三个矩阵中。 并编写程序验证三个函数功能。 每个函数的参数可选择 (1): 二位数组名,行数,列数 (2)指针变量名,行数,列数 返回值: 用户自定义的运算状态,正常或其他异常情况。 显示要求:

c语言上机实验完整答案

%c 字符形式输出, %d 整数形式输出, 实验一 自测练习1 程序代码 #include void main() { int x; scanf("%d",&x); //%d十进制整型,&指x在内 存中的地址。上面 scanf的作用是:按照 x在内存的地址将x 的值存进去, if (x%2 !=0) printf("%d is an odd\n",x); else printf("%d is an even\n",x); }

运行结果 自测练习2 程序代码 #include void main() { int i, sum; i=1 ; sum=0;

while (i<=100) { sum=sum+i; i++; } printf("sum=%d\n",sum); } 运行结果 自测练习3 程序代码 #include void main( ) { int i, n; long p;

p=1; printf("Enter n:"); scanf("%d",&n); for (i=1; i<=n; i++) p=p*i; printf(" p=%ld\n", p); } 运行结果 自测练习4 程序代码 #include"stdio.h" int max(int x,int y) {int z; if (x>y) z=x;else z=y; return(z); } void main() {int a,b,c;

scanf("%d,%d",&a,&b); c=max(a,b); printf("max=%d\n",c); } 运行结果 自测练习5 程序代码 #include"stdio.h" void main() {int x,y; for(x=0;x<=25;x++) for(y=0;y<=50;y++) if(4*x+y*2==100) printf("兔=%d,鸡=%\n",x,y); } 运行结果

C语言习题与实验

习题与上机实验总的目的和要求 目的: 实验作为教学的一个重要环节,其目的在于更深入地理解和掌握课程教学中的有关基本概念,应用基本技术解决实际问题,从而进一步提高分析问题和解决问题的能力。C 程序设计课程实践性很强,即要求独立编写程序,学会独立上机调试程序。 学会独立上机调试程序。也就是要善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行。计算机技术是实践性很强的技术,要求从事这一领域的人不仅能了解和熟悉有关理论和方法,还要求自己动手实践。对程序设计来说,要求会编写程序并上机调试通过。因此调式程序本身是程序设计课程的一个重要的内容和基本要求,应给予充分的重视。调式程序的经验固然可以借鉴他人的现成经验,但更重要的是通过自己的直接实践来积累,而且有些经验是只能“会意”难以“言传”。因此,在实验时不但要达到通过程序完成每一次的实验任务,而且应当在已通过的程序基础上作进一步的修改、提高和完善。甚至于“自设障碍”,即把正确的程序改为有错的(如用scanf函数为输入变量输入数据时,漏写“&”符号,double变量使用格式符“%f”;使数组下标出界;使整数溢出等等),观察和分析所出现的情况。这样的学习才会有真正的收获。实验目的可归纳如下: 1.验证自己已建立起来的概念或所编写的程序是否正确; 2.加深对课堂所学内容的理解和语法规则的记忆; 3.理解和掌握运用计算机高级语言进行编程的思想方法; 4.掌握常用算法的设计与应用实现; 5.熟悉UNIX等程序开发环境,掌握C程序常用的调试手段; 6.学会上机调试程序的方法,不断积累调试经验,提高排错能力; 7.使自己具有独立的应用编程和熟练的程序调试能力。 要求: 1.做好每一次上机前的准备以提高上机效率: ①预先认真阅读相关实验内容,做到心中有明确的目的要求和任务,要有备而来; ②按照实验内容规定的习题题目,事先在实验预习报告上编写好源程序及运行程序 所需的典型数据,并经人工静态检查认为无误;手编程序应书写整齐,应在每个题目之间留出一定的空间,以备记录上机调试情况和运行结果等;对程序中自己有疑问的地方,应作出记号,以便上机时给以注意。 ③将想要上机验证的问题草拟提纲;制定一个简捷的程序调试计划。

c语言实验答案

n"); printf("The first number:"); scanf("%d",&a); printf("The second number"); scanf("%d",&b); printf("Results as follows:\n"); printf("%d+%d=%d\n",a,b,a+b); printf("%d-%d=%d\n",a,b,a-b); printf("%d*%d=%d\n",a,b,a*b); printf("%d+%d=%f\n",a,b,*a/b); .+1/n!的值。 #include<> void main() { int n,p=1,i; float sum=0; printf("please input n:"); scanf("%d",&n); for(i=1;i<=n;i++) { p=p*i; sum+=p; } printf("sum=%f\n",sum); } .14 p=j; switch(p) umber); for(j=0;j<3;j++) printf("%",stu[i].score[j]); printf(" ave=%.2f\n",average(stu[i]));umber); printf("score:"); for(j=0;j<3;j++) scanf("%f",&(stu[i].score[j])); } } void main() { struct student stu[3]; //定义结构体数组 input(stu); //数组名做参数,传递的是地址 output(stu); } //静态链表的建立,有三个学生,包括学号(sno char(8)),姓名(sname char(20)),分数(grade float[]), //定义结构体类型数组存学生信息,使用链表所有学生,实现链表的输入输出。 //静态的书上有原题目,我写成动态的了,用子函数的方式实现 #include <> #include<> #include <> struct stu //定义全局结构体 { char sno[8]; char sname[20]; float grade; struct stu *next; } ; //////////////////////////////////////////////////////// void main( ) { struct stu *creat(struct stu *); void print(struct stu*); struct stu *head; head=NULL; head=creat(head); print(head); } ///////////////////////////////////////////////////////// struct stu *creat(struct stu*head) //建立链表 { struct stu *p,*q; q=(struct stu*)malloc(sizeof(struct stu)); //分配空间 printf("please input sno:"); scanf("%s",q->sno); printf("please input sname:"); scanf("%s",q->sname);

C语言实验课题目

目录 实验1 输入输出 (2) 实验2 选择语句 (4) 实验3 循环语句 (5) 实验4 函数 (6) 实验5 指针 (8) 实验6 数组 (9) 实验7 结构体 (10)

实验1 输入输出 要求掌握: 1、VC++平台的使用; 2、C源程序的建立、保存、编译和运行; 3、变量的定义、赋值和运算; 4、printf函数的使用; 5、scanf函数的使用; 6、int、long、float、double、unsigned的含义; 7、关键字、预定义标识符和用户标识符的区别; 8、自加自减运算符的使用。 完成下列题目: 1. 键盘输入与屏幕输出练习 问题1 要使下面程序的输出语句在屏幕上显示1, 2, 34,则从键盘输入的数据格式应为以下备选答案中的。 #include main() { char a,b; int c; scanf("%c%c%d",&a,&b,&c); printf("%c,%c,%d\n",a,b,c); } A)1 2 34 B)1, 2, 34 C)’1’,’2’,34D)12 34 问题2 在与上面程序的键盘输入相同的情况下,要使上面程序的输出语句在屏幕上显示12 34,则应修改程序中的哪条语句?怎样修改? 问题 3 要使上面程序的键盘输入数据格式为1,2,34,输出语句在屏幕上显示的结果也为1,2,34,则应修改程序中的哪条语句?怎样修改? 问题4 要使上面程序的键盘输入数据格式为1,2,34,而输出语句在屏幕上显示的结果为'1', '2',34,则应修改程序中的哪条语句?怎样修改? [提示:利用转义字符输出字符单引号字符。]

c语言实验答案

//1.1编写一程序,在屏幕上输出如下内容:// X | X | X //---+---+--- // | | //---+---+--- // 0 | 0 | 0 #include void main() { printf(" X | X | X\n"); //注意转义字符\n的用法 printf("---+---+---\n"); printf(" | |\n"); printf("---+---+---\n"); printf(" 0 | 0 | 0\n"); } //1.2输出"Hello world!"语句 #include void main() { printf("Hello world!\n"); } //2.1编写一程序,接受用户输入的两个整数,并计算它们的和、差、积、商,程序运行结果应如下所示。 //注意,尖括号部分表示用户输入数据或要被替换的输出内容,尖括号本身并不需要输入或输出。 //多使用几组整数尝试一下,你发现了什么? //The program gets two integers,and computes their sum,difference,product and quotient. //The first number:<第一个整数在此输入> //The second number:<第二个整数在此输入> //Results as follows: //<第一个整数>+<第二个整数>=<和> //<第一个整数>-<第二个整数>=<差> //<第一个整数>*<第二个整数>=<积> //<第一个整数>/<第二个整数>=<商> #include void main() { int a,b; printf("The program gets two integers,and computes their sum,difference,product and quotient.\n"); printf("The first number:"); scanf("%d",&a); printf("The second number"); scanf("%d",&b); printf("Results as follows:\n"); printf("%d+%d=%d\n",a,b,a+b); printf("%d-%d=%d\n",a,b,a-b); printf("%d*%d=%d\n",a,b,a*b); printf("%d+%d=%f\n",a,b,1.0*a/b); //做除法时要注意,除得的结果是实数 } //2.2输入半径r的值,求出圆周长,圆面积 #include #define PI 3.14 void main() { int r; float zhouchang,mianji; printf("please input r:"); scanf("%d",&r); zhouchang=2*PI*r; mianji=2*PI*r*r; printf("zhouchang=%f\n",zhouchang ); printf("mianji=%f\n",mianji); } //3.1如何实现下述输出要求? //A.输出整数1234,输出共占8位,数据左对齐。 //B.输出整数1234,输出共占10位,数据右对齐。 //C.输出十六进制整数0xFFDE3C02,输出共占8位,数据左对齐。 //D.输出十六进制整数0xFFDE3C,输出共占8位,数据右对齐,前补0。

(最新版)C语言实验报告(答案)

《C程序设计》实验报告 学期: 教师姓名: 教研室:

实验1 熟悉C语言程序的运行环境,掌握数据描述 1.1 实验目的 1.了解在开发环境中如何编辑、编译、连接和运行一个C语言程序。 2.通过运行简单的C语言程序,初步了解C语言程序的结构特点。 3.掌握C语言数据类型的概念,学会使用C语言的相关运算符构成表达式。 1.2 实验预习 1.熟悉Visual C++的启动和退出及Visual C++中的编辑、编译、连接和运行命令。 2.了解下列命令及函数:include、main、printf、scanf。 3.熟悉Visual C++环境下每个菜单项的功能及相关命令对应的操作。 4.各种数据类型变量的定义形式及取值范围;熟悉下列标识符的含义。 int、short (int)、long (int)、unsigned (int)、float、double、char、void 5.各类运算符的优先级和结合规则。 6.常量与变量的区别和联系。 运行环境: 1.双击桌面Visual C++快捷方式进入Visual C++,或通过执行“开始——>程序——> Microsoft Visual Studio 6.0——> Microsoft Visual C++6.0”或执行文件"C:\Program Files\Microsoft Visual Studio\COMMON\MSDev98\Bin\MSDEV.EXE"。 2.单击“文件”菜单的“新建”命令。 3.在打开的“新建”对话框中选择“文件”标签。 4.选择C++ Source File,在目录输入栏选择文件保存位置,然后在文件输入栏中输入文件名,扩展名为.c (例如first.c) ,单击确定按钮。如图所示:

相关文档
相关文档 最新文档