printf("%d\n",max);
}
(2)检查语法的正确性
(3)运行程序
五、实验数据及处理结果
①2000不是闰年1996是闰年
②x=[-b±√(4ac-b^2)i]/2a
③输入123456789输出9
南昌大学实验报告
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合□设计□创新
一、实验项目名称
数据类型运算符与表达式
二、实验目的
了解运算符与表达式以及数据类型
三、实验内容
3.6写出程序运算结果
3.7将China译成密码
3.10写出运算结果
四、实验步骤
(1)输入程序
①#include
voidmain()
{
charc1='a',c2='b',c3='c',c4='\101',c5='\116';
printf("a%cb%c\tc%c\tabc\n",c1,c2,c3);
printf("\t\b%c%c\n",c4,c5);
}
②main()
{charc1="C",c2="h",c3="i",c4='n',c5='a';
c1+=4;
c2+=4;
c3+=4;
c4+=4;
c5+=4;
printf("密码是%c%c%c%c%c\n",c1,c2,c3,c4,c5);
}
③#include
voidmain()
{
inti,j,m,n;
i=8;
j=10;
m=++i;
n=j++;
printf("%d,%d,%d,%d\n",i,j,m,n);
}
(2)运行程序
五、实验数据及处理结果
程序的运行结果
①aabbccabc
②printf("密码是%c%c%c%c%c\n",c1,c2,c3,c4,c5);
③9,11,9,10
南昌大学实验报告
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合□设计□创新
一、实验项目名称
顺序程序设计
二、实验目的
编写简单的程序
三、实验内容
4.8设圆半径r=1.5,圆柱高h=3,求圆周长,圆面积,圆球表面积,圆球体积,圆柱体积。
用scanf输入数据。
四、实验步骤
(1)输入语言
main()
{
floatpi,h,r,l,s,sq,vq,vz;
pi=3.1415926;
printf("请输入圆半径r圆柱高h:
\n");
scanf("%f,%f",&r,&h);
l=2*pi*r;
s=r*r*pi;
sq=4*pi*r*r;
vq=4.0/3.0*pi*r*r*r;
vz=pi*r*r*h;
printf("圆周长为:
=%6.2f\n",l);
printf("圆面积为:
=%6.2f\n",s);
printf("圆球表面积为:
=%6.2f\n",sq);
printf("圆球体积为:
=%6.2f\n",vz);
}
(2)检查正确性
(3)输入数据
五、实验数据及处理结果
圆周长为:
6.2f
圆面积为:
6.2f
圆球表面积为:
6.2f
圆球体积为:
6.2f
南昌大学实验报告
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合□设计□创新
一、实验项目名称
选择结构程序设计
二、实验目的
掌握选择结构
三、实验内容
5.5由函数
xx<1
Y=2x-11
x<10
3x-11x
10
写一段程序,输入x,输出y值。
5.6输出90分以上为A,80~89为B,70~79为C,60~69为D,60以下为E
5.7给一个不多于5位的正整数,要求①求出它是几位数②分别输出每一位数③按逆序输出
四、实验步骤
(1)输入程序
5.5
main()
{intx,y;
printf("输入x:
");
scanf("%d",&x);
if(x<1)
{y=x;
printf("X-%d,Y=X=%d\n",x,y);
}
elseif(x<10)
{y=2*x-1;
printf("X=%d,Y=2*X-1=%d\n",x,y);
}
else
{y=3*x-11;
printf("X=5d,Y=3*x-11=%d\n",x,y);
}
}
5.6
voidmain()
{
floats,i;
chara;
scanf("%f",&s);
while(s>100||s<0)
{
printf("输入错误!
error!
");
scanf("%f",&s);
}
i=s/10;
switch((int)i)
{
case10:
case9:
a='A';break;
case8:
a='B';break;
case7:
a='C';break;
case6:
a='D';break;
case5:
case4:
case2:
case1:
case0:
a='E';
}
printf("%c",a);
}
5.7
main()
{
longintnum;
intindiv,ten,hundred,housand,tenthousand,place;
printf("请输入一个整数(0-99999):
");
scanf("%ld",&num);
if(num>9999)
place=5;
elseif(num>999)
place=4;
elseif(num>99)
place=3;
elseif(num>9)
place=2;
elseplace=1;
printf("place=%d\n",place);
printf("每位数字为:
");
ten_thousand=num/10000;
thousand=(num-tenthousand*10000)/1000;
hundred=(num-tenthousand*10000-thousand*1000)/100;
ten=(num-tenthousand*10000-thousand*1000-hundred*100)/10;
indiv=num-tenthousand*10000-thousand*1000-hundred*100-ten*10;
switch(place)
{case5:
printf("%d,%d,%d,%d,%d",tenthousand,thousand,hundred,ten,indiv);
printf("\n反序数字为:
");
printf("%d%d%d%d%d\n",indiv,ten,hundred,thousand,tenthousand);
break;
case4:
printf("%d,%d,%d,%d",thousand,hundred,ten,indiv);
printf("\n反序数字为:
");
printf("%d%d%d%d\n",indiv,ten,hundred,thousand);
break;
case3:
printf("%d,%d,%d\n",hundred,ten,indiv);
printf("\n反序数字为:
");
printf("%d%d%d\n",indiv,ten,hundred);
case2:
printf("%d,%d\n",ten,indiv);
printf("\n反序数字为:
");
printf("%d%d\n",indiv,ten);
case1:
printf("%d\n",indiv);
printf("\n反序数字为:
");
printf("%d\n",indiv);
}
}
(2)检查程序
(3)运行程序
五、实验数据及处理结果
①x=0.2y=0.2,x=2y=3,x=10y=19
②96输出A,85输出B
③输入563输出3,365
南昌大学实验报告
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合□设计□创新
一、实验项目名称
循环控制
二、实验目的
熟练掌握选择结构和循环结构
三、实验内容
6.2输入两个正整数m和n求最大公约数和最小公倍数
6.4求1!
+2!
+3!
+4!
+5!
…+20!
6.6输出所有“水仙花数”---3位数,其各位数立方和等于该数
四、实验步骤
6.2
#include
main()
{
charc;
intletters=0,space=0,degit=0,other=0;
printf("请输入一行字符:
\n");
while((c=getchar())!
='\n')
{
if(c>='a'&&c<='z'||c>'A'&&c<='Z')
letters++;
elseif(c=='')
space++;
elseif(c>='0'&&c<='9')
digit++;
else
other++;
}
printf("其中:
字母数=%d空格数=%d数字数=%d其它字符数=%d\n",letters,space,
digit,other);
}
6.4
main()
{
floatn,s=0,t=1;
for(n=1;n<=20;n++)
{
t=t*n;
s=s+t;
}
printf("1!
+2!
+…+20!
=%e\n",s);
}
6.6
main()
{
inti,j,k,n;
printf("'水仙花'数是:
");
for(n=100;n<1000;n++)
{
i=n/100;
j=n/10-i*10;
k=n%10;
if(i*100+j*10+k==i*i*i+j*j*j+k*k*k)
{
printf("%d",n)
}
}
printf("\n");
}
五、实验数据及处理结果
①输入2,3输出6
②输出结果2432902008176640000
③153=13+53+33
南昌大学实验报告
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合□设计□创新
一、实验项目名称
数组
二、实验目的
1、掌握一维和二维数组的定义、赋值和输入输出
2、掌握字符数组和字符串数组的使用
3、掌握与数组有关的排序算法
三、实验内容
7.2用选择法对10整数排序
7.4有一个排好序的数组,要求输入一个数后,按原来排序的规律将他插入数组中。
7.7输出“魔方阵”1~n2的自然数构成的魔方阵
四、实验步骤
输入
7.2
#defineN10
main()
{inti,j,min,temp,a[N];
printf("请输入十个数:
\n");
for(i=0;i{printf("a[%d]=",i);
scanf("%d",&a[i]);
}
printf("\n");
for(i=0;iprintf("%5d",a[i]);
printf("\n");
for(i=0;i{min=i;
for(j=i+1;jif(a[min]>a[j])min=j;
temp=a[i];
a[i]=a[min];
a[min]=temp;
}
printf("\n排序结果如下:
\n");
for(i=0;iprintf("%5d",a[i]);
}
7.4
main()
{inta[11]={1,4,6,9,13,16,19,28,40,100};
inttemp1,temp2,number,end,i,j;
printf("初始数组如下:
");
for(i=0;i<10;i++)
printf("%5d",a[i]);
printf("\n");
printf("输入插入数据:
");
scanf("%d",&number);
end=a[9];
if(number>end)
a[10]=number;
else
{for(i=0;i<10;i++)
{if(a[i]>number)
{temp1=a[i];
a[i]=number;
for(j=i+1;j<11;j++)
{temp2=a[j];
a[j]=temp1;
temp1=temp2;
}
break;
}
}
}
for(i=0;j<11;i++)
printf("a%6d",a[i]);
}
7.7
#include
#defineN5
intmain()
{
inta[N][N]={0},i,j,k,p,m,n;
p=1;
while(p==1)
{
printf("Entern(1~%d):
",N-1);
scanf("%d",&n);
if((n!
=0)&&(n=0))p=0;
}
i=n+1;
j=n/2+1; a[1][j]=1;
for(k=2;k<=n*n;k++)
{
i=i-1;
j=j+1;
if((i<1)&&(j>n))
{
i=i+2;j=j-1;
}
else
{
if(i<1)i=n;
if(j>n)j=1;
}
if(a[i][j]==0)a[i][j]=k;
else
{
i=i+2;
j=j-1;
a[i][j]=k;
}
}
for(i=1;i<=n;i++) {
for(j=1;j<=n;j++)
printf("%4d",a[i][j]);
printf("\n");
}
}
检查
五、实验数据及处理结果
①145826397
②987654321
③17,24,1,8,15
23,5,7,14,16
4,6,13,20,22
10,12,19,21,3
11,18,25,2,9
南昌大学实验报告
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合□设计□创新
一、实验项目名称
函数
二、实验目的
1、掌握函数定义、调用和声明的方法
2、掌握实参和形参之间的传递方式
3、函数的嵌套调用
三、实验内容
8.3写出一个判素数的函数,在主函数输入一个整数,输出是否素数的信息
8.10输入一行字符,将此字符串中最长的单词输出
8.11用冒泡法对输入的10个字符有小到大顺序排列
四、实验步骤
输入
8.3
main()
{
intnumber;
printf("请输入一个正整数:
\n");
scanf("%d",&number);
if(prime(number))
printf("\n%d是素数.",number);
else
printf("\n%d不是素数",number);
}
intprime(number)
intnumber;
{
intflag=1,n;
for(n=2;nif(number%n==0)
flag=0;
return(flag);
}
8.10
intalphabetic(c);
charc;
{
if((c>='a'&&c<='z'||(c>='A'&&c<='Z'))
return
(1);
else
return(0);
}
intlongest(string)
charstring[];
{
intlen=0,i,length=0,flag=1,place,point;
for(i=0;i<=strlen(string);i++)
if(alphabctic(string[i]))
if(flag)
{
point=i;
flag=0;
}
else
len++;
else
{flag=1;
iflen>length)
{length=len;
place=point;
len=0;
}
}
return(place);
}
main()
{
inti;
charline[100];
printf("输入一行文本\n");
gets(line);
printf("\n最长的单词是:
");
for(i=longest(line);alphabctic(line[i]);i++)
printf("%c",line[i]
printf("\n");
}
8.11
#defineN10
charstr[N];
main()
{
inti,flag;
for(flag=1;flag==1;)
{
printf("\n输入字符串,长度为10:
\n");
scanf("%s",&str);
if(strlen(str)>N)
printf("超过长度,请重输!
");
else
flag=0;
}
sort(str);
printf("\n排序结果:
");
for(i=0;iprintf("%c",str[i]);
}
sort(str)
charstr[N];
{
inti,j;
chart;
for(j=1;jfor(i=0;(i='\0');i++)
if(str[i]>str[i+1])
{t=str[i];
str[i]=str[i+1];
str[i+1]=t;
}
}
输出
五、实验数据及处理结果
①2是素数56不是素数
②输入wordhappy输出happy
③123456789
南昌大学实验报告
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合□设计□创新
一、实验项目名称
预处理命令
二、实验目的
使用预处理命令预处理功能
三、实验内容
9.5分析一组宏所定义的输出格式
四、实验步骤
输入
printf("value=%format\t",x);
printf("value=%format\t",x);putchar('\n');
printf("value=%format\t");printf("value=%format\t",x2);putchar('\n');
五、实验数据及处理结果
输出结果:
value=5.000000ormatvalue=5.000000ormat
value=3.000000ormatvalue=8.000000ormat
南昌大学实验报告
学生姓名:
学号:
专业班级:
实验类型:
□验证□综合□设计□创新
一、实验项目名称
指针