由于后天就要交这个作业,所以拜托各位大虾们帮帮忙!!!下面一共有8个题,各位大虾只用写出相应各题的完整而正确的程序就是了(也麻烦在程序后面加一下注释),如能解决,另送100分!!
①、
实验一 C语言的运行环境和运行过程
有下面的C程序,目的是想计算由键盘输入的任意两个整数的积。
/*exl.c*/
#include (stdio.h);
main()
scanf(“%x,%y”,&x,%y)
p=prodct(x,y)
printf(“The product is :”,p)
int prodct(int a ,int b )
int c
c=a*b
return c
请按下面的步骤对该程序进行调试。
(1) 在编辑状态下照原样键入上述程序,编译并运行上述程序,根据系统提示的出错信息改正程序中的错误。再编译执行纠错后的程序。如还有错误,再编辑改正,直到不出现语法错误为止。
②、
实验二 数据类型、运算符与表达式
下面的程序试图计算由键盘输入的任意两个整数的平均值:
#include <stdio.h>
main()
{
int x,y,a;
scanf("%x,%y,&x,&y);
a=(x+y)/2;
printf("The average is :"a);
}
调试无语法错误后,分别使用下列测试用例对上述程序进行测试:
(1)2,6
(1)1, 3
(3)-2,-6
(4)-1,-3
(5)-2,6
(6)-1,3
(7)1,0
(8)1,6
(9)32800,33000
(10)-32800,33000
通过测试,你发现程序有什么错误了吗?若有错误,请指出错误原因。并修改程序。
2、运算符sizeof用以测试一个数据或类型所占用的存储空间的字节数。请编写一个程序,测试输出各基本数据类型char, short, int, long, float, double所占用的存储空间大小。
3、输入以下程序
#include <stdio.h>
void main()
{
int j,k,m,n;
k=8;
j=10;
m=k++;
n=++j;
printf("%d,%d,%d,%d",k,j,m,n);
}
(1)、运行程序,观察结果。
(2)、分析++在变量之前和在变量之后的不同点?
③.
实验三 程序结构(顺序、选择和循环)
输入并编辑下面的程序
#include <stdio.h>
void main()
{
int a,b;
float c,d;
long e,f;
unsigned int u,v;
char c1,c2;
scanf("%d,%d",&a,&b);
scanf("%f,%f",&c,&d);
scanf("%ld,%ld",&e,&f);
scanf("%u,%u",&u,&v);
scanf("%c,%c",&c1,&c2);
printf("\n");
printf("a=%7d,b=%7d\n",a,b);
printf("c=%10.2f,d=%10.2f\n",c,d);
printf("e=%10ld,f=%10ld\n",e,f);
printf("u=%u,v=%u\n",u,v);
printf("c1=%c,c2=%c\n",c1,c2);
}
(1) 用下面的测试数据,对上面的程序进行测试:
a=123,b=456,c=17.6,d=71837.65,e=70000,f=2174506,u=62000,v=58765,c1=’a’,c2=’b’
分析运行结果。特别注意输入c1,c2的值是什么?什么原因?
(2) 在scanf(“%c,%c”,&c1,&c2); 语句之前加一个语句:
getchar();
查看运行结果,并分析为什么要加入这条语句?
2. 编写程序任意输入一个三位整数,将其反向输出。如输入数值123,输出数值321。
3. 从键盘输入三个整数a,b,c,找出其中的最大值并输出。(要求:用if…else语句编写程序)
4. 输入某学生的成绩,经处理后给出学生的成绩等级,等级分类如下:
90分以上(包括90): A
80至90分(包括80):B
70至80分(包括70):C
60至70分(包括60):D
60分以下: E
要求:
① 用switch语句编写程序
② 输入测试数据,调试程序。测试数据要覆盖所有路径,注意临界值,例如此题中的100分,60分,0分。
5.编写程序,求m=1!+2!+3!+……+10!的值。要求用循环语句写出源程序,上机编辑、调试、运行程序,写出结果。