C语言上机同步练习.docx
- 文档编号:9697244
- 上传时间:2023-05-20
- 格式:DOCX
- 页数:19
- 大小:24.66KB
C语言上机同步练习.docx
《C语言上机同步练习.docx》由会员分享,可在线阅读,更多相关《C语言上机同步练习.docx(19页珍藏版)》请在冰点文库上搜索。
C语言上机同步练习
第一次上机练习内容
1.2.1节的课后练习
2.程序填空题
1).请补充完整程序prog1.c
#include
/*************************/
{
printf("Thisisaerrorprogram.");
/*************************/
3.程序修改题
1).程序prog2.c中有错,请修改。
#include
/***********************/
Main
{
printf("Thisisaerrorprogram.");
}
2).程序prog3.c中有错,请修改。
#include
main()
{
charc='a';
/*************************/
printf("thisstatementiserror.why?
")
}
3).程序prog4.c中有错,请修改。
#include
main()
{
/************************/
int2a=120;
printf("Thisisaerrorprogram.");
}
4).程序prog5.c中有错,请修改。
#include
main()
{
/*************************/
intCase=5,charb='a';
/*************************/
printf("Case=%d",case);
}
4.程序设计题
1).请编写如下程序prog6.c,查看运行结果,分析原因。
#include
main()
{
shorta=32767,b=a+1;
printf("a=%hd,a+1=%hu,b=%hd,b+1=%hu",a,a+1,b,b+1);
}
2).请编写如下程序prog7.c,查看运行结果,分析原因。
#include
main()
{
unsignedshorta=65535,b=a+1;
printf("a=%hd,a+1=%hu,b=%hd,b+1=%hu",a,a+1,b,b+1);
}
3).请编写程序prog8.c,编译该程序,查看编译时的出错信息,分析原因。
#include
main()
{
inta;
a=10;
floatb;
b=1.0;
printf("a=%db=%f\n",a,b);
}
4).请编写如下程序prog9.c,查看运行结果,分析原因。
#include
main()
{
printf("ABCD\'12\\4567\0abc");
}
第二次上机练习内容
1.程序填空题
1).prog1.c中字符变量ch1中存放的是大写字母,请填空,实现字符变量ch2中存放的是ch1中对应的小写字母。
#include
main()
{
charch1='B',ch2;
/*************************/
printf("ch1=%c,ch2=%c\n",ch1,ch2);
}
2).prog2.c中,变量ch中存放的是数字字符,请将ch中的数字字符转换成数字存入到整型变量i中。
#include
main()
{
charch='3';
inti;
/*************************/
printf("ch=%d,i=%d\n",ch,i);
}
3).变量a是一个四位的正整数,请将prog3.c补充完整,使四位数a中的个位、十位、百位和千位上的值分别赋给变量gw、sw、bw和qw。
#include
main()
{
inta=6752,gw,sw,bw,qw;
/*************************/
gw=;sw=;
/*************************/
;qw=;
printf("四位数a=%d\n其中gw=%d,sw=%d,bw=%d\n",a,gw,sw,bw,qw);
}
4).a是一个实型变量,请将程序prog4.c补充完整,分别输出a的整数部分和小数部分。
#include
main()
{
floata=64.81479,decimal;
intinteger;
/*************************/
integer=;
/*************************/
decimal=;
printf("实型数据a=%f\n其中整数部分integer=%d,小数部分decimal=%f\n",a,integer,decimal);
}
2.程序修改题
1).变量a是一个超过两位的正整数,请修改程序prog5.c,使b的值为a的最后两位。
#include
main()
{
inta=57264,b;
/*************************/
b=a/100;
printf("a=%d\nb=%d\n",a,b);
}
3.程序设计题
1).请编写如下程序prog6.c,查看运行结果,分析原因。
#include
main()
{
inta,b,c;
printf("%d\n",(a=10,b=20,c=30));
printf("%da=%db=%dc=%d\n",a=(10,b=20,c=30),a,b,c);
}
2).如果a是一个实型变量,请编程序prog7.c,让a保留两位小数并对第三位进行四舍五入。
3).有两个两位数a和b,请编写程序prog8.c,将a、b合并形成一个整数放在c中。
合并的方式是:
将a数的十位和各位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和各位上。
4).有两个两位数a和b,请编写程序prog9.c,将a、b合并形成一个整数放在c中。
合并的方式是:
将a数的十位和各位数依次放在c数的个位和百位上,b数的十位和个位数依次放在c数的十位和千位上。
第三次上机练习内容
1.3.2.1节的课后练习
2.程序填空题
1).从键盘输入一个字符,通过getchar()函数接收赋给变量ch,再用putchar()函数将该字符输出,请补充完整vprog1.c。
#include
main()
{
charch;
/*************************/
putchar(ch);
}
2).补充程序prog2.c,通过变量a、b和c,使程序的输出结果为:
a=50,b=40,c=30
#include
main()
{
inta=30,b=40,c=50;
/*************************/
printf("a=%d,b=%d,c=%d\n",);
}
3).补充程序prog3.c,使程序的输出结果为a=10,b=23,a+b=30。
#include
main()
{
inta=10,b=20;
/*************************/
printf("",a,b,a+b);
}
4).在程序prog4.c中填写相应的内容,当输入的内容为3,c=45时,使变量a、b、c的值分别3,4,5。
#include
main()
{
inta,b,c;
/*************************/
scanf("",&a,&b,&c);
printf("%d,%d,%d",a,b,c);
}
3.程序修改题
1).通过程序prog5.c给变量a、b和c分别赋值1,2,3,再通过printf函数输出各变量的值。
#include
main()
{
inta,b,c;
/*************************/
scanf("%d,%d,%d",a,b,c);
/*************************/
printf("%d,%d,%d",a,bc);
}
2).修改程序prog6.c,使各变量能正确的接收并输出数据。
#include
main()
{
inta,b;
charc;
floatd;
/*************************/
scanf("%f%d%s%f",&a,&b,&c,&d);
/*************************/
printf("%d,%f,%s,%f",a,b,c,d);
}
4.程序设计题
1).请编写如下程序prog7.c,查看运行结果,分析原因。
#include
main()
{
intk=1234;
floatf=123.456;
printf("%d\n%6d\n%2d\n",k,k,k);
printf("\n");
printf("%f\n%12f\n%12.2f\n%.0f",f,f,f,f);
}
2).请编写如下程序prog8.c,查看运行结果,分析原因。
#include
main()
{
floatf=123.456;
printf("%f\n%f%%",f,f);
printf("\n");
printf("%s\n%6s\n%.3s","abcd","abcd","abcd");
printf("\n");
}
3).请编写如下程序prog9.c,根据指定数据进行输入,查看运行结果,分析原因。
#include
main()
{
inta,b,c,d,e,f,g;
chars,t;
scanf("%3d%2d",&a,&b);/*4789*/
printf("a=%db=%d\n",a,b);
scanf("%2d%3c%2c%3d",&c,&s,&t,&d);/*987654321*/
printf("s=%ct=%cc=%dd=%d\n",s,t,c,d);
scanf("%2d%*2d%3d%3d",&e,&f,&g);/*123456789*/
printf("e=%df=%dg=%d\n",e,f,g);
}
4).请编写如下程序prog10.c,根据指定数据进行输入,查看运行结果,分析原因。
#include
main()
{
inta=10,b=20;
scanf("%d",&a,&b);/*输入34*/
printf("a=%db=%d\n",a,b);
printf("%d%d%d\n",12,34);
printf("%d%d\n",8,9,10);
}
第四次上机练习内容
1.程序填空题
1).在程序prog1.c中,从键盘输入一个字符给变量ch,若输入的字符为数字字符,则输出“YES!
”,否则输出“NO!
”。
#include
main()
{
charch;
/*************************/
ch=;
/*************************/
if()
printf("YES!
");
else
printf("NO!
");
}
2).在程序prog2.c中输入两个数,分别放入x和y中,若两个数不相等,则输出其中的大数,若两数相等则输出x的值。
#include
main()
{
intx,y;
scanf("%d%d",&x,&y);
/*************************/
if
printf("两个数中的较大值是:
%d\n",x);
else
printf("两个数中的较大值是:
%d\n",y);
}
3).在程序prog3.c中通过条件表达式判断变量x是奇数还是偶数,是奇数输出1,偶数输出0。
#include
main()
{
intx;
scanf("%d",&x);
/*************************/
printf("%d\n",);
}
2.程序修改题
1).在程序prog4.c中,通过键盘输入数据给变量x,若1≤x<100则输出x的值,否则提示出错。
#include
main()
{
intx;
scanf("%d",&x);
/*************************/
if(1≤x<100)
printf("x=%d\n",x);
else
printf("erro!
\n");
}
2).修改程序prog5.c,根据输入的学生成绩给出相应的等级,大于或等于90分以上的等级为A,60分以下的等级为E,其余每10分为一个等级。
#include
main()
{
intg;
printf("Enteramark:
");
scanf("%d",&g);
/*************************/
switchg/10
{
case10:
case9:
printf("A\n");break;
case8:
printf("B\n");break;
case7:
printf("C\n");break;
/*************************/
case6;printf("D\n");
default:
printf("E\n");
}
}
3).修改程序prog6.c,变量t为字符型,通过程序判断t中的值是否为字母,若是输出YES,否则输出NO。
#include
main()
{
chart;
/*************************/
scanf("%c",t);
/*************************/
if(t>='A'||t<='Z'&&t>='a'||t<='z')
printf("YES\n");
else
printf("NO\n");
}
3.程序设计题
1).编写程序prog7.c,完成以下表达式的功能。
2).编写程序prog8.c,实现两个变量值的交换。
(例如:
a的初值为5,b初值为10,交换后变为a的值为10,b为5)。
3).编写程序prog9.c,输入a、b、c三个数,打印出最大者。
4).请编写如下程序prog10.c,查看运行结果,分析原因。
#include
main()
{
intx=0,y=2,z=3;
switch(x)
{
case0:
switch(y==2)
{
case1:
printf("*");break;
case2:
printf("%");break;
}
case1:
switch(z)
{
case1:
printf("$");
case2:
printf("*");break;
default:
printf("#");
}
}
}
第五次上机练习内容
1.程序填空题
1).程序prog1.c的功能是:
从键盘上输入若干学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。
请填空。
#include
main()
{
floatx,max,min;
scanf("%f",&x);
max=x;min=x;
/*************************/
while()
{
if(x>max)max=x;
/*************************/
if()min=x;
scanf("%f",&x);
}
printf("max=%f\nmin=%f\n",max,min);
}
2).程序prog2.c的功能是:
将整型变量s中的数值逆置放入变量t中。
#include
main()
{
ints,t=0;
scanf("s=%d",&s);
/*************************/
while()
{
/*************************/
t=;
s=s/10;
}
printf("t=%d\n",t);
}
3).程序prog3.c的功能是:
计算并输出n(包括n)以内能被5或9整除的所有自然数的倒数之和。
请填空。
#include
main()
{
inti,n;
floats=0.0;
scanf("%d",&n);
for(i=1;i<=n;i++)
/*************************/
if()
/*************************/
s=;
prinf("s=%f\n",s);
}
2.程序修改题
1).从键盘输入n(n<10)的值,修改程序prog4.c,计算并输出n!
。
#include
main()
{
inti=1,n;
/*************************/
doubles=0;
scanf("n=%d",&n);
/*************************/
while(i≤n)
{
s=s*i;
i++;
}
printf("s=%f\n",s);
}
2).修改程序prog5.c,功能是计算并输出n以内(包括n)能被7或11整除,但不能同时被7和11整除的所有自然数平方根之和。
#include
#include
main()
{
inti,n;
floats=0.0;
scanf("n=%d",&n);
for(i=1;i<=n;i++)
/*************************/
if(i%7==0||i%11==0&&i%77!
=0)
/*************************/
s=s+fabs(i);
printf("s=%d",s);
}
3.程序设计题
1).编写程序prog7.c,求1-3+5-7+…-99+101的值。
2).编写程序prog8.c,功能是计算并输出下列多项式的值:
例如,当n=11时,S=1.833333
3).编写程序prog9.c,通过循环的嵌套输出九九乘法表。
4).请编写如下程序prog10.c,查看运行结果,分析原因。
#include
#include
main()
{
intx,i;
for(i=1;i<=100;i++)
{
x=i;
if(++x%2==0)
if(++x%3==0)
if(++x%7==0)
printf("%d",x);
}
printf("\n");
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 上机 同步 练习