文档库 最新最全的文档下载
当前位置:文档库 › C语言上机实验新版

C语言上机实验新版

C语言上机实验新版
C语言上机实验新版

一、正确识别硬件,将下列硬件的正确名称序号写到对应的的位置上

①显示器②CPU ③光驱④硬盘⑤光笔⑥主板⑦软盘⑧内存条⑨集线器

( ) ( ) ( ) ( ) ( ) ( )

( ) ( ) ( ) ( ) ( ) ( )

二、计算机基础操作

1、用正确的方法练习开机、关机、重启(热启动、物理/强制重启动)

2、练习快捷方式 Alt+Tab 功能是实现不同窗口间的切换

3、练习以下快捷键,体会其功能:

Ctrl+A Ctrl+C Ctrl+V Ctrl+S Alt+F4

4、练习 Ctrl+Alt+Delet 打开Windows任务管理器,熟悉其界面

三、打开VC6.0C语言编辑器,新建文本文件,用自己的名字保存为.C 格式的C源程序,练习编译、组建、运行

#include "stdio.h"

main()

{

printf("C语言程序设计练习\n");

printf("hello\n");

printf("练习完毕\n"); }

四、启动VC6.0编辑系统,新建C语言源程序,命名为练习一.c格式,做C语言系统框架,在界面上输出"我会编辑、编译、组建、运行一个简单的C语言程序了"字样,体会完成一个C语言程序的运行过程 #include "stdio.h"

main( )

{ }

五、标出以下整型数据的权值,然后用多种方法转换成其它进制的整型数据,再上机验证(1111101111)2=( )10=(0 )8=(0x )16

( )2=( )10=(02473)8=(0x )16

( )2=( )10=(0 )8=(0x5a4f)16

( )2=(15632)10=(0 )8=(0x )16

提示:1、二进制不能输入、出

2、八进制、十进制及十六进制的控制格式分别是: %o %d %x(%X)

六、加老师的QQ:913667056

发送电子邮件:english-xyj@https://www.wendangku.net/doc/cf3823838.html,

谈谈你对老师授课的要求,提出所需要的服务

一、运行如下C语言程序,描述其语句的基本功能

#include "stdio.h" /* */

#define PI 3.1415926 /* */ main() /* */ { double Area,r; /* */

printf("C语言程序演示\n"); /* */ printf("从键盘上给变量r赋值: "); /* */

scanf("%lf",&r); /* */

Area=PI*r*r; /* */

printf("圆的半径=%f\n",r); /* */

printf("圆的面积=%lf\n",area); /* */

}

二、启动VC6.0C语言编辑系统,新建文本文档,用自己的名字命名并保存为.C格式的C语言源程序,键

入如下程序,编译、组建、运行正确后,在注释中分析并写出每条语句的功能。

#include "stdio.h" /* */

#define M 100 /* */

main() /* */

{

int x,y; /* */

x=100; /* */

y=200; /* */

printf("x=%d,y=%d\n",x,y); /* */

printf("x+y=%d\n",x+y); /* */

printf("M=%d\n",M); /* */

}

三、在VC6.0编译系统下新建文本文件,保存为练习一.c格式,按要求完成操作,并编译、组建、运行。 #include "stdio.h"

main()

{

/* 输出一个整型十进制数 */

/* 输出一个整型八进制数及标志 */

/* 输出一个整整型十六进制数及标志 */

/* 输出一个实型数(用%f 控制格式) */

/* 输出一个实型数(用%lf控制格式) */

/* 输出一个实型数(用%e控制格式) */

/* 输出&字符的十进制编号(ASCII码值) */

/* 用常规格式输出字符& */

/* 用十进制格式输出字符& */

/* 用八进制格式输出字符& */

/* 用十六进制格式输出字符& */

}

四、在VC6.0编译系统下新建文本文件,保存为练习二.c格式,按要求完成操作,并编译、组建、运行。 #include "stdio.h"

main()

{ int x=12345;

printf("%d\n",x%10); /* 功能: */ printf( ); /* 功能:输出中间三位数 */ printf( ); /* 功能:输出中间三位类加和 */ printf /* 功能:后三位逆序减前三位逆序 */ printf /* 功能:逆序输出变量x */ }

五、在VC6.0编译系统下新建文本文件,保存为练习三.c格式,按要求完成操作,并编译、组建、运行。 #include "stdio.h"

main()

{

double x=123.4567;

printf /* 用指数标准格式访问 */

/* 访问变量x的整数部分 */

/* 访问变量x的小数部分 */

}

六、根据注释完成以下程序的要求,并编译、组建、运行,体会输入、出的结果

#include "stdio.h"

#define PI 3.1415926

main()

{

________ Area,r; /* 定义双精度的变量Area,r */ printf("C语言程序演示\n");

printf("从键盘上给变量r赋值: ");

scanf("%lf",&r);

Area=_________; /* 计算机圆的面积并赋给Area */ printf("圆的半径=_____",r); /* 输出圆的半径格式为:圆的半径= */ printf("圆的面积=%lf\n",_____); } /* 输出圆的面积格式为:圆的面积= */ 七、在VC6.0编译系统下新建文本文件,按要求完成操作,并编译、组建、运行。

#include "stdio.h" #include "stdio.h"

main() main()

{ {

int x=12,y; int x=12,y;

y=x++; y=-x++;

printf("%d%d",x,y); printf("%d%d\n",x,y);

y=--x; y=--x;

printf("%d%d",x,y); printf("%d%d\n",x,y);

x=y++; x=-y++;

printf("%d%d",x,y); printf("%d%d\n",x,y);

} }

程序运行后的输出结果是:程序运行后的输出结果是:

学苑学习中心计算机上机实验(三)

一、程序运行后的输出结果是

#include "stdio.h" #include "stdio.h"

main() main()

{ {

int a,b,c; int a,b,c;

a=b=c=2; a=2,b=2,c=2;

a=b+c,b++; a=(b+c,b++);

printf("a=%d\n",a); printf("a=%d\n",a);

printf("b=%d\n",b); printf("b=%d\n",b);

printf("c=%d\n",c); printf("c=%d\n",c);

} }

二、分析以下表达式的类型和值,并上机验证

①int a=10; a+=a-=a+2; ②(int)((double)(5/2)+2.5)

③int i,n; n=i=2,++i,i++; ④(double)4/2+2.5*25

⑤int a,b; a=b=2; a+=b*a ⑥3.4+(int)12.34%7-2.2

⑦int a=2,b=4; ab>b

⑨1+3/2 ⑩1+3./2

三、运行程序,理解以下地址概念

#include “stdio.h”

main()

{

int x,y[10];

printf(“%p\n”,main);

printf(“%p\n”,printf);

printf(“%p\n”,y);

printf(“%p\n”,&x);

/* VC6.0编译系统的地址是位进制的整型数据 */

/* 地址常量是: 和 */

}

四、写出以下程序的输出结果,并上机验证

#include “stdio.h” #include “stdio.h”

void main() void main()

