C语言程序设计(B)
(2010-2011-2)
实验报告
教学班级: 学号: 姓名:
课程教师: 实验辅导教师:
江西理工大学 1
自由编辑的程序
一、实验前的源程序:
//任意整数的叠加
#include<stdio.h>
void main()
{
int i,j,sum=0;
printf("please input a int number\n");
scanf("%d",&j)
for(i=0;i<=j;i++)
sum=sum+i;
printf("此数的叠加=%d\n",sum);
}
实验错误报告:
[Error] D:\Program Files\C-Free 4\temp\未命名10.cpp:7: parse error before
`for'
[Error] D:\Program Files\C-Free 4\temp\未命名10.cpp:7: parse error before `)'
构建中止 未命名10: 2 个错误, 0 个警告
实验后的源程序:
//任意整数的叠加
#include<stdio.h>
void main()
{
int i,j,sum=0;
printf("please input a int number\n");
scanf("%d",&j);
for(i=0;i<=j;i++)
sum=sum+i;
printf("此数的叠加=%d\n",sum);
}
二、实验前的源程序:
/*小写字母转大写字母*/
#include<stdio.h>
void main()
{
char c1,c2;
c1='w';
江西理工大学 2
}
c2='s'; c1=c1-32; c2=c2-32; printf("%c,%c\n",c1,c);
实验错误报告:
[Error] D:\Program Files\C-Free 4\temp\未命名11.cpp:9: `c' undeclared (first
use this function)
[Error] D:\Program Files\C-Free 4\temp\未命名11.cpp:9: (Each undeclared
identifier is reported only once
[Error] D:\Program Files\C-Free 4\temp\未命名11.cpp:9: for each function it
appears in.)
构建中止 未命名11: 3 个错误, 0 个警告
实验后的源程序:
/*小写字母转大写字母*/
#include<stdio.h>
void main()
{
char c1,c2;
c1='w';
c2='s';
c1=c1-32;
c2=c2-32;
printf("%c,%c\n",c1,c2);
}
三、实验前的源程序:
/*查看某一年是否为闰年*/
#include <stdio.h>
void main()
{
int year,i;
scanf("%d",&year);
if(year%4==0)
{
if(year%100==0)
{
if(year%400==0)
i=1;
else
江西理工大学 3
i=0;
}
else
i=1;
}
else
i=0;
if(i)
printf("%d 是闰年\n",year);
else
printf("%d 不是闰年\n",year);
}
实验错误报告:
[Error] D:\Program Files\C-Free 4\temp\未命名14.cpp:15: parse error before
`else'
[Error] D:\Program Files\C-Free 4\temp\未命名14.cpp:25: parse error at end
of input
构建中止 未命名14: 2 个错误, 0 个警告
实验后的源程序:
/*查看某一年是否为闰年*/
#include <stdio.h>
void main()
{
int year,i;
scanf("%d",&year);
if(year%4==0)
{
if(year%100==0)
{
if(year%400==0)
i=1;
else
i=0;
}
else
i=1;
}
else
i=0;
if(i)
江西理工大学 4
printf("%d 是闰年\n",year); else
printf("%d 不是闰年\n",year); }
数据的输入和输出
四、程序改错题
改错前的源程序;
#include <stdio.h>
void main()
{
float x,y,z;
scanf("%5.2f,%5.2f",&x,&y); z=x+y;
printf("z=%5.2f",&z); }
修改后的源程序:
#include <stdio.h>
void main()
{
float x,y,z;
scanf("%f%f",&x,&y); z=x+y;
printf("z=%5.2f",z);
}
改错前的源程序;
#include<stdio.h>
void main()
{
int x=7654123;
x*=10;
printf("x=%7d",x);
}
修改后的源程序:
江西理工大学 5
#include<stdio.h>
void main()
{
long x=7654123;
x*=10;
printf("x=%7d",x);
}
改错前的源程序:
#include <stdio.h>
void main()
{
float c1=67;
char c2;
c2=c1+5;
printf("c1=%c,c2=%c\n",c1,c2);
printf("c1=%d,c2=%d",&c1,&c2);
}
修改后的源程序:
#include <stdio.h>
void main()
{
int c1=67;
char c2;
c2=c1+5;
printf("c1=%c,c2=%c\n",c1,c2);
printf("c1=%d,c2=%d",c1,c2);
}
五、程序编写题:已知char ch’b’; int i=3 ,j=5; float
x=22.354,y=435.6789; 根据下面的输出结果编写程序。 ch =’b’,ASCII=98
i=3□□□□□□j=5
x=22.35□□□y=435.68
实验前的源程序:
#include <stdio.h>
void main()
江西理工大学 6
{
char ch='b';
int i=3,j=5;
float x=22.354,y=435.6789;
printf("ch='%c',ASCII=%d\n",ch,ch);
printf("i=%d j=%d\n",i,j);
printf("x=%.2f y=%.2f\n",x,y);
}
实验错误报告:无
实验后的源程序:
#include <stdio.h>
void main()
{
char ch='b';
int i=3,j=5;
float x=22.354,y=435.6789;
printf("ch=\'%c\',ASCII=%d\n",ch,ch);
printf("i=%d j=%d\n",i,j);
printf("x=%.2f y=%.2f\n",x,y);
}
六、从键盘输入一行字符,统计其中小写字母、大写字母和
其它字符的个数:
实验前的源程序:
#include "stdio.h"
void main()
{
printf("请任意输入一串字符:\n") ;
char ch,sum1=0,sum2=0,other=0;
ch=getchar();
while(c!='\n')
{
if(c>='A'&&c<='Z') sum1++;
else if(c>='a'&&c<='z') sum2++;
else other++;
c=getchar();
}
printf("大写字母的个数:%d\n",sum1);
printf("小写字母的个数:%d\n",sum2);
江西理工大学 7
printf("其他字符母个数:%d\n",other);
}
实验错误报告:
[Error] D:\Program Files\C-Free 4\temp\未命名7.cpp:7: `c' undeclared (first
use this function)
[Error] D:\Program Files\C-Free 4\temp\未命名7.cpp:7: (Each undeclared
identifier is reported only once
[Error] D:\Program Files\C-Free 4\temp\未命名7.cpp:7: for each function it
appears in.)
构建中止 未命名7: 3 个错误, 0 个警告
实验后的源程序:
#include "stdio.h"
void main()
{
printf("请任意输入一串字符:\n");
char ch,sum1=0,sum2=0,other=0;
ch=getchar();
while(ch!='\n')
{
if(ch>='A'&&ch<='Z') sum1++;
else if(ch>='a'&&ch<='z') sum2++;
else other++;
ch=getchar();
}
printf("大写字母的个数:%d\n",sum1);
printf("小写字母的个数:%d\n",sum2);
printf("其他字符母个数:%d\n",other);
}
七、使用以下公式求∏的近似值,要求精确到最后一项的绝
对值小于10e-4 ∏/4=1-1/3+1/5-1/7+……
实验前的源程序:
#include "stdio.h"
#include "math.h"
main()
{
江西理工大学 8
} float sum=0; int i,j; for(i=1; ;i++) { j=2*i-1; if(1.0/j>0.0001) { sum+=pow(-1,i+1)*(1.o/j); continue; break; } printf("∏=%f\n",sum*4.0);
实验错误报告:
[Error] D:\Program Files\C-Free 4\temp\未命名9.cpp:13: nondigits in number
and not hexadecimal
[Error] D:\Program Files\C-Free 4\temp\未命名9.cpp:19: parse error at end
of input
构建中止 未命名9: 2 个错误, 0 个警告
实验后的源程序:
#include "stdio.h"
#include "math.h"
main()
{
float sum=0;
int i,j;
for(i=1; ;i++)
{
j=2*i-1;
if(1.0/j>0.0001)
{
sum+=pow(-1,i+1)*(1.0/j);
continue;
}
break;
}
printf("∏=%f\n",sum*4.0);
}
八、用选择法对10个整数排序:
实验前的源程序:
江西理工大学 9
#include <stdio.h>
main()
{
printf ("请输入一串乱序的10个整数:\n");
int a[10];
int i,j,k;
for(i=0;i<10;i++)
{
scanf("%d",a[i]);
}
printf("\n");
for(i=0;i<10;i++)
for(j=0;j<10-j;j++)
{
if(a[j]>a[j+1])
{
k=a[j];
a[j]=a[j+1];
k=a[j+1];
}
printf("这10个整数从小到大排列为:");
for(j=0;j<10;j++)
{
printf("%d ",a[j]);
}
printf("\n");
printf("这10个整数从大到小排列为:");
for(j=9;j>=0;j--)
{
printf("%d ",a[j]);
}
实验错误报告:
[Error] D:\Program Files\C-Free 4\temp\未命名1.cpp:33: parse error at end of
input
构建中止 未命名1: 1 个错误, 0 个警告
实验后的源程序:
//用选择法对10个整数排序
#include <stdio.h>
void main()
{
printf ("请输入一串乱序的10个整数:\n");
int a[10];
江西理工大学 10
int i,j,k;
for(i=0;i<10;i++)
{
scanf("%d",a[i]);
}
printf("\n");
for(i=0;i<10;i++)
for(j=0;j<10-j;j++)
{
if(a[j]>a[j+1])
{
k=a[j];
a[j]=a[j+1];
k=a[j+1];
}
}
printf("这10个整数从小到大排列为:");
for(j=0;j<10;j++)
{
printf("%d ",a[j]);
}
printf("\n");
printf("这10个整数从大到小排列为:");
for(j=9;j>=0;j--)
{
printf("%d ",a[j]);
}
}
九、求一个3*3的整数矩阵对角线元素之积: 实验前的源程序:
#include <stdio.h>
void main()
{
int a[3][3];
int i,j,ji=1;
printf("请输入一个3*3的矩阵:\n");
for(i=0;i<=2;i++)
for(j=0;j<=2;j++)
{
scanf("%d",&a[i][j])
}
for(i=0;i<3;i++)
江西理工大学 11
{
for(j=0;j<3;j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
printf("\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
if(i=j)
ji*=a[i][j];
printf("主对角线的积为:%d\n",ji);
}
}
实验错误报告:
[Error] D:\Program Files\C-Free 4\temp\未命名4.cpp:11: parse error before
`}'
构建中止 未命名4: 1 个错误, 0 个警告
实验后的源程序:
#include <stdio.h>
void main()
{
int a[3][3];
int i,j,ji=1;
printf("请输入一个3*3的矩阵:\n");
for(i=0;i<=2;i++)
for(j=0;j<=2;j++)
{
scanf("%d",&a[i][j]);
}
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("%d ",a[i][j]);
}
printf("\n");
}
江西理工大学 12
printf("\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
if(i=j)
ji*=a[i][j];
printf("主对角线的积为:%d\n",ji);
}
}
十、 将一个数组中的值按你需从新存放。例如,原来顺序为8,
6,5,4,1。要求改为1,4,5,6,8。
实验前的源程序:
#include <stdio.h>
void main()
{
int a[10],i,j,t;
printf("请问你要输个几个数字: ");
scanf("%d",&j);
printf("请输入大小顺序的%d个数字: ",j);
for(i=0;i<j;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<j/2;i++)
{
t=a[i];
a[i]=a[j-i-1];
t=a[j-i-1];
}
printf("该数组逆序排列为:");
for(i=0;i<j;i++)
{
printf("%d ",a[i]);
printf("\n");
}
实验错误报告:
[Error] D:\Program Files\C-Free 4\temp\未命名3.cpp:25: parse error at end
of input
构建中止 未命名3: 1 个错误, 0 个警告
江西理工大学 13
实验后的源程序:
#include <stdio.h>
void main()
{
int a[10],i,j,t;
printf("请问你要输个几个数字: "); scanf("%d",&j);
printf("请输入大小顺序的%d个数字: ",j); for(i=0;i<j;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<j/2;i++)
{
t=a[i];
a[i]=a[j-i-1];
a[j-i-1]=t;
}
printf("该数组逆序排列为:"); for(i=0;i<j;i++)
{
printf("%d ",a[i]);
}
printf("\n");
}
江西理工大学 14
四川师范大学计算机科学学院C语言程序设计实验手册20xx年2月年级20xx级专业电子商务班级04班姓名罗桂清学号20xx11043…
课程设计报告学院课程名称专业班级学生姓名学号指导教师完成时间年月目录1菜单选择程序课程设计2学生信息管理系统课程设计题目1菜单选择…
高级语言程序设计学生实验报告专业计算机科学与技术学号姓名1实验一C程序的运行环境和使用方法1实验目的1了解所用的计算机系统的基本操…
华北水院高级语言程序设计C语言实验报告20xx20xx学年第二学期20xx级专业班级学号一实验题目文件二实验目的略三实验内容1程序…
C语言程序设计实验报告专业计算机科学与技术班级ACM班日期20xx年12月24日成绩实验组别第5次实验指导教师学生姓名张启夏学号U…
计算机软件技术基础实验报告实验一线性表的排序与查找一实验内容a键盘输入一组无序数据添加到线性表中b排序线性表并输出排序结果c键盘输…
C语言实验报告册答案实验一1includeltstdiohgtvoidmainintabcscanfquotdddquotampa…
C语言实验报告1编写一个函数pi其功能是根据以下近似公式求值611221331nn并写一个主函数调用该函数计算的值n在主函数中从键…
华北水院高级语言程序设计C语言实验报告五20xx20xx学年第二学期20xx级专业学号姓名一实验题目函数二实验目的略三实验内容1程…
C语言程序设计实验报告1实验目的掌握指针的概念会定义和使用指针变量能正确使用变量的指针和指向变量的指针变量能正确使用数组的指针和指…