c语言程序设计教程答案周鸣争Word格式.docx
- 文档编号:16808889
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:38
- 大小:24.64KB
c语言程序设计教程答案周鸣争Word格式.docx
《c语言程序设计教程答案周鸣争Word格式.docx》由会员分享,可在线阅读,更多相关《c语言程序设计教程答案周鸣争Word格式.docx(38页珍藏版)》请在冰豆网上搜索。
flag=1
当j<
(i除以2的整数部分)时循环以下语句:
如果i除以j的余数为零
flag=0
退出该循环
如果flag==1
打印i的值
i=i+2
7.如果m<
n
temp=m
m=n
n=temp
i=n
做以下循环,直到m,n能够被i整除:
如果m能够被i整除并且n能够被i整除
i即是m和n的最大公约数
跳出循环
i=i-1
8.data=b*b—4*a*c
如果data>0
否则如果data=0
x1=x2=—b/2
无实数解
三、编程题
1.main()
{
printf(“##############################\n”);
printf(“Howdoyoudo?
\n”);
}
2.main()
inta,b,c;
scanf(“%d%d%d”,&
a,&
b,&
c);
printf(“sum=%d”,a+b+c);
第二章数据类型与表达式
一、单项选择题
1.B2.C3.A4.A5.D6.B7.A8.C9.D
二、写出下列程序的运行结果
1.
aabbccabc
AN
2.
ab
9798
3.9,11,9,10
4.
a=2,b=3,c=2
5.
s1=2.500000
s2=3
main()
charc1='
c'
c2='
h'
c3='
i'
c4='
n'
c5='
a'
;
c1=c1+4;
c2=c2+4;
c3=c3+4;
c4=c4+4;
c5=c5+4;
printf("
%c%c%c%c%c\n"
c1,c2,c3,c4,c5);
第三章顺序程序设计
选择题
1)B2)D3)D4)A5)A6)B7)B8)A9)D10)C11)D12)A
填空题
1)b2)2613)2521374)abc5)5.0,4,c=36)3
编程题
#definePI3.1415926
main()
{
floath,r,l,sv,sz;
printf(“请输入圆的半径r,圆柱高h:
\n”);
scanf(“%f,%f”,&
r,&
h);
l=2*PI*r;
s=PI*r*r;
sv=3.0/4.0*PI*r*r*r;
sz=PI*r*r*h;
printf(“圆周长为:
l=%6.2f,圆面积为:
s=%6.2f\n”,l,s);
printf(“求体积为:
sv=%6.2f,圆柱体积为:
sz=%6.2f\n”,sv,sz);
2、
floatc,f;
printf(“请输入一个华氏温度:
scanf(“%f”,&
f);
c=5.0/9.0*(f-32);
printf(“摄氏温度为:
%6.2f\n”,c);
第四章循环程序设计
一、选择题
1.D2.D3.D4.C5.D6.A7.B8.B9.A10.D.11.B12.A13.B14.C15.C16.A17.A18.B19.D20.D21.A
二、填空题
1.585858
2.0
3.18
4.8921
5.20,0
6.6
7.1,3,2
8.Year%400==0
year%100!
=0
count++
longa;
scanf(“%ld”,&
a);
if(a>
=10000&
&
a<
=99999)
printf(“这是个五位数”);
elseif(a>
=1000&
=9999)
printf(“这是个四位数”);
=100&
=999)
printf(“这是个三位数”);
=10&
=99)
printf(“这是个二位数”);
=0&
=9)
printf(“这是个一位数”);
else
printf(“输入错误”);
3.
inta;
intg,s,b;
//个位、十位、百位
水仙花数有:
\n"
);
for(a=100;
i<
=999;
a++)
{g=a%10;
s=a/10%10;
b=a/100;
if(a==g*g*g+s*s*s+b*b*b)
%d"
a);
4、
{inti,n;
inputn:
"
scanf("
%d"
&
n);
\n%d="
n);
for(i=2;
=n;
i++)
{while(i!
=n)
if(n%i==0)
{printf("
%d*"
i);
n/=i;
elsebreak;
%d\n"
5、
#include“stdio.h”
charc;
intw,x,y,z;
w=x=y=z=0;
while((c=getchar())!
=’\n’)
if((c>
’a’&
c<
’z’)||(c>
’A’&
’Z’))
w++;
elseif(c==’’)
x++;
elseif(c>
’0’&
’9’)
y++;
elsez++;
printf(“英文字母个数:
%d\n”,w);
printf(“空格个数:
%d\n”,x);
printf(“数字个数:
%d\n”,y);
printf(“其他字母个数:
%d\n”,z);
6、main()
floath=100,t=100;
intj;
for(j=1;
j<
10;
j++)
t=t/2;
h=h+t*2;
printf(“共经过:
%f米\n”,h);
printf(“第十次反弹%f米\n”,t/2);
第五章数组
1.B2.A3.C4.C5.D6.B7.C8.B9.C10.B
1.S=368
2.
*****
3.S1=18
S2=10
4.!
margorP
5.
数字0的出现次数是:
3
数字1的出现次数是:
2
数字2的出现次数是:
数字3的出现次数是:
数字4的出现次数是:
数字5的出现次数是:
1
数字6的出现次数是:
数字7的出现次数是:
数字8的出现次数是:
数字9的出现次数是:
1.#include"
stdio.h"
{inta[11];
inti,j,t;
input10number:
for(i=1;
11;
a[i]);
=9;
for(j=1;
=10-i;
if(a[j]<
a[j+1])
{t=a[j];
a[j]=a[j+1];
a[j+1]=t;
thesortednumberis:
%4d"
a[i]);
2.#include"
{inta[11],i,b;
imput10sortednumber:
for(i=0;
inputaninteger:
b);
for(i=9;
i>
a[i]>
b;
i--)
a[i+1]=a[i];
a[i+1]=b;
sortednumbers:
%5d"
3.#include"
{inta[5],i,j,t;
input5integer:
5;
i++)/*输入5个整数*/
for(i=0,j=4;
j;
i++,j--)/*逆序存放*/
{t=a[i];
a[i]=a[j];
a[j]=t;
i++)/*逆序存放后重新输出*/
4.#include"
{inti,j,a[10][10]={{1},{1,1}};
for(i=2;
i++)/*给二维数组每个元素赋值*/
{a[i][0]=1;
=i;
a[i][j]=a[i-1][j-1]+a[i-1][j];
i++)/*输出二维数组*/
{for(j=0;
%-5d"
a[i][j]);
5.#include"
{inta[3][4],i,j,max,row,col;
input3*4matrix:
3;
i++)/*输入3*4矩阵*/
for(j=0;
4;
a[i][j]);
max=a[0][0];
row=0;
col=0;
i++)/*寻找矩阵中的最大值及其行列号*/
if(max<
a[i][j])
{max=a[i][j];
row=i,col=j;
\n数组中最大的数是%d,其行号是%d,列号是%d\n"
max,row,col);
6.#defineN3
#defineM4
#include"
{inta[N][M],i,j,k,max,row,col;
input%d*%dmatrix:
\n"
N,M);
N;
i++)/*输入二维矩阵*/
M;
i++)/*求鞍点*/
{max=a[i][0];
row=i;
j++)/*求矩阵中每一行的最大值及其所行列号*/
col=j;
for(k=0;
k<
k++)/*判断每一行的最大值在其所在列是否最大*/
if(a[k][col]<
max)
break;
if(k==N)/*得到鞍点*/
thepointis%d,row=%d,col=%d\n"
if(i==N)/*没有鞍点*/
nopoint\n"
7.#include"
{intnum=0,word=0;
/*word=0表示未出现单词,如出现单词就置word为1.num用来统计单词个数*/
pleaseinputastring:
while((c=getchar())!
='
\n'
)
if(c=='
'
word=0;
elseif(word==0)
{word=1;
num++;
Thereare%dwordsintheline\n"
num);
8.#include"
{inti,j,uppn,lown,dign,span,othn;
/*uppn,lown,dign,span,othn分别存放英文大写字母、小写字母、数字、空格和其他字符的个数*/
chartext[3][80];
uppn=lown=dign=span=othn=0;
for(i=0;
{gets(text[i]);
for(j=0;
80&
text[i][j]!
\0'
{if(text[i][j]>
A'
text[i][j]<
Z'
uppn++;
elseif(text[i][j]>
z'
lown++;
0'
9'
dign++;
elseif(text[i][j]=='
span++;
othn++;
%s\n"
text[i]);
uppn=%d\n"
uppn);
lown=%d\n"
lown);
dign=%d\n"
dign);
span=%d\n"
span);
othn=%d\n"
othn);
9.#include"
{inti,j;
charstr1[20],str2[20];
inputtwostrings:
gets(str1);
gets(str2);
j=strlen(str1);
/*求字符串1的长度*/
str2[i]!
i++,j++)/*字符串合并*/
str1[j]=str2[i];
str1[j]='
/*加上字符串结束标志*/
puts(str1);
10.#include"
(nomorethan20characters)\n"
gets(str2);
n=strlen(str1)<
strlen(str2)?
strlen(str1):
strlen(str2);
/*n中存放较短字符串的长度*/
n&
str1[i]==str2[i];
i++);
str1[i]-str2[i]);
第六章函数与编译预处理
1.C2.B3.B4.B5.A6.B7.A8.C9.D10.A
1.9
2.4,B
8,B
3.-4.000000
4.a=6,b=5
5.48
1.main()
{intprime(intn);
intn;
inputn(n>
0):
if(prime(n))
%disasushu\n"
elseprintf("
%disnotasushu\n"
intprime(intn)
{intflag=1,i;
=n/2&
flag==1;
if(n%i==0)flag=0;
return(flag);
#defineN3
convert(intarray[3][3])
{inti,j,t;
N-1;
for(j=i+1;
{t=array[i][j];
array[i][j]=array[j][i];
array[j][i]=t;
inta[N][N];
inputa:
Arraya:
convert(a);
adezhuanzhiis:
3.#include<
stdio.h>
#include<
string.h>
{charstr[100];
inputastring:
);
gets(str);
inverse(str);
thereversedstringis:
str);
inverse(charstr[])
chart;
inti,j;
for(i=0,j=strlen(str)-1;
i++,j--)
t=str[i];
str[i]=str[j];
str[j]=t;
4.#include<
concat(charstr1[],charstr2[])
{inti=0,j;
while(str1[i]!
i++;
str2[j]!
i++,j++)
str1[i]=str2[j];
str1[i]='
charstr1[100],str2[100];
concat(str1,str2);
5.main()
{charstr[80];
inputastring(4geshuzizifu):
%s"
insert(str);
resultis:
\n%s\n"
insert(charstr[])
inti;
for(i=strlen(str);
0;
i--)
str[2*i]=str[i];
str[2*i-1]='
6.#include"
inti,ndight,nwhite,nletter,nother;
count(charstr[])
ndight=nwhite=nletter=nother=0;
str[i]!
if(str[i]>
str[i]<
ndight++;
elseif((str[i]>
)||(str[i]>
))
nletter++;
elseif(str[i]=='
nwhite++;
elsenother++;
chartext[80];
gets(text);
count(text);
ndight=%d,nletter=%d,nwhite=%d,nother=%d\n"
ndight,nletter,nwhite,nother);
7.#defineN10
sort(charstr[])
N-i;
if(str[j]>
str[j+1])
{t=str[j];
str[j]=str[j+1];
str[j+1]=t;
charstr[N];
inti;
Input10gezifu:
sort(str);
Thesortedresult:
%c"
str[i]);
8.这题较复杂
#defineN10
voidinput_e(intnum[],charname[N][8])
{inti;
{printf("
inputg
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 教程 答案 周鸣争