{ {

int a,b,c; printf(“%d\n",!10+-4);

printf(“%d\n”,10+!-4);

a=b=2; printf(“%f\n”,1.0+3);

c+=a+b; printf(“%d\n”,12.+10);

printf(“%d\n”,a+b+c); printf(“%lf\n”,34);

printf(“%d\n”,(a,b,c)); printf(“%e\n”,345e-1);

printf(“%d\n”,a?a+b:a-b); printf(“%E\n”,3456.);

} }

五、概念填空

1、优先级最高的运算符:

2、有多重功能的运算符:

3、单目运算符:

4、结合方向自右至左的运算符:

5、关系运算符按优先级排序:

6、条件运算符的格式:

7、逗号运算符的格式:

8、C语言程序三个文件的扩展名:

9、C语言支持的语句有那三种:

10、C语言语句不需要分号标志的是:

11、写出五个库函数的名称:

12、函数的标志: 复合语句的标志:

13、C程序的书写格式:

六、内存地址编号的原则:给每个字节编一个8位16进制的号,给以下内存模型图编号

学苑学习中心计算机上机实验(四)

1、运行以下程序,从键盘上输入数据,练习scanf输入格式main()

{

int a,b,c;

printf("给a,b,c赋值:");

scanf("%d%d%d",&a,&b,&c);

printf("a=%d\n",a);

printf("b=%d\n",b);

printf("c=%d\n",c);

}

键盘上的输入格式为:

main()

{

int a,b,c;

printf("给a,b,c赋值:");

scanf("%d,%d,%d",&a,&b,&c);

printf("a=%d\n",a);

printf("b=%d\n",b);

printf("c=%d\n",c);

}

键盘上的输入格式为:

main()

{

int a,b,c;

printf("给a,b,c赋值:");

scanf("a=%d,%d%d",&a,&b,&c);

printf("a=%d\n",a);

printf("b=%d\n",b);

printf("c=%d\n",c);

}

键盘上的输入格式为:

2、改正scanf输入格式中的逻辑错误,使在定义变量中输入要求的数据

#include "stdio.h"

main()

{ double x;

float y;

scanf("%f%lf",&x,&y);

printf("双精度数x=%f\n",x);

printf("单精度数y=%f\n",y);

}

从键盘上给x赋值12.3,给y赋值34.5

3、对以下实型数进行四舍五入操作,并上机验证结果的正确性

main()

{ double x=123.3457;

printf("%g\n", );/* 保留一位小数 */ printf("%g\n", );/* 保留二位小数 */

printf("%g\n", );/* 保留三位小数 */

printf("%g\n", );/* 保留四位小数 */ }

4、写出以下程序的输出结果,并上机验证

main()

{

int x=100,y=200;

printf("%d\n",x,y);

printf("%d\n",(x,y));

printf("%d %d\n",x);

printf("%d %d\n",x,y);

}

5、程序的功能是将整型变量x,y从键盘上赋值并输出,而后交换x和y的值再输出,请填空

main()

{

int x,y;

printf("给变量x,y赋值:");

scanf("%d%d",&x,&y);

printf("x=%d,y=%d\n",x,y);

________ /* 第一种交换:加减法交换 */

printf("x=%d,y=%d\n",x,y);

}

main()

{

int x,y;

printf("给变量x,y赋值:");

scanf("%d%d",&x,&y);

printf("x=%d,y=%d\n",x,y);

________ /* 第二种交换:乘除法交换 */

printf("x=%d,y=%d\n",x,y);

}

main()

{

int x,y,t;

printf("给变量x,y赋值:");

scanf("%d%d",&x,&y);

printf("x=%d,y=%d\n",x,y);

________ /* 第三种交换:引入第三者交换 */ printf("x=%d,y=%d\n",x,y);

}

6、课后题上机操作

P33 11题~12题

P34 15题~20题

P74 11题

P75 15题~18题

学苑学习中心计算机上机实验(五)

以下程序要求先由自己执行出结果,再上机调试运行出结果来验证正确性。

1、 #include "stdio.h"

main()

{

int x=3;

if(x++)

printf("%d\n",x++);

printf("%d\n",x++);

printf("%d\n",x);

}

2、 #include "stdio.h"

main()

{

int x=0;

if(x++)

printf("%d\n",x++);

printf("%d\n",x++);

printf("%d\n",x);

}

3、 #include "stdio.h"

main()

{

int x=0;

if(x++);

printf("%d\n",x++);

printf("%d\n",x++);

printf("%d\n",x);

}

4、 #include "stdio.h"

main()

{

int a,b,c;

a=b=c=100;

if(!a)

a++;b++;c++;

printf("a=%d\n",a);

printf("b=%d\n",b);

printf("c=%d\n",c);

}

5、 #include "stdio.h"

main()

{

int a,b,c;

a=b=c=100;

if(!a)

a++,b++,c++;

printf("a=%d\n",a);

printf("b=%d\n",b);

printf("c=%d\n",c);

}

6、 #include "stdio.h"

main()

{

int a,b,c;

a=b=c=100;

if(!a)

{ a++;b++;}c++;

printf("a=%d\n",a);

printf("b=%d\n",b);

printf("c=%d\n",c);

}

7、 #include "stdio.h"

main()

{

int x,y,z;

printf("给变量x,y,z赋值:");

scanf("%d%d%d",&x,&y,&z);

printf("%d %d\n",x>y>z,x!=y);

printf("%d %d\n",!x!=z,!x&&z++);

printf("%d\n",z);

}

程序运行时从键盘上输入 1 2 3↓(↓表示回

车)

8、 #include "stdio.h"

main()

{

int a,b,c;

printf(" 给变量a,b,c赋值:");

scanf("%d%d%d",&a,&b,&c);

printf("%d %d %d\n",a,b,c);

if(a>b)

a+=b,b=a-b,a=a-b;

if(a>c)

a+=c,c=a-c,a=a-c;

if(b>c)

b+=c,c=b-c,b=b-c;

printf("%d %d %d\n",a,b,c);

}

9、 #include "stdio.h"

main()

{

int x,y;

x=100,y=200;

if(x!=y)

if(--y)

printf("%d\n",x+y);

else

printf("%d\n",x+y);

printf("%d\n",x+y);

}

10、 #include "stdio.h"

main()

{

int x,y;

x=200,y=200;

if(x!=y)

if(--y)

printf("%d\n",x+y);

else

printf("%d\n",x+y);

printf("%d\n",x+y);

}

程序的功能是求出最大值和最小值,请用正确的表达式填空

11、 #include "stdio.h"

main()

{

int a,b,c,max,min;

printf("给a,b,c赋值:);

scanf("%d%d%d",&a,&b,&c);

max=a>b?a:b;

max=_________;

min=a

min=_________;

printf("最大值 max=%d\n",max);

printf("最小值 min=%d\n",min);

}

12、 #include "stdio.h"

main()

{

char ch=’&’,k;

k=!ch!=0;

printf(“k=%d\n”,k);

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

}

学苑学习中心计算机上机实验(六)

一、填空复习自定义函数的概念

自定义函数的定义格式:

自定义函数的声明格式:

自定义函数的调用格式:

二、列出以下程序中的定义格式、调用格式(包括库函数的调用格式)、声明格式

#include

#include

void fun(char *a);

main() 定义格式:有几个列几个

{ char s[81];

void NONO();

printf("Enter a string:\n");

gets(s);

fun(s);

printf("The string after deleted:\n"); 声明格式:有几个列几个

puts(s);

NONO();

}

void fun(char *a)

{

}

void NONO( )

{ /* 请在此函数内打开文件,输入测试数据,调用 fun 函数,输出数据,关闭文件。 */

char s[81];

int i; 调用格式:有几个列几个

FILE *rf,*wf;

rf = fopen("b33.in","r");

wf = fopen("a33.out", "w") ;

for (i=0;i<4;i++)

{ fscanf(rf,"%s",s);

fun(s);

fprintf(wf,"%s\n",s);

}

fclose(rf);

fclose(wf) ;

}

三、请写出已学过的五个库文件的名字: 、、、、

然后试调用以下库函数: abs fabs log10 isupper islower

四、在VC6.0编译器下做无类型自定义函数HI,没有参数且功能是输出

"热烈祝贺第十四届西洽会成功举办"

1、将其放在主函数的上部调用

2、将其放在主函数的下部调用

实验目的:练习定义格式、调用格式、声明格式

五、以下函数fun的功能是实现两个整型数据的交换,整型数据由实参传给形参,请填写正确的语句实现

两个整型数据的交换,并上机验证

#include "stdio.h"

main()

{ void fun(int,int);

int a,b;

pritf("给变量a,b赋值:");

scanf("%d%d",&a,&b);

fun(a,b);

printf("程序结束,谢谢!");

}

void fun(int a,int b)

{

int t;

printf("a=%d,b=%d\n",a,b);

_______________________ /* 用好多好多的方法呀 */

printf("a=%d,b=%d\n",a,b);

}

六、以下程序例示了函数参数之间的单向传递关系,请写出程序的输出结果,并上机验证

#include "stdio.h"

void try(int,int,int);

main()

{

int x=2,y=3,z=0;

printf("(1) x=%d y=%d z=%d\n",x,y,z); 程序的输出结果是: try(x,y,z);

printf("(4) x=%d y=%d z=%d\n",x,y,z);

}

void try(int x,int y,int z)

{

printf("(2) x=%d y=%d z=%d\n",x,y,z);

x=x+y;

x*=x;

y*=y;

printf("(3) x=%d y=%d z=%d\n",x,y,z);

}

七、计算机基础操作:

1、查看当前计算机的基本配置信息:CPU主频: CPU型号:内容容量:

硬盘容量:

2、计算机硬件系统的五大组成部分:

3、练习使用键盘上的 Capslock 键

Insert 键

Print Screen SysRq 键

简单描述一下它们的功能:

学苑学习中心计算机上机实验(七)

认真阅读以下程序,算出结果,再上机验证...................(通信机制

....:.单向通信

....)

1、下面程序的输出是______。

int m=13;

int fun2(int x,int y)

{ int m=3;

return(x*y-m);

}

main( )

{ int a=7,b=5;

printf("%d\n",fun2(a,b)/m);}

2、程序运行后的输出结果是______。

fun(int a, int b)

{ if(a>b) return(a);

else return(b);

}

main()

{ int x=3,y=8,z=6,r;

r=fun(fun(x,y),2*z);

printf("%d\n",r); }

3、该函数的返回值类型是______。[此题不需要上机验证]

fun(int *p)

{ return *p; }

4、请在以下程序第一行的下划线处填写适当内容,使程序能正常运行。

______( double,double);

main()

{ double x,y;

scanf("%1f%1f",&x,&y);

printf(%1f\n",max(x,y));

}

double max(double a,double b)

{ return(a>b ? a:b);}

5、若程序中定义了以下函数,

double myadd(double a,double b)

{return(a+b);}

并将其放在调用语句之后,则在调用之前应该对函数进行说明,以下选项中错误的说明是______。

A、double myadd(double a, b);

B、double myadd(double,double);

C、double myadd(double b, double a);

D、double myadd(double x, double y); 6、有以下程序, 执行后输出结果______。

void f(int v, int w)

{ int t;

t=v; v=w; w=t; }

main()

{ int x=1,y=3,z=2;

if(x>y) f(x,y);

else if(y>z) f(y,z);

else f(x,z);

printf("%d,%d,%d\n",x,y,z); }

7、函数fun的功能是计算x^n。

double fun(double x,int n)

{int i; double y=1;

for(i=1;i<=n;i++) y=y*x;

return y; }

主函数中已经正确定义m、a、b变量并赋值,并调用fun函数计算:m=a^4+b^4-(a+b)^3。实现这一计算的函数调用语句为______。

8、有以下程序, 程序运行后的输出结果是______。int f1(int x,int y){return x>y?x:y;}

int f2(int x,int y){return x>y?y:x;}

main()

{ int a=4,b=3,c=5,d=2,e,f,g;

e=f2(f1(a,b),f1(c,d));

f=f1(f2(a,b),f2(c,d));

g=a+b+c+d-e-f;

printf("%d,%d,%d\n",e,f,g); }

9、有以下程序, 程序运行后的输出结果是______。#define P 3

void F(int x){ return(P*x*x);}

main()

{printf("%d\n",F(3+5));}

10、有以下程序

int sub(int n)

{ return(n/10+n%10); }

main()

{ int x,y;

scanf("%d",&x);

y=sub(sub(sub(x)));

printf("%d\n",y); } 若运行时输入:1234<回车>,程序的输出结果是______。

11、有以下程序,程序执行后变量w中的值是

______。

int fun1(double a){return a*=a;}

int fun2(double x,double y)

{ double a=0,b=0;

a=fun1(x);b=fun1(y); return(int)(a+b); } main()

{double w;w=fun2(1.1,2.0);……}

12、有以下程序, 程序的运行结果是______。

void fun2 (char a, char b)

{printf ("%c %c", a,b);}

char a='A',b='B';

void fun1(){ a='C' ; b='D'; }

main()

{ fun1();

printf("%c %c ",a,b);

fun2 ('E', 'F'); }

13、有以下程序, 执行后的输出结果是______。fun(int x, int y){return(x+y);}

main()

{ int a=1,b=2,c=3,sum;

sum=fun((a++,b++,a+b),c++);

printf("%d\n",sum); }

14、以下程序中,函数fun的功能是计算x2-2x+6,主函数中将调用fun函数计算:

y1=(x+8)2-2(x+8)+6

y2= sin2(x)-2sin(x)+6

请填空。

#include "math.h"

double fun(double x){ return (x*x-2*x+6);} main()

{ double x,y1,y2;

printf ("Enter x: "); scanf ("%lf",&x); y1=fun(______);

y2=fun(______);

printf ("y1=%1f,y2=%1f\n",y1,y2); }

15、下列程序的输出结果是______。

int t(int x,int y,int cp,int dp)

{ cp=x * x+y*y;

dp=x*x-y*y; }

main( )

{ int a=4,b=3,c=5,d=6;

t(a,b,c,d);

printf("%d %d\n",c,d);

} 16、下面的函数调用语句中func函数的实参个数是______。

func(f2(v1,v2),(v3,v4,v5),(v6,max(v7,v8)));

17、以下程序的功能是:通过函数func输入字符并统计输入字符的个数。输入时用字符@作为输入结束标志。请填空。

#include

long ______; /* 函数说明语句 */

main()

{ long n;

n=func(); printf("n=%1d\n",n);

}

long func()

{ long m;

for(m=0;getchar()!='@'; m++);

return m; }

18、有以下程序, 程序运行后的输出结果是_____。#include

int f(int x,int y)

{ return((y-x)*x); }

main()

{ int a=3,b=4,c=5,d;

d=f(f(a,b),f(a,c));

printf("%d\n",d); }

19、有以下程序

#include

int fun(int x,int y)

{ if(x==y) return(x);

else return((x+y)/2); }

main()

{ int a=4,b=5,c=6;

printf("%d\n",fun(2*a,fun(b,c))); }

程序运行后的输出结果是______。

20、请将以下程序中的函数声明语句补充完整。

#include

int ______;

main()

{ int x,y,(*p)( );

scanf("%d%d",&x,&y);

p=max;

printf("%d\n",(*p)(x,y));

}

int max(int a,int b)

{ return(a>b?a:b);

}

学苑学习中心计算机上机实验(八)

认真阅读以下程序,算出结果,再上机验证...................(通信机制

....:.双向

..或单

..向通信

...)

1、下面程序的运行结果是______。

void swap(int *a,int *b)

{int *t;

t=a;a=b;b=t;

}

main()

{int x=3,y=5,*p=&x,*q=&y;

swap(p,q);

printf("%d%d\n",*p,*q);

}

2、以下程序运行后的输出结果是______。

void fun(int x,int y)

{x=x+y;y=x-y;x=x-y;

printf("%d,%d,",x,y);}

main()

{int x=2,y=3;

fun(x,y);

printf("%d,%d\n",x,y);

}

3、在调用函数时,如果实参是简单变量,它与对应形参之间的数据传递方式是______。

A、地址传递

B、单向值传递

C、由实参传给形,再由形参传回实参

D、传递方式由用户指定

4、以下程序的结果是______。

int a,b;

void fun()

{ a=100; b=200; }

main()

{ int a=5,b=7;

fun();

printf("%d%d\n",a,b);

}

5、下列程序段的输出结果是______。

void fun(int *x,int *y)

{ printf("%d %d",*x,*y);*x=3;*y=4;} main()

{ int x=1,y=2;

fun(&y,&x);

printf(" %d %d",x,y); } 6、下列程序的运行结果是______。

void fun(int *a,int *b)

{ int *k;

k=a;a=b;b=k;

}

main()

{ int a=3,b=6,*x=&a,*y=&b;

fun(x,y);

printf("%d %d",a,b);

}

7、下列程序的输出结果是______。

void fun(int *n)

{ while((*n)--);

printf("%d",++(*n));

}

main()

{ int a=100;

fun(&a);

}

8、下面程序的输出是______。

void prtv(int *x)

{ printf("%d\n",++*x);

}

main()

{ int a=25;

prtv(&a);

}

9、有以下程序, 程序运行后的输出结果是______。#include

int a=5;

void fun(int b)

{ int a=10;

a+=b; printf("%d",a);

}

main()

{ int c=20;

fun(c); a+=c; printf("%d\n",a);

}

10、有以下程序, 程序运行后的输出结果是______。

#include

main()

{ int m=1,n=2,*p=&m,*q=&n,*r;

r=p;p=q;q=r;

printf("%d,%d,%d,%d\n",m,n,*p,*q); }

11、有以下程序, 程序运行后的输出结果是______。

#include

void fun(int *a,int *b)

{ int *c;

c=a;a=b;b=c;

}

main()

{ int x=3,y=5,*p=&x,*q=&y;

fun(p,q);printf("%d,%d,",*p,*q);

fun(&x,&y);printf("%d,%d\n",*p,*q); }

12、有以下程序, 程序运行后的输出结果是______。

#include

void f(int *p,int *q);

main()

{ int m=1,n=2,*r=&m;

f(r, &n);printf("%d,%d",m,n);

}

void f(int *p,int *q)

{ p=p+1;*q=*q+1; }

13、请选出以下程序的输出结果______。

#include

sub(x,y,z)

int x,y,*z;

{

*z=y-x;

}

main()

{

int a,b,c;

sub(10,5,&a);

sub(7,a,&b);

sub(a,b,&c);

printf("%d,%d,%d\n",a,b,c);

} 14、下列程序的输出结果是______。

int t(int x,int y,int cp,int dp)

{ cp=x * x+y*y;

dp=x*x-y*y;

}

main( )

{

int a=4,b=3,c=5,d=6;

t(a,b,c,d);

printf("%d %d\n",c,d);

}

15、有以下程序, 程序运行后的输出结果是______。

void fun(char *a, char *b)

{ a=b; (*a)++; }

main()

{

char c1='A',c2='a',*p1,*p2;

p1=&c1; p2=&c2; fun(p1,p2);

printf("%c%c\n",c1,c2);

}

16、有以下程序

main()

{

int a=7,b=8,*p,*q,*r;

p=&a;q=&b;

r=p; p=q;q=r;

printf("%d,%d,%d,%d\n",*p,*q,a,b);

}

程序运行后的输出结果是______。

17、有以下程序,执行后输出结果是______。int *f(int *x,int *y)

{

if(*x<*y)

return x;

else

return y;

}

main()

{ int a=7,b=8,*p,*q,*r;

p=&a; q=&b;

r=f(p,q);

printf("%d,%d,%d\n",*p,*q,*r);

}

学苑C语言上机分类

以下题做完后评分,并在后面空白处写出本题的得分

一、函数入门类:6-1 26-128-1 29-249-1

78-380-2 82-3 100-3 91-1

二、循环类

while循环控制:8-248-151-252-2106-2112-2

for循环控制:46-291-210-3 23-3

三、表达式求值类

用次数控制循环:10-225-3 27-1 33-1 35-3 40-2

42-3 47-3 58-1 58-2 67-1

68-1 78-1 88-2 89-2 94-2 97-2 104-2 用精度控制循环:7-1 53-3 98-2 102-2(二分法)

迭代法控制循环:26-3 35-2

四、素数类:3-2 5-1(筛选法) 12-3 24-3 29-3 35-1

53-1 56-2 72-1 101-2 102-3 109-3

五、指针类:13-2 13-318-224-2 45-2 48-2

49-2 60-1 79-2 81-2 84-2 105-2

六、一维数组类

初始化及访问题:3-3 11-2 11-3(方差)12-1 19-2 19-3

22-1(进制转换) 25-2 28-2 34-1 41-1 42-2

105-3 43-1 43-2 44-1 50-3 51-1 54-3

54-1 59-1 68-3 69-3 70-3 71-3 72-3

75-1 76-1 83-3 87-3 87-2 88-3 94-3 95-3 排序题:26-2 55-2 86-2

极值题:3-1 9-1 55-3 71-1 83-2 99-3

移位题:32-3 79-3

统计类题:30-3 39-1 40-1 63-3 64-3 65-3 66-3 67-3

七、二维数组类:

初始化及访问题:9-214-3 38-1 69-1 97-1

极值题:80-3 81-1 82-1

移位题:62-1 109-1

对角题:31-2 77-1 100-2

三角题:18-3 45-3 111-3

转置题:36-3 47-1 93-3

周边题:81-3

八、字符串类

构造串题:2-2 21-2 23-1 24-1 25-1 21-1 30-1 31-1 32-1 37-1 37-3 38-2 41-2(进制转换)

44-2 55-1 57-1 59-2 60-2 61-2

62-2 63-2 64-2 65-2 66-2 67-2 68-2

69-2 70-2 71-2 72-2 75-2 109-2 111-2 简单题: 4-2 16-1 20-2 23-2 33-2 53-2 61-1

64-1 77-2 84-1(进制转换) 90-1 94-1 108-2

连接题: 9-3

统计题: 6-3 36-1 39-3 50-1 54-2 58-3

59-3 60-3 61-3 62-3 82-2 92-2 103-1 排序题:7-2(插入法) 13-1 30-2 57-2(排序法) 103-3

移位题:5-3 11-1 52-1 65-1 66-1 110-2 111-1

返回地址值题:5-2 15-1 17-2 52-3 89-3 90-3

星号题: 8-3 15-3 16-3 22-3 32-2 38-3

子串查找次数及替换题: 14-1 47-2 76-2 78-2 85-1 106-3 常规编程: 4-3 27-3 31-3 34-3 46-3 51-3

56-3 75-3 76-3 77-3 84-3 86-3

91-3 97-3 101-3 107-3 112-3

三个题都是字符串:73套 74套 85套

九、字符串数组:1-1 2-1 8-1 20-3 21-1

十、递归类: 1-2 15-2 27-2 34-1 70-1 83-1 95-1 113-1 十一、宏定义操作类:39-2 113-2

十二、结构体类:1-3 10-1 17-3 33-3 40-3

41-3 45-1 57-3 79-1 80-1

十三、链表类:2-3 6-2 7-3 14-2 16-1 37-2 42-1

46-1 56-1 63-1 86-1 99-1 101-1 106-1

十四、文件类:4-1 17-1 18-1 19-1 20-1 87-1 88-1

学苑学习中心C 语言章节练习(一)

认真阅读以下程序,算出结果,再上机验证...................(语句控制结构:选择与循环............

) 1、执行下面程序片段的结果是______。 int x=23; do { printf("%2d",x--); } while(!x); 2、若x 是int 型变量,且有下面的程序片段 for(x=3;x<6;x++) printf((x%2)?("**%d"):("##%d\n"),x); 上面程序片段的输出结果是______。 3、请读程序: #include main() { int a, b ; for(a = 1 , b = 1 ; a <= 100 ; a++) { if(b >= 20) break ; if (b%3 == 1) { b += 3 ; continue ; } b -= 5 ; } printf("%d\n", a) ; } 上面程序的输出结果是______。 4、以下程序的输出结果是______。 #include main() { int i; for(i=1;i<5;i++) { if(i%2) printf("*"); else continue; printf("#"); } printf("$\n"); } 5、有以下程序 main() { int c; while((c=getchar() )!='\n') { switch(c-'2') { case 0: case 1: putchar(c+4); case 2:putchar(c+4);break; case 3:putchar(c+3); default:putchar(c+2);break; } } } 从第一列开始输入以下数据,↙代表一个回车符。 2473↙ 程序的输出结果是______。 6、以下程序的输出结果是______。

main() { int n=4; while(n--)printf("%d ",--n); } 7、以下程序的输出结果是______。

main() { int a=-1,b=1, k; if((++a<0)&&!(b--<=0)) printf("%d %d\n",a,b); else printf("%d %d\n",b,a); } 8、以下程序的功能是调用函数fun 计算:m=1-2+3-4+…+9-10,并输出结果。请填空。 int fun ( int n) { int m=0,f=1,i;

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

{ m+=i*f;

f=______;

} return m; } main() { printf("m=%d\n",______);} 9、有以下程序: main() { int k=4,n=0; for( ; n

k--; } printf("%d,%d\n",k,n); } 程序运行后的输出结果是______。 10、要求以下程序的功能是计算: s=1+1/2+1/3+…+1/10。 main()

{ int n; float s; s=1.0; for(n=10;n>1;n--) s=s+1/n; printf("%6.4f\n",s); } 程序运行后输出结果错误,导致错误结果的程序行是______。 11、有定义语句:int a=1,b=2,c=3,x;,则以下选项中各程序段执行后,x 的值不为3的是______。 A 、if (c

12、有以下程序

main()

{ int a=5,b=4,c=3,d=2;

if(a>b>c)

printf("%d\n",d);

else if((c-1>=d)==1)

printf("%d\n",d+1);

else

printf("%d\n",d+2);

}

执行后输出的结果是______。

13、以下程序运行后的输出结果是______。main()

{int x=15;

while(x>10&&x<50)

{x++;

if(x/3){x++;break;}

else continue;

}

printf("%d\n",x);

}

14、有以下程序

main()

{ int i=0,s=0;

do{

if(i%2){i++;continue;}

i++;

s+=i;

} while(i<7);

printf("%d\n",s); }

执行后输出的结果是______。

15、有以下程序

main()

{ int i;

for(i=0;i<3;i++)

switch(i)

{ case 1: printf("%d",i);

case 2: printf("%d",i);

default: printf("%d",i);

}

}

执行后输出的结果是______。

16、有以下程序

main()

{int a=15,b=21,m=0;

switch(a%3)

{case 0:m++;break;

case 1:m++;

switch(b%2)

{default:m++;

case 0:m++;break;

}

}

printf("%d\n",m); 17、以下程序的功能是:按顺序读入10名学生4门课程的成绩,计算出每位学生的平均分并输出,程序如下:

main()

{int n,k;

float score,sum,ave;

sum=0.0;

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

{for(k=1;k<=4;k++)

{scanf("%f",&score); sum+=score;}

ave=sum/4.0;

printf("NO%d:%f\n",n,ave);

}

}

上述程序运行后结果不符合题意,是因为其中有一条语句置于程序中的位置错误,这条语句是

______。

18、有以下程序:

#include

main()

{char c;

while((c=getchar())!='?')

putchar(--c);

}

程序运行时,如果从键盘输入:Y?N?↙,则输出结果为______。

19、有以下程序:

main()

{ int x=0,y=5,z=3;

while(z-->0&&++x<5) y=y-1;

printf("%d,%d,%d\n",x,y,z);

}

程序执行后的输出结果是______。

20、有以下程序:

main()

{

int i,s=0;

for(i=1;i<10;i+=2) s+=i+1;

printf("%d\n",s);

}

程序执行后的输出结果是______。

21、下面程序的功能是输出以下形式的金字塔图案:

*

***

*****

*******

main()

{ int i,j;

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

{ for(j=1;j<=4-i;j++)printf(" ");

for(j=1;j<=______;j++)printf("*");

printf("\n");

}

22、有以下程序

main()

{ char k; int i;

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

{ scanf("%c",&k);

switch(k)

{ case '0': printf("another\n");

case '1': printf("number\n");

}

}

}程序运行时,从键盘输入:01↙,程序执行后的输出结果是______。

23、有以下程序

main()

{ int i,n=0;

for( i=2;i<5;i++)

{do

{ if(i%3) continue;

n++;

}while(!i);

n++;

}

printf("n=%d\n",n);

}

程序执行后输出结果是______。

24、以下sum函数的功能是计算下列级数之和。

S=1+x+x^2/2!+x^3/3!+…+x^n/n!

请给函数中的各变量正确赋初值。

double sum(double x,int n)

{ int i;

double a,b,s;

______

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

{a=a*x;b=b*i;s=s+a/b;}

return s;

}

25、有以下程序

main()

{ int n=0,m=1,x=2;

if(!n) x-=1;

if(m) x-=2;

if(x) x-=3;

printf("%d\n",x);

}

执行后输出的结果是______。

26、以下程序中,while循环的循环次数是______。main()

{

int i=0;

while(i<10)

{ if(i<1) continue;

if(i==5)break;

i++;

} 27、以下程序的输出结果是______。main()

{int a=0,i;

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

{ switch(i)

{case 0:

case 3:a+=2;

case 1:

case 2:a+=3;

default:a+=5;

}

}

printf("%d\n",a);

}

28、以下程序的输出结果是______。#include

main()

{ int i=0,a=0;

while(i<20)

{ for(;;)

{ if((i%10)==0) break; else i--;

}

i+=11; a+=i;

}

printf("%d\n",a);

}

29、有以下程序:

main()

{ int i;

for(i=0;i<3;i++)

switch(i)

{

case 0:printf("%d",i);

case 2:printf("%d",i);

default:printf("%d",i); }

}

程序运行后的输出结果是______。30、有以下程序

main()

{ int i=0,s=0;

for (;;)

{

if(i==3||i==5) continue;

if (i==6) break;

i++;

s+=i;

};

printf("%d\n",s);

}

程序运行后的输出结果是______。

31、以下程序运行后的输出结果是______。

main()

{ int x=1,y=0,a=0,b=0;

switch(x)

{case 1:switch(y)

{ case 0:a++; break;

case 1:b++; break;

}

case 2:a++;b++; break;

}

printf("%d %d\n",a,b);

}

32、以下程序的输出结果是______。

main()

{ int num=0;

while(num<=2)

{ num++; printf("%d\n",num); }

}

A) B) C) D)

1 1 1 1

2 2 2

3 3

4

33、阅读以下程序:

main()

{ int x;

scanf("%d",&x);

if(x--<5)printf("%d\n",x);

else printf("%d\n",x++);

}

程序运行后,如果从键盘上输入5,则输出结果是______。

34、以下程序的输出结果是______。

main()

{ int a,b;

for(a=1,b=1;a<=100;a++)

{ if(b>=10) break;

if(b%3==1)

{ b+=3; continue; }

}

printf("%d\n",a);

}

35、设有如下程序:

main()

{ int n1,n2;

scanf("%d",&n2);

while(n2!=0)

{ n1=n2%10;

n2=n2/10;

printf("%d",n1);

}

}

程序运行后,如果从键盘上输入1298,则输出结果为__ __。36、以上程序运行后的输出结果是______。

main()

{ int i=10,j=0;

do

{ j=j+i; i--;}

while(i>2);

printf("%d\n",j); }

37、以下程序运行后的输出结果是 ______。main()

{ int a=3,b=4,c=5,t=99;

if(b

if(a

printf("%d %d %d\n",a,b,c); }

38、下列程序段的输出结果是______。

int n='c';

switch(n++)

{default:printf("error");break;

case'a':

case'A':

case'b':

case'B':printf("good");break;

case'c':case'C':printf("pass");

case'd':case'D':printf("warn");

}

39、有以下程序段

int x=3;

do

{ printf("%d",x-=2);}

while(!(--x));

其输出结果是______。

40、下面fun函数的功能是将形参x的值转换成二进制数,所得二进制数的每一位数放在数组中返回,二进制数的最低位放在下标为0的元素中,其它依此类推。请填空。

fun(int x,int b[ ])

{ int k=0,r;

do

{ r=x%______;

b[k++]=r;

x/=______;

}while(x); }

41、请读程序:

#include

main()

{

int num=0;

while( num <=2){

num++; printf("%d\n",num);

}

}上面程序的输出结果是______。

① 1 ② 1 ③ 1 ④ 1

2 2 2

3 3

4

学苑学习中心C语言章节练习(二)

认真阅读以下程序,算出结果,再上机验证...................(递归调用、函数指针

.........)

1、以下程序的输出结果是______。

main( )

{ int w=5; fun(w); printf("\n"); } fun(int k)

{ if(k>0) fun(k-1);

printf("%d",k); }

2、有以下程序

void fun(int *a,int i,int j)

{ int t;

if (i

{ t=a[i];a[i]=a[j];a[j]=t;

fun(a,++i,--j); } }

main()

{ int a[]={1,2,3,4,5,6},i;

fun(a,0,5);

for(i=0;i<6;i++)

printf("%d ",a[i]);

}执行后输出结果是______。

3、有以下程序

int f(int n)

{if (n==1) return 1;

else return f(n-1)+1;

}

main()

{int i,j=0;

for(i=1;i<3;i++) j+=f(i);

printf("%d\n",j);

}程序运行后的输出结果是______。

4、有以下程序

void f(int a[],int i, int j)

{ int t;

if(i

{ t=a[i];a[i]=a[j];a[j]=t;

f(a,i+1,j-1);

}

}

main()

{ int i,aa[5]={1,2,3,4,5};

f(aa,0,4);

for(i=0;i<5;i++)

printf("%d,",aa[i]);printf("\n"); }执行后输出结果是______。

5、下面程序的运行结果是:______。

int f(int a[],int n)

{ if(n>1) return a[0]+f(&a[1],n-1);

else return a[0];

}

main()

{ int aa[3]={1,2,3},s;

s=f(&aa[0],3); printf("%d\n",s); } 6、以下程序的输出结果是______。

main()

{ int x=0;

sub(&x,8,1);

printf("%d\n",x); }

sub(int *a,int n,int k)

{ if(k<=n) sub(a,n/2,2*k); *a+=k; }

7、有以下程序

void fun(int *a,int i,int j)

{ int t;

if(i

{ t=a[i];a[i]=a[j];a[j]=t;

i++; j--; fun(a,i,j); } }

main()

{ int x[]={2,6,1,8},i;

fun(x,0,3);

for(i=0;i<4;i++) printf("%2d",x[i]);

printf("\n");

}程序运行后的输出结果是______。

8、以下程序的输出结果是______。

long fun(int n)

{ long s;

if(n==1||n==2) s=2;

else s=n-fun(n-1);

return s; }

main()

{ printf("%ld\n",fun(3));}

9、设函数findbig已定义为求3个数中的最大值。以下程序将利用函数指针调用findbig函数。请填空。

main()

{ int findbig(int,int,int);

int (*f)(),x,y,z,big;

f=______;

scanf("%d%d%d",&x,&y,&z);

big=(*f)(x,y,z);

printf("big=%d\n",big); }

10、程序中若有如下说明和定义语句

char fun(char *);

main()

{ char *s="one",a[5]={0},(*f1)()=fun,ch; ......

}以下选项中对函数fun的正确调用语句是______。

A、(*f1)(a);

B、*f1(*s);

C、fun(&a);

D、ch=*f1(s);

11、以下程序通过函数指针p调用函数fun,请在填空栏内,写出定义变量p的语句。

void fun(int*x,int*y)

{ …… }

main()

{ int a=10,b=20;

______

p=fun; p(&a,&b);

…… }

C语言上机报告答案

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键盘¥50.5\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 。 问题2 改printf("%c,%c,%d\n",a,b,c);这条语句 改成:printf("%c %c %d\n",a,b,c);

c语言程序基础练习题00道(附答案)

1.下列四组选项中,均不是C语言关健字的选项是( A )。 A) define B) gect C) include D) while IF char scanf go type printf case pow 2.下面四个选项中,均是合法整型常量的选项是( A )。 A)160 B)-0xcdf C) -01 D)-0x48a -0xffff 01a 986,012 2e5 011 0xe 0668 0x 3.下面四个选项中,均是不合法的转义符的选项是( B )。 A) '\"' B) '\1011' C) '\011' D) '\abc' '\\' '\' '\f' '\101' 'xf' '\A' '\}' 'x1f' 4.下面不正确的字符串常量是( A )。 A)'abc' B)"12'12" C)"0" D)" " 5.以下选项中不合法的用户标识符是( A )。 A)abc.c B)file C)Main D)PRINT 6.C语言提供的合法关键字是( D )。 A) swith B) cher C) Case D)default 7.下列标识符组中,合法的用户标识符为 A A)_0123与ssiped B)del-word与signed C)list与*jer D) keep%与wind 8.在C语言中,逻辑值"真"的表示是用( C )。 A) true B) 整型值0 C)非另整型值 D) T 9若有以下定义 char s='\092'; 则该语句( b ) A)使s的值包含一个字符 B)定义不合法,s的值不确定 C)使s的值包含4个字符 D)使s的值包含3个字符 10设C语言中,int类型数据占2个字节,则float类型数据占( D )个字节。 A)1 B)2 C)8 D)4 11已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3'后,c2中的值为( A )。 A)D B)68 C)不确定的值 D)C 12逻辑运算符两侧运算对象的数据类型是 ( D )。 A) 只是0或1 B) 只能是0或非0正数 C) 只能是整型或字符型数据 D) 可以是任何合法的类型数据 13TURBO C中int类型变量所占字节数是( B )。

