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);
}
main()
{
int i,j,p,q;
i=3;j=6;
p=i++;
q=--j;
printf("%d,%d,%d,%d\n",i,j,p,q);
p=i--+3;
q=++j-4;
printf("%d,%d,%d,%d",i,j,p,q);
}
(4)
main()
{
int m=15,n=9,s;
m*=3+2;
printf("%d",m);
n+=n-=n*=n;
printf("%d",n);
printf("%d\n",(s=6*5,m+n+s));
printf("%d\n",s);
}
2.----------------------------------------------------
(1)#include
#define MM 40
main()
{
int a=3,b=6,t;
t=MM/(3+6);
printf("%d%d",t,MM);
}
//原来printf语句打成了print,printf语句中少了一个%d.
(2)
#include
{
int m;
double x;
scanf("%d",&m);
x=3.14*m*m;
printf("%f",x);
}
//注意分号,%f转义
(3)
main()
{
int m=8,n=5;
printf("%d",m*=m-n);
printf("%d,%d,%d",m=m+1,n-1,m+n);
}
3.---------------------------------------------------- main()
{
int a=9,b=5;
a+=b;
b=a-b;
a-=b;
printf("%d%d",a,b);
}
4.----------------------------------------------------
//4.输入a,b,c三个变量,计算数学公式(a*b)/c main()
{
int a,b,d;
float s,c;
scanf("%d%d%f",&a,&b,&c);
d=a*b;
s=d/c;
printf("%f",s);
}
=================================
实验三顺序结构和输入输出方法
=================================
1.---------------------------------------------------
(1)main()
{
int m=345,t;
float n=2.56;
t=2.56*100;
printf("m=%d,n*100=%d\n",m,t);
}
(2)
main()
{
int a,b,c,s,v;
scanf("%d%d%d",&a,&b,&c);
s=a*b;
v=a*b*c;
printf("%d,%d,%d\n",a,b,c);
printf("s=%d,v=%d\n",s,v);
}
2.----------------------------------------------------
(1)
main()
{
int m,n;
float x=3.5,y=6.2;
scanf("%d,%d",&m,&n);
printf("%6d,%6d",m,n); /*每个数的输出宽度为6,两个数之间逗号建个。*/ printf("x=%7.2f,y=%7.2f",x,y); /*个数的输出宽度7,小数位2*/
}
(2)
main()
{
int a,b;
long m,n;
float p,q;
scanf("a=%d,b=%d\n%f,%f",&a,&b,&p,&q);
scanf("%ld",&m);
scanf("%ld",&n);
printf("a=%d,b=%d\n m=%ld,n=%ld\n",a,b,m,n);
printf("p=%f,q=%f\n",p,q);
}
//打印结果有误!!
3.----------------------------------------------------
main()
{
int i,j,k,ss,m=1,n=1;
scanf("%d%d",&i,&j);
m+=i++;
n*=--j;
ss=(k=m+2,n-5,k+n);
printf("%d",ss);
}
4.----------------------------------------------------
#include
main()
{
char c1,c2;
c1=getchar();
c2=getchar();
putchar(c1);
putchar(c2);
printf("c1=%c,c2=%c",c1,c2);
printf("%d.%d\n",c1,c2);
}
5.--------------------------------------------------- #include
main()
{
int a=790,b,c;
b=790/60;
c=790%60;
printf("%d小时%d分钟",b,c);
}
6.--------------------------------------------------- #include
main()
{
int a,b,c,d;
scanf("%d%d%d",&a,&b,&c);
d=a;
a=c;
c=b;
b=d;
printf("%d,%d,%d\n",a,b,c);
}
7.-------------------------------------------------- #include
main()
{
double a;
scanf("%lf",&a);
printf("%.2f\n",a);
}
=================================
实验四逻辑运算判断选取控制
=================================
1.---------------------------------------------------
1. a. 错误原因分析:Switch分号错误
switch(a*a+b*b) { case 3: case 1:y=a+b;break; case 0:y=b-a;break; } b. 错误原因分析:switch语句使用错误,后跟括号。Default放在后
边。switch (a) { case 10:y=a-b;break; case
11:x=a*b;break; default:x=a+b;} c. 错误原因分析:没有输出
语句。switch(a+b) {case 10:x=a+b;break; case 11:y=a-
b;break; }
2.----------------------------------------------------
(1)
main ( )
{
int x,y;
scanf("%d",&x );
if (x>-5&&x<0) y=x ;
if (x==0) y=x-1 ;
if(x>0&&x<10) y=x+1;
printf ("%d",y);
}
(2)
main()
{
int x,y;
scanf("%d",&x);
if((x>-5)&&(x<0)) y=x;
else if (x==0) y=x-1;
else if(x>0&&x<10) y=x+1;
printf("%d",y);
}
3.----------------------------------------------------
main ( )
{
int a,M;
scanf("%d",&a);
M=a>0?a:-a;
printf("abs(a)=%d",M);
}
4.----------------------------------------------------
main()
{
int c,t,m;
printf("input the number of coat and trousers your want buy:\n");
scanf("%d%d",&c,&t);
if(c==t) if(c>=50) m=c*80; else m=c*90; else if(c>t)
if(t>=50) m=t*80+(c-t)*60; else 90*t+(c-t)*60;
else if(c>=50) 80*t+(t-c)*45;
else m=c*90+(t-c)*45;
printf("%d",m);
}
5.---------------------------------------------------
#include
int
main(void)
{
int a, b, c;
scanf("%d%d%d",&a,&b,&c);
if(a + b <= c || a + c <= b || b + c <= a)
printf("不构成三角形\n");
else if (a == b && b == c)
printf("等边三角形\n");
else if (a == b || b == c || a == c)
printf("等腰三角形\n");
else
printf("不等边三角形\n");
return 0;
}
6.--------------------------------------------------
#include"stdio.h"
main()
{
long a;
scanf("%ld",&a);
if(a%5==0)
if(a%7==0)
printf("yes\n|");
else printf("no\n");
}
================================= 实验五循环结构
================================= 1.---------------------------------------------------
#include"stdio.h"
main()
{ int n;
while(1)
{ printf("Enter a number:");
scanf("%d",&n);
if(n%2==1)
{ printf("I said");
continue;
}
break;
}
printf("Thanks.Ineeded that!");
}
2.----------------------------------------------------
#include
main()
{
int c;
while ( (c=getchar () ) !='\n')
{
if ( (c<='X'&&c>='A'||c<='x'&&c>='a') )
c += 2;
else if (c=='y'||c=='Y'||c=='z'||c=='Z')
c=c-24;
printf("%c",c);
}
putchar ('\n') ;
}
3.----------------------------------------------------
#include
int main()
{
int m, k;
for( m = 1; m <= 4; m ++)
{
if ( m == 1 || m == 4 )
{
for( k = 1; k <= 6; k++)
printf("*");
printf("\n");
}
else
printf("* *\n");
}
return 0;
}
4.----------------------------------------------------
#include
main()
{ int a,b,c;
printf(" * 1 2 3 4 5 6 7 8 9\n");
printf(" -----------------------------\n");
for(a=1;a<=9;a++)
{printf("%3d",a);
for(b=1;b<=a;b++)
{c=a*b;
printf("%3d",c);}
printf("\n");}
}
5.--------------------------------------------------
#include
main()
{
double e=2,w=0.000001,t;
double n=1,s=1;
t=1/w;
while(s { s=s*(n+1); e=e+1/s; n++; } printf("e=%lf,n=%d\n",e,(int)(n-1)); } 6.-------------------------------------------------------- #include void main() { int i,j,k=0,r,s=0,t=1000,a=0; for(i=2;i<=t;i++) { a=0; r=0; { for(j=1;j { k=0; if(i%j==0) { k=j; } r+=k; } if(r==i) a=r; } if(a!=0) { if(a==6) printf("%d",a); else printf("+%d",a); } s+=a; } printf("=%d\n",s); } ================================= 实验六数组 ================================= 1.--------------------------------------------------- #include main() { int grade[6]; int i,mumber; for(i=1;i<=5;++i) grade[i]=0; printf("enter your number\n"); for(i=1;i<=20;++i) { scanf("%d",&mumber); if(!mumber) break; ++grade[mumber]; } printf("\n\nresult of search\n"); printf("---------------\n"); for(i=1;i<=5;++i) printf("%4d %d\n",i,grade[i]); } 2.---------------------------------------------------- #include"stdio.h" main() { int n,k,xx[20]; int i,j,t; printf("\nPlease enter a number"); scanf("%d",&n); printf("\nPlease enter %d numbers:",n); for(i=0;i printf("%\nPlease enter another number:"); scanf("%d",&k); for(i=0;i { t=xx[0]; for(j=1;j xx[j-1]=xx[j]; xx[n-1]=t; } printf("\nAfter moving:\n"); for(i=0;i printf("\n"); } 3.---------------------------------------------------- #include main() { int i,a[100]={90,180,270,380,590,530,140,750,380},b[6]; for(i=0;i<6;i++) b[i]=0; for(i=0;i<9;i++) { switch(a[i]/100) { case 0:b[0]++;break; case 1:b[1]++;break; case 2:b[2]++;break; case 3:b[3]++;break; case 4:b[4]++;break; default :b[5]++;break; } } printf("The result is:"); for(i=0;i<6;i++) printf("%d",b[i]); printf("\n"); } 4.---------------------------------------------------- #include main() { int i,j,t,p,q,s,n,a[11]={6,3,42,23,35,71,98,67,56,38}; for(i=0;i<10;i++) { for(j=i+1;j<10;j++) if(a[i]>a[j]) { t=a[i]; a[i]=a[j]; a[j]=t; } printf("%d ",a[i]); } printf("\ninput number:\n"); scanf("%d",&n); for(i=0;i<10;i++) if(n { for(j=9;j>=i;j--) a[j+1]=a[j]; break; } a[i]=n; for(i=0;i<=10;i++) printf("%d ",a[i]); printf("\n"); } 5.--------------------------------------------------- #include int main() { char a[100], b[100]; int i=0, j=0, n=0; gets(a); gets(b); while(a[j]!=0) { while((a[j+i]==b[i])&&b[i]!=0) i++; if(b[i]==0) n++; i=0; j++; } printf("%d", n); } ================================= 实验七字符处理 ================================= 1.--------------------------------------------------- 该程序的功能是:输入字符串,删除其中的数字,保留剩下的字符。#include main() { char a[40],b[40]; int i,j; printf(" Enter the string: ") ; scanf("%s",a) ; i=j=0; while (a[i]!='\0') { if (! (a[i]>='0'&&a[i]<='9') ) { b[j]=a[i]; j++; } ++i; } b[j]='\0'; printf (" %s",b) ; } 2.---------------------------------------------------- #include "string.h" #include "stdio.h" main() { char str1[50]="every one!"; char str2[50]="hello "; strcpy(str2+strlen(str2),str1); printf("%s",str2); } 3.---------------------------------------------------- //本代码有些奇怪,在有的vc上可以执行,有的却不行。 #include "stdio.h" main() { int i,pos; char str[]="This is a program"; for(i=0;str[i]!='\0';i++) { if (str[i]=='a') {pos=i;break;} } printf("The position is %d\n",pos); } 4.---------------------------------------------------- #include "stdio.h" main() { int i,pos; char str[]="This is a program"; for(i=0;str[i]!='\0';i++) { if (str[i]=='a') {pos=i;break;} } printf("The position is %d\n",pos); } 程序运行结果如下图所示: 5.--------------------------------------------------- #include "stdio.h" main() { int i,j,k=0; char s[255]; while((s[k]=getchar())!='@') k++; for(j=0;s[j]!='@';j++) { if(s[j]<='Z'&&s[j]>='A') { s[j]+=32; } if(s[j]<='w'&&s[j]>='a') s[j]+=3; else if(s[j]=='x'||s[j]=='y'||s[j]=='z') s[j]-=23; } printf("译码后结果:"); for(i=0;s[i]!='@';i++) printf("%c",s[i]); printf("\n"); getchar(); } 6.-------------------------------------------------------- #include "stdio.h" main() { int i=0; char str1[255],str2[255]; printf("\n Input string 1:"); scanf("%s",str1); printf("\n Input string 2:"); scanf("%s",str2); while(1) { if(str1[i]==str2[i]) { i++; continue; } else break; } printf("\n%d\n",str1[i]-str2[i]); } ===================== 实验八函数 ===================== 8.1???????????????????未成功int a=3,b=5; max(int a,int b) { int c; c=a>b?a:b; return (c); } main() { extern int a,b; printf("%d\n",max(a,b)); } 8.2 #include int is_prime(int m) { int i; if(m==1) return 0; for(i=2;i { if(m%i==0) { return 0; } } return 1; } void main() { int n,c; scanf("%d",&n); c=is_prime(n); if(c==1) printf("prime\n"); else printf("not prime\n"); } 8.3 #include int main() { 长沙理工大学C语言实验报告参考答案 实验一熟悉C语言程序开发环境及数据描述四、程序清单 1.编写程序实现在屏幕上显示以下结果: Thedressislong Theshoesarebig Thetrousersareblack 答案: #include 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 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 2.程序填空 (1)以下程序的功能是计算1~50之间能被7整除的整数之和。 #include #include C语言程序设计实验报告(数组) 1实验目的 (1)熟练掌握一维数组,二维数组的定义,初始化和输入、输出方法; (2)熟练掌握字符数组和字符串函数的使用; (3)掌握与数组有关的常用算法(查找、排序等)。 2实验内容 编写函数catStr(char str1[],char str2[])用于进行两个字符串的连接,编写函数lenStr(char str[])用于统计一个字符串的长度,并在主函数中调用。 要求: 1、不允许用strcat()和strlen()字符处理库函数; 2、在主函数以直接初始化的方式输入两个字符串str1和str2.调用函数 strlen()计算并返回两个字符串的长度; 3、调用函数catstr()连接两个字符串(将str2连接在str1后面); 4、调用函数lenstr()计算并返回连接后字符串的长度; 5、在主函数中输入两个原始的字符串及几个字符串的长度,以及处理后字 符串及其长度。 3算法描述流程图 4源程序 #include for (i=0;m[i]!='\0';i++); printf("%d",i); } void main() {char s1[50]="forever",s2[50]="more"; printf("s1=%s,s2=%s",s1,s2); printf("\ns1的长度:"); lenStr(s1); printf("\ns2的长度:"); lenStr(s2); catStr(s1,s2); printf("\n连接后的字符:"); printf("%s\n",s1); printf("连接后字符的长度:"); lenStr(s1); printf("\n"); } 5测试数据 s1=forever, s2=more 6运行结果 7出现问题及解决方法 在输入程序时,少写了半边引号,调试时发现存在错误,找到了错误并加以改正。无论什么事,细心都是必不可少的,认真是解决问题的关键。 8实验心得 通过本次实验,对于函数的定义和声明,数组以及循环语句有了进一步的认识,掌握了字符数组和字符串函数的使用,以及与数组有关的常用算法。此次实验不是调用strlen()和strcat()函数,而是通过自己设计程序来进行字符串的连接以及计量字符串的长度,由此我学会了如何去理清自己的思路来设计程序。 实验一熟悉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个数中的最大者,则程序该如何编写。 程序代码 运行结果: 文档从网络中收集,已重新整理排版.word版本可编辑.欢迎下载支持. 《C语言程序设计》 实验报告 2013~2014学年第二学期 班级 姓名 学号 指导教师 实验一 实验项目名称:C程序的运行环境和运行C程序的方法 所使用的工具软件及环境:Visual C++ 6.0 一、实验目的: 1.了解在Visual C++ 6.0环境下如何编辑、编译、连接和运行一个C程序; 2.通过运行简单的C程序,初步了解C源程序的特点。 二、预习内容: 教材《C语言程序设计教程》第1章。 三、实验内容: 1. 在Visual C++ 6.0环境下输入并运行下面的程序: #include 2. (1) 改正后的源程序: #include -前言- /*非常感谢度娘以及各位网上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 { 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语言程序设计实验报告(实验名称:函数) 1实验目的 (1)掌握函数的定义方法、调用方法、参数说明以及返回值; (2)掌握实参与形参的对应关系,以及参数之间的“值传递”的方式; (3)掌握函数的嵌套调用及递归调用的用的设计方法; (4)在编程过程中加深理解函数调用的程序设计思想。 2实验内容 (1)编写一个函数primeNum(int x),功能是判别一个数是否为素数。 要求: ①在主函数中输入一个整数x(直接赋值或从键盘输入); ②函数类型为空值(void),调用primeNum( )函数后,在函数中输出x是 否为素数的信息,输出格式为“x is a prime number”或”x is not a prime number”; ③分别输入一下数据:0,1,2,5,9,13,59,121,并运行程序,检查 结果是否正确。 (2)编写函数 mulNum(int a,int b),它的功能是用来确定a和b是否是整数倍的关系。如果a是b的整数倍,则函数返回值为1,否则函数返回值为0。 要求: ①在主函数中从键盘输入一对整型数据a和b; ②调用函数后,根据返回值对a和b的关系进行说明。例如,在主函数中输 入:10,5,则输出“10 is a multiple of 5”; ③分别输入下面几组数据进行函数的正确性测试:1与5,5与5,6与2,6 与4,20与4,37与9。 3算法描述流程图 (1)primeNum(int x)(判别一个数是否是素数)函数流程图 ①主函数流程图: ②判断素数函数流程图: (2)mulNum(int a,int b)(确定a和b是否是整数倍的关系)函数流程图 ①主函数流程图: C语言程序设计实验报告 实验名称计算出1000以内10个素数之和 实验目的 1、熟练掌握if、if…else、if…else if语句和witch 语句格式及使用方法,掌握if语句中的嵌套关系和匹配原则,利用if语句和switch语句实现分支选择结构。 2、熟练掌握while语句、do…while语句和for语句格式及使用方法,掌握三种循环控制语句的循环过程以及循环结构的嵌套,利用循环语句实现循环结构。 3、掌握简单、常用的算法,并在编程过程中体验各种算法的编程技巧。进一步学习调试程序,掌握语法错误和逻辑错误的检查方法。 实验内容 计算并输出1000以内的10个素数以及它们的和。 要求: 在程序内部加必要的注释。 由于偶数不是素数,可以不考虑对偶数的处理。 虽然在1000以内的素数超过10个,但是要对1000以内不够10个素数的情况进行处理。 输出形式为:素数1+素数2+素数3+…+素数10=总和值。 算法描述流程图 Main函数: 判断素数: 源程序 #include #include int sushu(int n)/* 判断素数的函数 */ { int t,i; t=sqrt(n); for(i=2;i1;i-=2)/* x为奇数时,做函数计算 */ { n=sushu(i); /* 做判断素数的函数调用 */ ( 励志天下 ) if(n!=0)/* 对素数的处理 */ { a[j]=n;/* 把素数由大至小存入数组a[ ]中 */ j++; if(j<11) m+=n; /* 统计前10个素数之和 */ } } if(j<10)/* 当素数个数小于10个时,结果输出 */ 凯里学院 C 语言程序设计 实验报告 ××××× 专业×× 年级×× 班,学号×××××× 姓名××成绩 合作者 实验日期 年 月 日 指导教师 评阅日期 年 月 日 实验二 数据类型、运算符和表达式 一、实验目的: (1)掌握C 语言数据类型,熟悉如何定义一个整型、字符型、实型变量、以及对它们赋值的方法,了解以上类型数据输出时所用的格式转换符。 (2)学会使用C 的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(――)运算符的使用。 (3)掌握C 语言的输入和输出函数的使用 (4)进一步熟悉C 程序的编辑、编译、连接和运行的过程,学会使用step by step 功能。 (5)认真阅读教材数据类型,算术运算符和表达式,赋值运算符和表达式部分内容。 二、实验内容: (1)输人并运行下面的程序 #include c语言程序设计实验报告模板 篇一:C语言程序设计实验报告 一、实验目的: 1、掌握C语言的数据类型和变量的声明。 2、掌握不同类型数据之间赋值的规律。 3、掌握C语言的运算符和表达式的使用。 4、熟悉C程序的编辑、编译、连接和运行的过程。 二、实验内容: ①输人程序:#includevoid 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 c1=%c,c2=%c d=%6.2f,e=%6.2f ",a,b,c1,c2,d,e); printf("f=%15.6f,g=%15.6f m=%ld,n=%ld p=%u,q=%u ",f,g,m,n,p,q); } ②运行此程序并分析结果(2)按习题4. 8要求编写程序题目为: 设圆半径r=l. 5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。用scanf输人数据,输出计算结果口输出时要有文字说明,取小数点后两位数字。 程序: 三、实验步骤: ①输人程序: #include void 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 c1=%c,c2=%c d=%6.2f,e=%6.2f ",a,b,c1,c2,d,e); printf("f=%15.6f,g=%15.6f m=%ld,n=%ld p=%u,q=%u ",f,g,m,n,p,q); } ②运行此程序并分析结果。 预计结果: a=61,b=62 c1=a,c2=b d=``3.56,e=`-6.87 f=````3157.890121,g=```````0.123456 m=50000,n=-60000 p=32768,q=40000(`代表空格) 结果: g的输出看来是四舍五入了。 ③在此基础上,将程序第9~14行改为: 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; 运行程序,分析结果。 p=a=m=50000;q=b=n=-60000;这两条语句将p、a、m的值和q、b、 《C程序设计》实验教学大纲 一、适用范围 大纲适用信息管理专业本科教学使用。 二、课程名称 C程序设计 三、学时数与学分 总学时:90 总学分: 4 实验学时:28 实验学分:1 四、教学目的和基本要求 目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解 C 语言的特点,熟练掌握C 语言程序设计的基本方法和编程技巧。 基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。 注:带*的实验项目为选做实验项目 六、教材、讲义及参考书 《C程序设计题解与上机指导》谭浩强主编清华大学出版社 七、实验成绩评定办法 实验成绩=平时实验表现+实验报告。实验成绩占总成绩的20%。 实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。 1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。 2、实验报告:学生实验后应按时完成实验报告。 八、实验教学大纲说明 本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。实验项目多为设计性实验项目,每个设计性实验项目中都包含数个小的设计性题目,其中带*号的题目为选做题目,有时间和有能力的同学可以选做。 九、实验项目 实验一 C程序的运行环境和运行一个C程序的方法 一、实验目的 1.了解Visual C++编译系统的基本操作方法,学会独立使用该系统。 2.了解在该系统上如何编辑、编译、连接和运行一个C程序。 3.通过运行简单的C程序,初步了解C源程序的特点。 二、实验内容 1.用编辑程序,输入教材第一章例程序,并进行编译和运行。应了解所用的系统是用什么命令进行编译和连接运行的。编译和连接后所得到的目标程序的后缀是什么形式的? 2.编写一个C程序,输出以下信息: **************************** very good! **************************** 3.输入并运行教材第一章中例,了解如何在运行时向程序变量输入数据。 实验二数据类型、运算符和表达式 一、实验目的 1.掌握C语言数据类型,熟悉如何定义一个整型、字符型、实型变量,以及对它们赋值的方法,了解以上类型数据输出时所用格式转换符。 2.学会使用C的有关算术运算符,以及包含这些运算符的表达式,特别是自加(++)和自减(--)运算符的使用。 二、实验内容 1.输入并运行以下程序: main( ) { char c1,c2; c1=97;c2=98; printf(“%c %c\n”,c1,c2); printf(“%d %d\n”,c1,c2); } 在此基础上 ①将第三行、第四行改为: c1=321;c2=353; 再使之运行,分析其运行结果。 ②将第二行改为: int c1,c2; 再使之运行,分析其运行结果。。 2.输入并运行以下程序: C语言程序设计实验报告 (实验三:C程序的多源文件工程化设计试验)实验成绩: (实验四:函数的调用及参数传递验证试验) 实验成绩: 专业:轨道交通信号与控制 班级:1303班 姓名:郭芸 学号:201310010 指导教师:李建国 兰州交通大学自动化与电气工程学院 2014年05月03日 实验三:C程序的多源文件工程化设计试验 一实验要求: 设计一个发牌的程序,要求按照1-13分别对应同一个花色的牌的数字,按照随机方式发出这13张牌,程序每次运行时发出的牌的顺序不同。 解题思路:随机数的产生需要采用:srand(time(0));语句和(1+rand()%13)两个语句来实现。 1.流程图: 2.编辑环境的截图与过程描述: 3.源代码: #include } #include 5.运行结果截图: 实验四:函数的调用及参数传递验证试验 一实验内容: 设计一个发牌的程序,要求按照1-13分别对应同一个花色的牌的数字,按照随机方式生成这13张牌,并存放于数组中。 1设计包括数组元素作为参数的子函数,在子函数内输出该元素,并改变该元素的值,再次输出; 2设计包括数组名为参数的子函数,在子函数内对数组进行从到大的排序; 排序后在主函数输出; 解题思路:套用实验三的函数,修改实验三的func1函数,让其多加一个改变数组元素值得语句,实现实验四的要求1。增加一个func进行数组元素排序,在func1中调用func2,实现实验四要求2。 C 语言程序设计 实 验 指 导 书 电子工程学院 2012-2 实验一 C程序的运行环境和编辑、调试、运行简单C程序 一、实验目的 1.了解 Turbo C 的基本操作方法,学会独立使用该系统。 2.掌握在该系统上如何编辑、编译、运行一个C程序。 二、实验内容及步骤 1.进入C的工作环境 1)在Windouws环境下:“开始”→“程序”→“MS-DOS” 屏幕上进入 MS-DOS窗口 2)在Dos环境下:键入命令c:\> cd c:\tc↙ c:\tc> tc↙ 屏幕上出现Turbo C的工作环境 2.熟悉Turbo C的工作环境 了解Edit窗口与Message窗口 了解主菜单的8个菜单项 File Edit Compile Project Option Debug break/watch 3.输入并运行一个简单的程序 File→New 输入源程序: main() { printf("This is a C program.\n"); printf("OK\n"); } 按F9进行编译和连接,观察屏幕上显示的编译信息。如果出现出错信息,则应找出原因并改正。 按Run→Run(或按Ctrl+F9) 编译、连接、运行一起完成。 按Run→User screen(或按Alt+F5) 察看运行结果。 按任一键从用户屏切换回TC窗口。 4.输入并编辑第二个C程序 File→New 输入源程序: main ( ) { int a,b,sum; a=123; b=456; sum=a+b; printf("sum is %d\n", sum); } 编辑、运行、调试该程序。 5.编辑、运行、调试自己编写的程序(至少一个程序) 如:输入上底、下底和高,计算梯形面积。 观察屏幕上显示的编译信息。如果出现出错信息,则应找出原因并改正。 用File→Save (或F2)保存程序(程序名为a1.c) 三、实验报告要求 写明: 1.实验目的 2.实验内容与步骤 3.编写的程序(题目,经调试、运行后正确的程序) 4.编译过程中出现的错误信息。 5.总结讨论本次实验的结果和收获。 1.编程实现:该程序的功能是:计算并输出 S=1+(1+20.5)+(1+20.5+30.5)+…+(1+20.5+30.5+…+n0.5) 例如,若从键盘给n输入20后,则输出为s=534.188884。文件名:myf61.c 【参考源程序】 #include } 3.用以下的递归公式求数列a0,a1,……,a19,递归公式为: a0=0; a1= l; a2=1; a i=a i-3十2a i-2+a i-1当i大于2时。Myf63.c 【参考源程序】: #include "stdio.h" void main() {long a[20]={0,1,1},i,j=0; for(i=3;i<=20;i++) a[i]=a[i-3]+2*a[i-2]+a[i-1]; for(i=0;i<20;i++) { if(j++%5==0) printf("\n"); printf("%8ld",a[i]); } } 4.用数组编程。输入10位学生的《C语言程序设计》成绩。求出该门课程的平均成绩, 并求高于平均成绩的人数,该门课程的最高分和最低分,以及该门课程的不及格人数。 文件名:myf64.c 【参考源程序】: #include 一、实验目的 1.掌握赋值语句的功能和使用方法。 2.掌握C语言的数据类型,熟悉不同类型变量的定义及赋值的方法。 3.学会使用C语言的有关算术运算符,以及包含这些运算符的表达式。 4.掌握简单数据类型的输入输出方法,能正确使用格式控制符。 5.学习编制简单的C程序。 二、实验内容(均要求给出运行结果) 1.程序改错题 (1) 以下程序输入一个十进制整数,输出与之对应的八进制数与十六进制数。例如,输入31,输出37(八进制)和1F(十六进制)。请改正程序中的错误。 #include 《C语言程序设计》实验教学大纲 学时课程总:64学分:4 实验学时:24 实验个数:9 实验学分: 1.5 课程性质:必做适用专业:计算机科学技术、网络工程、软件工程、电子商务、教育技术 教材及参考书:《C语言程序设计与实践实验指导》,谢满得邵俊编著,机械工业出版社,2014年1月 大纲执笔人:廖雪花大纲审定人: 一、实验课的性质与任务 C语言程序设计实验是面向计算机相关专业学生开设的《C语言程序设计》实验课,是配合《C语言程序设计》课程而开设的实践性教育环节。本课程的主要任务是让学生充分掌握C语言程序设计的基本概念、各种数据类型的使用技巧、模块化程序设计的方法等。C语言程序设计实验对课程中所涉及的知识进行验证,同时也是学生很好地学习课程的辅助手段。通过C语言上机实验的教学活动,使学生真正全面掌握C语言的基础知识,培养和提高学生的程序开发能力。 二、实验课程目的与要求 1.实验目的 通过实验课程的学习实践,加深学生对所学的基本概念、基础理论和知识的理解,熟悉使用Visual C++ 6.0集成环境进行C语言的编写、编译与调试。同时,通过项目开发全过程的全方位指导,从需求分析、算法设计到程序编写和过程调试,以项目实训的形式引导和帮助学生解决实际问题,提高学生解决具体问题的能力,以及培养学生用多函数、多文件组织程序的思维习惯,为今后的后继课程学习和实际工作打下良好基础。 2.实验要求 (1)掌握C语言程序的基本格式,了解C程序的开发过程和C语言中的一些常用概念。 (2)掌握常量和五种基本数据类型变量的使用。 (3)掌握C表达式和运算符的正确使用,熟练掌握数据输入、输出函数。 (4)掌握条件转移语句if-else和选择分支语句switch;掌握三种程序跳转的方法,即break语句、continue语句、return 语句。 (5)掌握循环语句(for语句;do-while语句;while语句)的正确使用,认真体会应该如何组织循环。 (6)掌握数组的定义、赋值,一维数组与二维数组的使用。 (7)掌握函数的定义、函数的调用以及函数的类型说明。 (8)掌握局部变量、全局变量的定义和使用。 (9)掌握指针的基本概念以及数组与指针、指向指针的指针的基本用法。 (10)掌握结构体变量的定义,引用结构体中成员的方法,应用结构数组解决实际问题;共用体的概念,引用共用体中成员的方法。 (11)掌握链表的类型定义及其基本操作。 (12)掌握文件的打开、读写及关闭,并能运用文件提高编程的效率。 (13)理解项目式程序开发的过程。 三、实验项目及内容提要 C语言程序设计实验报告 专业:班级:日期:成绩: 实验组别:第次实验:指导教师: 学生姓名:学号:同组人姓名: 实验名称:指针实验 一、实验目的 (1)熟练掌握指针的说明、赋值、使用。 (2)掌握用指针引用数组的元素,熟悉指向数组的指针的使用。 (3)熟练掌握字符数组与字符串的使用,掌握指针数组及字符指针数组的用法。 (4)掌握带有参数的main函数的用法。 二、实验内容及要求 1.源程序改错 下面的源程序中是否存在错误?如果存在,原因是什么?如果存在错误要求在计算机上对这个源程序进行调试修改,是之能够正确执行。 源程序: #include do { printf("\t\t1 copy string.\n"); printf("\t\t2 connect string.\n"); printf("\t\t3 exit.\n"); printf("\t\tinput a number(1-3)please! \n"); scanf("%d",&choice); } while(choice<1||choice>5); switch (choice) { case 1: p=strcpy; break; case 2: p=strcat; break; case 3: goto down; } getchar(); printf("input the first string please! \n"); i=0; _______________________ printf("input the second string please!\n"); i=0; _______________________ result=____(a,b); printf("the result is %s\n",result); down: ; return 0; } (2)请上机运行第(1)题程序使之能按下面要求输出结果(注:(输入)表示该行数据是键盘数据): 1.copy string。 2.Connect string。 3.Exit。 Input a number(1-3)please! 2(输入) Input the first string please! The more you learn,(输入) Input the second string please! The more you get.(输入) 实验报告 课程C语言程序设计实验项目简单程序设计成绩 专业班级学号批阅日期 姓名实验日期指导教师 一【实验目的】 1.了解使用VC++6.0或CodeBlocks的开发环境,掌握在编译器上如何编辑、编译、连接 和运行一个C程序; 2.通过运行简单的C程序,初步了解C源程序的特点; 3.学习变量常量的使用; 4.掌握顺序结构程序设计方法; 二【实验内容】 第一部分:编译环境熟悉及常量变量的使用(2学时) 【实验1—基础题】 要求:完成实验指导书P208页2.2.1第2章实验题:熟悉上机实验环境和不同类型变量的定义与赋值,并把实验结果(包括编写的程序和运行结果)截图粘贴到“实验结果”下方(其他试验项目要求相同,不再重复说明) 目的:熟悉VC++6.0编译环境,了解变量类型和赋值方法 实验结果: 【实验2—验证题】 要求:完成实验指导书P208页2.2.2第3章实验题:编写一个程序从键盘输入球体的半径r,计算球体的体积和表面积,并把实验结果截图到相应位置 目的:熟悉简单的算术运算 实验结果: 第二部分:顺序结构程序设计(2学时) 【实验—3】数学函数及运算表达式的使用 编写程序求函数的值,要求输入一个x,程序输出y的值。 程序分析: (1)声明两个实型变量x、y (2)用scanf函数从键盘输入一个数给x (3)带入表达式求出y的值并用printf函数输出 注意事项: (1)头文件还应包含数学头文件:#includeC语言程序设计实验报告参考答案
C语言程序设计实验与习题答案
C语言程序设计实验报告(数组)
C语言程序设计实验实验指导书及答案
C语言程序设计实验报告(实验1-12)
C语言程序设计实验-答案
C语言程序设计实验报告(函数)
C语言程序设计实验报告.doc
C语言程序设计实验报告——实验2 数据类型、运算符和表达式
c语言程序设计实验报告模板
C语言程序设计实验报告
C语言程序设计实验报告
C语言程序设计实验指导书
C语言程序设计实验六_答案
C语言程序设计实验题
大学一年级下学期C语言程序设计实验报告答案完整版
C语言程序设计实验报告(一)
C语言程序设计实验