C语⾔程序设计实验及习题(1-4)
ff
B v vbvv bgbb实验⼀C程序运⾏环境及简单程序的运⾏
2.程序改错并调试改正后的程序
⑴下列程序的功能为:计算x*y的值并将结果输出,程序中有8处错误,尝试改正并上机调试之(程序以⽂件名sy1_2.cpp
#include
void main
{ int x=2;y=3;a
A=x*y
print ("a=%d",a);
printf(‘\n’);
}
⑵下列程序的功能为:输⼊圆的半径,计算圆⾯积并将结果输出;程序中有9处错误,尝试改正并上机调试之(程序以⽂件名sy1_3.cpp存盘)。
#include stdio.h;
int mian();
float r; area;
printf("input r:\n"); scanf("%f",r
);
area=3.14159r*r;
printf("r=%f , area=%f\n"
3.编写程序并上机调试
⑴输⼊三个整数a、b、c,显⽰出其中的最⼤值。
4.分析与总结
⑴总结C程序的结构和书写规则。
⑵阅读:附件1-C语⾔程序的跟踪调试。
特别提⽰:当程序在编译时发现很多错误,此时应从上到下逐⼀改正,或改⼀个错误,就重新再编译,因为有时⼀个错误会引起很多错误信息。
习题⼀
⼀、选择题
参考答案:
1~5 C B A C D 6~10 C C A C B 11~14 A A C B
⼆、综合题
绘制NS 算法流程图。
(1)输⼊10个数,求其中的最⼤值。 (2)输⼊3个数,将它们升序排列输出。
(3)输⼊2个数,求它们的最⼤公约数。(4)输⼊⼀元⼆次⽅程的系数a 、b 、c ,判断其根。
实验⼆顺序结构程序设计
1.阅读程序,尝试写出程序的运⾏结果,然后输⼊并调试程序,对照其实际输出与分析的结果是否⼀致,若不⼀致,请出原因。
⑴以下程序⽤于测试C中不同类型数据所占内存字节数,运⾏并体会sizeof运算符的使⽤⽅法。//sizeof运算的结果为⼀个int型的整数,表⽰其求解对象的存储所占的内存字节数。
void main()
{ int a=1;
printf("Size of char is %d\n", sizeof(char));
printf("Size of short is %d\n", sizeof(short));
printf("Size of int is %d\n", sizeof(int));
printf("Size of long is %d\n", sizeof(long));
printf("Size of float is %d\n", sizeof(float));
printf("Size of double is %d\n", sizeof(double));
printf("Size of bool is %d\n", sizeof(bool));
printf("------------------------------\n");
printf("Size of a is %d\n", sizeof(a));//变量的类型所占内存字节数
printf("Size of 2.0*10 is %d\n", sizeof(2.0*10));//表达式运算结果的类型所占字节数printf("size of Liu Dehua is %d\n",
sizeof("Liu Dehua"));//字符串所占内存字节数
}
⑵阅读并分析以下程序的输出结果,上机调试,对⽐实际的输出与分析的结果是否⼀致。
#define PI 3.14159
#include
void main()
{ Array int a1=65,a2,a3;
char ch1='A',ch2;
float f1;
double d1;
printf("\101 \x42 C\n");
printf("I say:\"How are you?\"\n");
printf("\\*C Program *\\\n");
printf("\t\\\\Display Hello! I am Tom\b!\n");
printf("-----------------------------------------\n");
printf("65/10=%d\n",a1/10);
printf("65%10=%d\n",a1%10);
printf("a1=%d,Char of ASCII %d is \'%c\'\n",a1,a1,a1); ch2=ch1+32;
printf("ch2=\'%c\',ASCII of \'%c\' is %d\n",ch2,ch2,ch2); printf("-----------------------------------------\n");
a1=65;
a2=(a1++)+(a1++);
printf("a1=%d,a2=%d\n",a1,a2);
a2=(a1++) + (++a1);
printf("a1=%d,a2=%d\n",a1,a2);
a1=65;
a2=(++a1) + (a1++);
printf("a1=%d,a2=%d\n",a1,a2);
a1=65;
a2=(++a1) + (++a1);
printf("a1=%d,a2=%d\n",a1,a2);
a2=2,a3=(a1=3,a2+=a1,a1*a2);
printf("a1=%d,a2=%d,a3=%d\n",a1,a2,a3);
a3=a2=a1=2;
printf("%d,%d,%d\n",(a1,a2+1),a3+2,a1+a2+a3);
a1=12;
a1+=a1-=a1*a1;
printf("a1=%d\n",a1);
ch1='0',a1=1,f1=2.f,d1=PI*(ch1/5+a1/f1);
a1=10;
a2=-a1--;
printf("a1=%d,a2=%d\n",a1,a2);
a3=-++a1;
printf("a1=%d,a3=%d\n",a1,a3);
printf("%d,%d,%d\n",a1++,++a1,a1=2);
printf("a1=%d\n",a1);
printf("%d,%d,%d\n",a1=2,++a1,a1++);
printf("a1=%d\n",a1);
printf("%d,%d,%d\n",a1++,a1=2,++a1);
printf("a1=%d\n",a1);
}
#include
void main()
{ char ch=65;
int a=1234;
long g=12345678;
float f=123.456789; double d=9.87654321E5;
printf("%d,%c,%5d,%3c\n",ch,ch,ch,ch);
printf("%08d,%0+8d,%8d,%o,%7x,%10ld,%ld \n",a,a,a,a,g,g); printf("%010.3f,%-10.3f,%10.3f,%f,%e,%g\n",f,f,f,f,f,f);
printf("%0+15.5lf,%-15.5lf,%15.5lf,%lf,%le\n",d,d,d,d,d);
printf("%10s\n%20s\n%-10.3s\n%s\n","Hello,world!","Hello,world!","Hello,world!","He llo,world!"); }
2
.程序改错并调试改正后的程序
⑴下列程序的功能为:输⼊⼀个华⽒温度,要求输出摄⽒温度。公式为:C=
)32(9
5
F ,输出取2#include void main() { float c,f; printf("请输⼊⼀个华⽒温度:scanf("%f",f); c==(5/9)*(f-32); printf("摄⽒温度为:%5.2f\n"c); }
⑵下列程序的功能为:按下列公式计算并输出x 的值。其中a 和b 的值由键盘输⼊。 x=2ab/(a+b)2
请纠正程序中存在的错误,使程序实现其功能。
#include void main() { int a,b; float x; scanf("%d,%d",a,b); x=2ab/(a +b)(a +b); printf("x=%d \n",x);
c语言错误提示大全
3.编写与调试程序
⑴写⼀个程序测试⼀下把带⼩数的float和double型数据⽤printf函数输出时,⼩数部分是截断还是四舍五⼊?四舍五⼊
习题⼆
参考答案:
1~5 D D D A C 6~10 A A D D D
11~15 D A A D D 16~20 A C B B A
21~25 A A C A C 26~30 B C B B A
31~35 D D A B B 36~40 C C A B A
41~45 B A C C B 46~50 D A B A C
51~55 A A A B D 56~60 A B B B C
61~65 A D B A C 66~67 B D
实验三选择结构程序设计(上)
实验内容
1.体验数据的格式输⼊的效果。分析以下程序,假设依据给定的内容输⼊,其输出会怎样?实际运⾏并按照要求输⼊,⽐较其输出结果与分析的结果是否⼀致。
//程序⑴
#include "stdio.h"
void main()
{
int a,b,c,d;
scanf("%d,%x,%o,%c",&a,&b,&c,&d);
printf("a=%d,b=%d,c=%d,d=%c\n",a,b,c,d);
}
输⼊:10,10,10,10?输出: a=10,b=16,c=8,d=1
输⼊:10 10 10 10?输出: a=10,b=-858993460,c=-858993460,d=? 不正确
//程序⑵
#include "stdio.h"
void main()
{
int a,b,c,d;
scanf("%d%x%o%c",&a,&b,&c,&d);
printf("a=%d,b=%d,c=%d,d=%c\n",a,b,c,d);
}
输⼊:10,10,10,10?输出: a=10,b=-858993460,c=-858993460,d=? 不正确
输⼊:10 10 10 10?输出: a=10,b=16,c=8,d=
//程序⑶
#include "stdio.h"
void main()
{
int a,d;
float b;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。