C语言程序设计实验报告(实验大纲+过程)

《C程序设计》实验教学大纲 一、适用范围 大纲适用信息管理专业本科教学使用。 二、课程名称 C程序设计 三、学时数与学分 总学时:90 总学分:4 实验学时:28 实验学分:1 四、教学目的和基本要求 目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解 C 语言的特点,熟练掌握 C 语言程序设计的基本方法和编程技巧。 基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。 注:带*的实验项目为选做实验项目 六、教材、讲义及参考书 《C程序设计题解与上机指导》谭浩强主编清华大学出版社 七、实验成绩评定办法 实验成绩=平时实验表现+实验报告。实验成绩占总成绩的20%。 实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。 1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。

2、实验报告:学生实验后应按时完成实验报告。 八、实验教学大纲说明 本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。实验项目多为设计性实验项目,每个设计性实验项目中都包含数个小的设计性题目,其中带*号的题目为选做题目,有时间和有能力的同学可以选做。 九、实验项目 实验一C程序的运行环境和运行一个C程序的方法 一、实验目的 1.了解Visual C++6.0编译系统的基本操作方法,学会独立使用该系统。 2.了解在该系统上如何编辑、编译、连接和运行一个C程序。 3.通过运行简单的C程序,初步了解C源程序的特点。 二、实验内容 1.用编辑程序,输入教材第一章例1.1程序,并进行编译和运行。应了解所用的系统是用什么命令进行编译和连接运行的。编译和连接后所得到的目标程序的后缀是什么形式的? 2.编写一个C程序,输出以下信息: **************************** very good! **************************** 3.输入并运行教材第一章中例1.3,了解如何在运行时向程序变量输入数据。 实验二数据类型、运算符和表达式 一、实验目的 1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。 2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。 二、实验内容 1.输入并运行以下程序: main( ) { char c1,c2; c1=97;c2=98; pr intf(“%c %c\n”,c1,c2); printf(“%d %d\n”,c1,c2); } 在此基础上 ①将第三行、第四行改为: c1=321;c2=353; 再使之运行,分析其运行结果。 ②将第二行改为: int c1,c2; 再使之运行,分析其运行结果。。 2.输入并运行以下程序:

《c语言》上机实验指导书

淮南师范学院 《C语言》 主编:井田

实验一、C 语言运行环境 (一)实验目的 1、了解C程序运行环境; 2、掌握运行环境的使用。 (二)实验设备 计算机;C编译环境 (三)实验要求 建立文件夹,采用你个人的学号+姓名来命名,例如:12111010101王明(四)实验内容 可以从以下题目中任意选做4——6题,也可自己命题,需注释说明功能 1、编程实现以下文字的输出。 I am a student. 2、编程实现交换两变量的值。(变量类型任意) 3、输入三个数,求三个数之和并输出。 4、输入三个数,求三个数中最大和最小的数并输出。 5、用sizeof测试并输出所用编译系统,int、long、short、char、float、double 等类型数据所占字节数。A=sizeof(int) 6、调用库函数,实现以下函数值的求取。 cos3.5678、log90、e2.567 #include #include void main() { printf("cos 3.5678 = %f\n", cos(3.5678)); printf("log 90 = %f\n", log(90)); printf("exp(2.567) = %f\n", exp(2.567)); }

实验报告包括:实验名称、实验目的、实验内容。其中实验内容包括程序和结果及结果分析。 实验二、常量的使用和变量与赋值 (一)实验目的 1、了解C 语言中常量的种类和作用; 2、了解基本类型常量在内存中的存储形式及变量的本质; 4、掌握赋值运算的意义和正确用法。 (二)实验设备 计算机;C编译环境 (三)实验要求 建立文件夹,采用你个人的学号+姓名来命名,例如:12111010101王明(四)实验内容 可以从以下题目中任意选做4——6题,也可自己命题,需注释说明功能 1、编程实现int、short、long、char、float、double等类型常量的输出。 2、编程实现int、short、long、char、float、double等类型变量的建立、赋值以及输出。 3、编程实现对int和float型数据进行格式化输入和输出。(要求使用格式修饰符) 4、编程实现对3个变量按照从大到小的排序。(变量类型任意) 5、编程实现不同类型数据进行赋值。 6、编程实现不同类型数据之间混合运算。(至少列举三种不同类型数据

C语言上机实验

实验1目的1、熟悉VC++语言的上机环境及上机操作过程。 2、了解如何编辑、编译、连接和运行一个C程序。 3、初步了解C程序的特点。 三、实验内容: 说明:前三题为必做题目,后两题为选做题目。 1、输出入下信息:(实验指导书P79) ************************* Very Good ************************* 2、计算两个整数的和与积。(实验指导书P81) 3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。(书 P3) 4、在屏幕上显示一个文字菜单模样的图案: ================================= 1 输入数据 2 修改数据 3 查询数据 4 打印数据 ================================= 5、从键盘上输入两个整数,交换这两个整数。 实验二 二、实验目的: 1、掌握C语言的数据类型。 2、学会使用C语言的运算符及表达式。 3、掌握不同数据类型的输入输出方法。 三、实验内容: 说明:前四题为必做题目,后两题为选做题目。 1、输入r1、r2,求出圆形垫片面积。(实验指导书P84) 2、输入华氏温度h,输出摄氏温度c。(实验指导书P85) 3、从键盘输入一个3位整数,将输出该数的逆序数。(实验指导书P89) 4、输入并运行以下程序,分析运行结果。 #include 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);

C语言上机实验[1]

实验四循环结构程序设计(4学时) 一、实验方式:一人一机 二、实验目的: 1、熟练掌握while语句、do-while语句和for语句。 2、练习并掌握循环结构的嵌套形式。 3、掌握循环结构的程序设计方法。 三、实验内容:说明:前四题为必做题目,后两题为选做题目。 1、从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结 束输入。(实验指导书P41) 2、求所有的水仙花数。水仙花数是一个3位数的自然数,该数各位数的立方和等于该数 本身。(实验指导书P42) 3、判断输入的某个数是否为素数。若是,输出YES,否则输出NO。(实验指导书P167) 4、计算π的近似值。公式如下:π/4=1-1/3+1/5-1/7+……,直到最后一项的绝对值小 于10-6为止。(实验指导书P169) 5、计算1!+2!+……+n! 的值,n值由键盘输入。(实验指导书P176) 6、输入10个整数,统计并输出其中正数、负数和零的个数。 四、实验答案:(代码+运行结果截屏) 实验五综合实验1:结构化程序设计(2学时) 一、实验方式:一人一机 二、实验目的: 1、进一步掌握选择结构、循环结构的编程特点。 2、掌握C语言的结构化程序设计思想。 3、学习利用循环结构实现的一些常用算法(如穷举、迭代、递推等)。 三、实验内容:说明:前两题为必做题目,后两题为选做题目。 1、编一程序,对于给定的一个百分制成绩,输出对应A,B,C,D,E表示的的等级成绩。设: 90分以上为A,80-89分为B,70-79分为C,60-69分为D,60分以下为E。(实验指导书P162) 2、百马百担问题。(实验指导书P45) 3、输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。 4、输出如下图案: * *** ***** ******* ***** *** * 四、实验答案:(代码+运行结果截屏)

C语言上机实验题

第六章循环控制 通过本章实验作业应达目标 1.熟悉while、for、do_while、break、continue语句的作用与使用规范。 2.学习并掌握利用while语句、for语句、do_while语句实现循环结构。 3.掌握循环结构和选择结构之间嵌套、多重循环间嵌套的设计方法。 4.进行算法设计训练,能综合所学控制结构语句解决一般问题。 本章必须上交作业 程序6_1.c、6_2.c、6_5.c、6_6.c、6_8.c上传至211.64.135.121/casp。 本章开始,上机实验项目量加大,希望同学们多多自行上机。本章实验项目有余力都可以做一下并上交。 循环程序设计 计算机解决问题都是按指定的顺序执行一系列的动作。按照特定的顺序执行相应的动作来求解问题的过程称为算法。程序中的语句是算法的体现,而算法要解决的是“做什么”和“怎么做”的问题。 计算机程序中指定语句的执行顺序称为“程序控制”。结构化的程序控制包含三种基本结构:顺序结构,选择结构和循环结构。 1. 循环设计 循环是在循环条件为真时反复执行的一组计算机指令,是计算机解题的一个重要结构。循环控制有两种基本方法:计数法和标志法。 1)计数器控制的循环 事先准确地知道循环次数,因此设计一个循环控制变量,由变量值来控制循环次数。每循环一次,循环变量的值会递增(增值通常为1或-1),当其值达到终值时结束循环。 教材例6.2、6.3、6.7都是典型的计数器控制的固定次数次数循环。 2)标志控制的循环 事先不知道准确的循环次数,由某一目标值标记循环的结束。如,教材例6.6中以|t|的值达到标记下限值1e-6作为循环的结束。 循环设计时要注意合理设计循环条件,使得循环不会成为死循环。 2. 算法 程序设计的首要工作是算法设计,离开了算法也就没有了程序。算法,是指完成某一项工作而采取的方法和步骤,具体到程序设计,是对解题过程的准确而完整的描述,并用一种程序设计语言的来实现。 循环主要用来解决程序设计中两类基本的算法:穷举和迭代。 1)穷举 穷举的基本思想是对问题的所有可能状态一一测试,直到找到解或将全部可能状态都测试过为止。穷举是一种重复型算法,其核心是设计循环,在循环体中依次测试。 例:输入两个正整数x和y,求其最大公约数。 main() {int x,y,i,flag; printf("Please input two numbers:"); scanf("%d%d",&x,&y);

C语言程序设计_上机实验指导与习题_第三版_(陈湘骥_编著_著)_华南农业大学_参考答案

C语言程序设计上机实验指导与习题 参考答案 (仅供教师内部参考) 华南农业大学

目录 上机实验 (1) 实验 1 C语言程序初步 (1) 一、实验目的 (1) 二、实验内容 (1) 实验2基本数据类型、运算和表达式 (3) 一、实验目的 (3) 二、实验内容 (3) 实验3基本输入与输出 (5) 一、实验目的 (5) 二、实验内容 (5) 实验4选择结构程序设计 (4) 一、实验目的 (4) 二、实验内容 (4) 实验5循环结构程序设计(一) (9) 一、实验目的 (9) 二、实验内容 (9) 实验6循环结构程序设计(二) (15) 一、实验目的 (15) 二、实验内容 (15) 实验7数组 (17) 一、实验目的 (17) 二、实验内容 (17) 实验8字符数组的应用 (22) 一、实验目的 (22) 二、实验内容 (22) 实验9函数的基本应用 (24) 一、实验目的 (24) 二、实验内容 (24) 实验10指针与结构体 (26) 一、实验目的 (26) 二、实验内容 (26) *实验11链表 (29) 一、实验目的 (29) 二、实验内容 (29) *实验12文件 (32) 一、实验目的 (32) 二、实验内容 (32)

上机实验 实验 1 C语言程序初步 一、实验目的 (1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。 (2)了解在该系统上如何编辑、编译、连接和运行一个C程序。 (3)通过运行简单的C程序,初步了解C程序的特点。 (4)在教师的指导下,学会使用JudgeOnline实验系统。 二、实验内容 1. 运行第一个 C 程序 [题目:The first C Program] 将下列程序输入 TC(或 VC++),编译、连接和运行该程序。 void main() { printf("The first C Program\n"); } [具体操作步骤] 以 Turbo C 上的操作为例 (1)Windows 进入后,按照第一章中介绍的方法,进入 Turbo C。 (2)在编辑窗口中输入程序。 (3)保存程序,取名为 a1.c。 (4)按照第一章中介绍的方法,编译、连接和运行程序。 2.在JudgeOnline系统中提交实现了计算a+b功能的程序 [题目 1001:计算 a+b] 由键盘输入两个整数,计算并输出两个整数的和。实现该功能的程序如下, void main() { int a, b; scanf("%d%d", &a, &b); 1

C语言常见、经典的上机实验题目

3.3 常见、经典的上机实验题目 1、 /*功能:数组x有十个元素,编程将其元素首尾颠倒。(即第一个元素与最后一个元素交换,第二个元素与倒数第二个元素交换…)。*/ main() {int a[10]={5,65,654 ,5 ,5 ,56,588,77,58,5},j,x; for(j=0;j<5;j++) {x=a[j]; a[j]=a[9-j]; a[9-j]=x;} for(j=0;j<10;j++) printf("%d\t", a[j]); } 2、 /*功能:统计输入的一串字符(假设以‘\n’结束)中,大写字母A,B,...,Z各出现的次数。(提示,用一个数组count[26]计数各个字母出现的次数,count[0]表示A出现的次数,count[1]表示B出现的次数,...,count[25]表示字母Z出现的次数。初始时count的各元素值为0。以后,每读入一个字符ch ,若它是一个大写字母,就让相应计数单元count[ch-'A']加1。*/ main( ) {int count[26] ,i; char ch[80]; for(i=0;i<26;i++) count[i]=0; gets(ch); for(i=0;i ='A'&&ch[i]<='Z') count[ch[i]- 'A']++; for(i=0;i<26;i++) printf("%c %d\t", 'A'+i,count[i]); } 3、 /*功能:键盘输入若干数,输出它们的平均值,输入值为-1时,结束输入*/ main( ) {int x,i=1,s; scanf("%d",&x); while(x!=-1) {s=s+x;i++; scanf("%d",&x); } printf("%d\n",s/i); }

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

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

长沙理工大学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键盘¥50.5\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;

C语言上机实验(第四版)参考答案

C语言上机实验(第四版)参考答案 C语言程序设计上机实验指导与习题 参考答案(第四版) (学生改编) 实验 1 C语言程序初步一、实验目的 (1)了解所用的计算机系统的基本操作方法,学会独立使用该系统。(2)了解在该系统上如何编辑、编译、连接和运行一个C程序。(3)通过运行简 单的C程序,初步了解C程序的特点。(4)在教师的指导下,学会使用在线 评判系统。 二、实验内容 1. 运行第一个C程序 [题目:The first C Program] 将下列程序输入visual c++ ,编译、连接和运行该程序。 #include\main() { printf(\ } [具体操作步骤] (1)在编辑窗口中输入程序。 (2)保存程序,取名为 a1.c。 (3)按照第一章中介绍的方法,编译、连接和运行程序。 (4)按照第三章介绍的方法,将代码提交到在线评判系统,系统返回“通过”,则该题完成。 2. 在在线评判系统中提交实现了计算a+b功能的程序 [题目1001:计算a+b] 由键盘输入两个整数,计算并输出两个整数的和。实现该功能的程序如下, #include \main() { int a, b;

scanf(\ printf(\ } (1)在程序编辑窗口中输入程序。(2)保存程序,取名为 a2.c。 (3)按照前二章中介绍的方法,编译、连接和运行程序。(4)在程序运行 过程中,输入 15 30↙ (↙表示输入回车符) (5)如果看到如下输出结果,则表明15+30 的结果正确,如果得不到如下结 果,则需检查并更正程序。 45 (6)按照第三章中介绍的方法进入在线评判系统。 (7)显示题目列表,点击题号为1001,题名为“计算a+b”的题目。 (8)查看完题目要求后,点击页面下端的“sumbit”,参照第二章提交程序 的方法提交程序a2.c。 (9)查看评判结果,如果得到“accepted”则该题通过,否则返回第一步检 查程序是否正确。 3 实验 2 基本数据类型、运算和表达式一、实验目的 (1)掌握C语言数据类型,熟悉如何定义一个整型和实型的变量,以及对它 们赋值的方法。(2)掌握不同的类型数据之间赋值的规律。 (3)学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是 自加(++)和自减(--)运算符的使用。 (4)进一步熟悉C程序的编辑、编译、连接和运行的过程。二、实验内容 1. 变量的定义 [题目 1117:变量定义,按要求完成程序] 下面给出一个可以运行的程序,但是缺少部分语句,请按右边的提示补充完整 缺少的语句。 #include \ main() { int a, b; /*定义整型变量 a和 b*/ int i, j; /*定义实型变量i和 j*/ a=5; b=6; i=3.14; j=i*a*b; printf(\ } [具体操作步骤]

C语言上机实验标准答案.doc

实验一上机操作初步 (2 学时 ) 一、实验方式:一人一机 二、实验目的: 1、熟悉 VC++语言的上机环境及上机操作过程。 2、了解如何编辑、编译、连接和运行一个 C 程序。 3、初步了解 C程序的特点。 三、实验内容: 说明:前三题为必做题目,后两题为选做题目。 1、输出入下信息: ( 实验指导书 P79) ************************* Very Good ************************* 2、计算两个整数的和与积。( 实验指导书 P81) 3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。 ( 书 P3) 4、在屏幕上显示一个文字菜单模样的图案: ================================= 1 输入数据 2 修改数据 3 查询数据 4 打印数据 ================================= 5、从键盘上输入两个整数,交换这两个整数。 四、实验步骤与过程: 五、实验调试记录: 六、参考答案: 1、#include <> void main( ) {printf( printf( printf( “ ********************\n “Very Good\n” ); “ ********************\n ” ); ” ); } 2、#include <> void main( ) {int a,b,c,d; printf( “ Please enter a,b: ”);

scanf( “%d,%d” ,&a,&b); c=a+b; d=a*b; printf( “ %d+%d=%d\n” ,a,b,c); printf( “ %d*%d=%d\n” ,a,b,d); } 3、#include <> #include <> void main( ) { double x,s; printf( “ Please input value of x: ”); scanf( “%lf ” ,&x); s=cos(x); printf( “ cos(%lf)=%lf\n ”,x,s); } 4、#include <> void main( ) { printf( “ ==================================\n”); printf( “ 1 输入数据 2 修改数据 \n ”); printf( “ 3 查询数据 4 打印数据 \n ”); printf( “ ===================================\n”); } 5、#include <> void main( ) { int x,y,t; printf( “ Please enter x and y: ”); scanf( “%d%d”,&x,&y); t=x; x=y; y=t; printf( “ After swap:x=%d,y=%d\n ” ,x,y); } 实验二简单的 C程序设计 (4 学时 ) 一、实验方式:一人一机 二、实验目的: 1、掌握 C语言的数据类型。 2、学会使用 C语言的运算符及表达式。 3、掌握不同数据类型的输入输出方法。 三、实验内容: 说明:前四题为必做题目,后两题为选做题目。

c语言实验报告1

C语言程序设计报告 日

程序主要内容 任务1. 程序首先随机产生一到十之间的正整数,在屏幕上打印出问题,例如6*7=?然后让学生输入答案,序检查学生输入的答案是否正确,若正确,则“RIGHT”,然后问下一个问题,否则打印“WRONG,PLEASE TRY AGAIN”,然后提示学生重做,直到答对为止。 程序如下: #include #include #include int Magic(int x); int Answer(); main() { int guess,answer,counter=1; do{ printf("%d*%d=",Magic(1),Magic(2)); answer=Magic(1)*Magic(2); if(Answer()==answer) { printf("Right\n"); break; } else printf("Wrong!,please try again\n"); }while(counter>=1); } int Magic(int m)

int x,int y; srand(time(NULL)); x=rand()%10+1; y=rand()%10+1; if(m==1) return x; if(m==2) return y; } int Answer() { int n; scanf("%d",&n); return n; } 任务2:在(1)的基础上,当学生回答错误时,最多给三次重做的机会。 :程序如下: #include #include #include int Magic(int x); int Answer(); int Exam(); main() { int n; n=Exam(); if(n==0) printf("Right\n"); else if(n==1) printf("Wrong!You have tried

C语言上机实验指导

实验要求: 上机实验一般经历上机前的准备(编程)、上机调试运行和实验后的总结三个步骤。 1.上机前的准备 根据问题,进行分析,选择适当算法并编写程序。上机前一定要仔细检查程序(称为静态检查)直到找不到错误(包括语法和逻辑错误)。分析可能遇到的问题及解决的对策。准备几组测试程序的数据和预期的正确结果,以便发现程序中可能存在的错误。 上机前没有充分的准备,到上机时临时拼凑一个错误百出的程序,宝贵的上机时间白白浪费了;如果抄写或复制一个别人编写的程序,到头来自己一无所获。 2.上机输入和编辑程序,并调试运行程序 首先调用C语言集成开发环境,输入并编辑事先准备好的源程序;然后调用编译程序对源程序进行编译,查找语法错误,若存在语法错误,重新进入编辑环境,改正后再进行编译,直到通过编译,得到目标程序(扩展名为OBJ)。下一步是调用连接程序,产生可执行程序(扩展名为EXE)。使用预先准备的测试数据运行程序,观察是否得到预期的正确结果。若有问题,则仔细调试,排除各种错误,直到得到正确结果。在调试过程中,要充分利用C 语言集成开发环境提供的调试手段和工具,例如单步跟踪、设置断点、监视变量值的变化等。整个过程应自己独立完成。不要一点小问题就找老师,学会独立思考,勤于分析,通过自己实践得到的经验用起来更加得心应手。 3.整理上机实验结果,写出实验报告 实验结束后,要整理实验结果并认真分析和总结,根据教师要求写出实验报告。 实验报告一般包括如下内容: ⑴实验内容 实验题目与要求。 ⑵算法说明 用文字或流程图说明。 ⑶程序清单 ⑷运行结果 原始数据、相应的运行结果和必要的说明。 ⑸分析与思考 调试过程及调试中遇到的问题及解决办法;调试程序的心得与体会;其他算法的存在与实践等。若最终未完成调试,要认真找出错误并分析原因等。 实验一C语言运行环境 一、实验目的 1.了解TC环境的组成。 2.学习TC环境的使用方法。 3.了解C语言程序从编辑、编译、连接到运行并得到运行结果的过程。 二、实验内容 1.了解TC环境的组成。 开机后进入WINDOWS系统的"资源管理器",找到TC环境所在的文件夹。查看在TC目录下的以字母TC开头的文件,是否包括了TC.EXE、TCC.EXE、TLINK.EXE、TCCONFIG.TC等文件;查看INCLUDE、LIB两个子目录下的文件。复习这些文件夹的作

c语言上机实验报告 (2)

c语言上机实验报告 (2) 实验六 姓名班级单周上机的那班学号 一 程序源:#include #include void main() { FILE*fp; fp=fopen("E:\\yxf01.text","w"); if(fp==NULL) { printf("文件打不开"); exit(0); } int a,i; printf("请输入一个尾部为0的整数\n"); scanf("%d",&a); while(a%10!=0) { printf("输入值非法,请从新输入!\n"); scanf("%d",&a); }

fprintf(fp,"%d=%d+%d+%d+%d+%d+%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/1 0,a/10,a/10,a/ 10,a/10,a/10,a/10); fprintf(fp,"%d=%d+%d+%d+%d+%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/10,a /10,a/10,a/10,a/ 10,a-8*(a/10)); fprintf(fp,"%d=%d+%d+%d+%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/10,a/10 ,a/10,a/10,a-7*(a /10)); fprintf(fp,"%d=%d+%d+%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/10,a/10,a/ 10,a-6*(a/10)); fprintf(fp,"%d=%d+%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/10,a/10,a- 5*(a/10)); fprintf(fp,"%d=%d+%d+%d+%d+%d\n",a,a/10,a/10,a/10,a/10,a-4*(a/10)); fprintf(fp,"%d=%d+%d+%d+%d\n",a,a/10,a/10,a/10,a-3*(a/10)); fprintf(fp,"%d=%d+%d+%d\n",a,a/10,a/10,a-2*(a/10)); fprintf(fp,"%d=%d+%d\n",a,a/10,a-(a/10)); fclose(fp) } 运行结果:

大一C语言上机实验试题和答案

实验一上机操作初步(2学时) 一、实验方式:一人一机 二、实验目的: 1、熟悉VC++语言的上机环境及上机操作过程。 2、了解如何编辑、编译、连接和运行一个C程序。 3、初步了解C程序的特点。 三、实验内容: 说明:前三题为必做题目,后两题为选做题目。 1、输出入下信息:(实验指导书P79) ************************* Very Good ************************* 2、计算两个整数的和与积。(实验指导书P81) 3、从键盘输入一个角度的弧度值x,计算该角度的余弦值,将计算结果输出到屏幕。(书 P3) 4、在屏幕上显示一个文字菜单模样的图案: ================================= 1 输入数据 2 修改数据 3 查询数据 4 打印数据 ================================= 5、从键盘上输入两个整数,交换这两个整数。 四、实验步骤与过程: 五、实验调试记录: 六、参考答案: 1、#include void main( ) { printf(“********************\n”); printf(“ Very Good\n”); printf(“********************\n”); } 2、#include void main( ) { int a,b,c,d; printf(“Please enter a,b:”); scanf(“%d,%d”,&a,&b); c=a+b; d=a*b; printf(“%d+%d=%d\n”,a,b,c); printf(“%d*%d=%d\n”,a,b,d);

C语言上机综合实验一及答案

1、编制程序,输入n 个整数(n 从键盘输入,n>0),输出它们的偶数和。 2、 编程,输入n 后:输入n 个数,根据下式计算并输出y 值。 3、输入一行字符,统计并输出其中英文字母、数字字符和其他字符的个数。 4、编写程序,输入一个正整数n ,计算并输出下列算式的值。要求定义和调用函数total(n)计算1+1/2+1/3+……+1/n ,函数返回值的类型是double 。 5、输入一个正整数n ,求1+1/2!+1/3!+……1/n!的值,要求定义并调用函数fact(n)计算n 的阶乘,函数返回值的类型是单精度浮点型。 答案: 程序1、 #include void main () { int n,i,x,sum=0; while(scanf("%d",&n),n<=0); printf ("请输入%d 个数:", n); for (i=1; i<=n ;i++) { scanf("%d",&x); if(x%2==0) sum+=x; } printf ("sum=%d", sum) ; } 程序2、 #include #include void main( ) { int i,n; float x,y; scanf(“%d”,&n); for(i=1;i<=n;i++){ scanf(“%f”,&x); if(x<-2) y=x*x-sin(x); else if(x<=2) y=pow(2,x)+x; else y=sqrt(x*x+x+1); printf(“%f \n”,y); } } 程序3、 # include void main( ) { int letter,digit,other; ?????>++≤≤-+-<-=2 12222sin 22x x x x x x x x y x 111111...23n k s k n ===++++∑

C语言程序设计实验实验指导书及答案

实验一熟悉C程序运行环境 班级学号姓名成绩 一、实验目的 1. 熟悉C语言Visual C++调试环境。 2. 掌握C程序的编辑、调试及运行。 二、实验内容 项目1. 调试并运行下面程序,并写出运行结果: #include <> int main() { printf(“Good morning!\n”); printf(“Hello,world!\n”); return 0; } 运行结果(注意,按照屏幕输出格式写): 项目2. 调试并运行下面程序,并写出运行结果: #include <> int main() { int a , b , sum; /*定义变量*/ a=23; b=56; /*为变量赋值*/ sum=a+b; /*计算两个变量的和*/

printf(“sum is %d\n”,sum); /*输出计算结果*/ return 0; } 运行结果:

项目3. 调试并运行下面程序,并写出运行结果: #include <> 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; else z=y; return(z); /*将z的值返回*/ } 运行结果: 三、提高部分 1.试想,如果求10个数中的最大者,则程序该如何编写。 程序代码

C程序设计上机实验报告((完整版))

C语言程序设计上机实验报告 学院:机械工程学院 班级:机自161213 姓名:刘昊 学号:20162181310 实验时间:2017 年3 月6 号 任课老师:张锐

C语言程序设计上机实验报告 实验一 一、实验名称: C 程序的运行环境和运行C程序的方法 二、实验目的:了解在 程序 C 编译系统上如何编辑、编译、连接和运行一个 C 三、实验内容: (1). (2). (3). 输入并运行一个简单的C程序。 设计程序,对给定的两个数求和。 设计程序,对给定的两个数进行比较,然后输出其中较大的数。 四、源程序代码: 代码1: 运行结果1:

程序分析1: 该程序用来判断所输入的整数是否为一个素数,如果一个数能被除了 1 和它本身整除,还能被其它数整除,那么它就不是一个素数,因此,用for 循环来进行整除过程的简写。 代码2: 运行结果2:

程序分析2: 简单的使用printf() 和scanf() 函数进行简单的数据运算。代码3: 运行结果3:

程序分析3: 使用if 语句进行判断。 五.实验总结 C语言程序设计上机实验报告 实验二 一、实验名称:顺序结构程序设计 二、实验目的:正确使用常用运算符(算术运算符、赋值运算符)的用法, 熟练掌握算术运算符及其表达式,逻辑运算符和逻辑表达式。 三、实验内容: (1). 编写程序,实现小写字母转大写。

(2). 编写程序,实现输入两个不同类型数据后,经过适当的运算(加、减、乘、除)后输出。 (3). 编写程序,计算三角形面积、立方体的体积和表面积、圆的面积和周长。 (4). 编写程序,实现单字符getchar 和putchar 输入输出。 (5). 编写程序,实现十进制、八进制、十六进制不同数制的输出。 四、源程序代码 代码1: 运行结果1: 程序分析1:

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