华农C语言程序设计实验指导书参考答Word格式文档下载.docx

上传人:b****6 文档编号:21629300 上传时间:2023-01-31 格式:DOCX 页数:27 大小:20.36KB
下载 相关 举报
华农C语言程序设计实验指导书参考答Word格式文档下载.docx_第1页
第1页 / 共27页
华农C语言程序设计实验指导书参考答Word格式文档下载.docx_第2页
第2页 / 共27页
华农C语言程序设计实验指导书参考答Word格式文档下载.docx_第3页
第3页 / 共27页
华农C语言程序设计实验指导书参考答Word格式文档下载.docx_第4页
第4页 / 共27页
华农C语言程序设计实验指导书参考答Word格式文档下载.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

华农C语言程序设计实验指导书参考答Word格式文档下载.docx

《华农C语言程序设计实验指导书参考答Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《华农C语言程序设计实验指导书参考答Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。

华农C语言程序设计实验指导书参考答Word格式文档下载.docx

%d"

a+b);

[题目1014:

求圆面积]

{floatarea,r;

%f"

&

r);

area=3.14159*r*r;

%0.2f"

area);

3

[题目1015:

计算摄氏温度值]

#include<

stdio.h>

{floatf,c;

f);

c=5.0/9*(f-32);

%.2f"

c);

math.h"

{floata,b;

%f,%f"

if(fabs(a*a+b*b-1)<

1e-3)

Y\n"

);

elseprintf("

N\n"

[题目1017:

求数的位数]

{intn,place;

%ld"

n);

if(n>

99999999)place=9;

elseif(n>

9999999)place=8;

999999)place=7;

99999)place=6;

9999)place=5;

999)place=4;

99)place=3;

9)place=2;

elseplace=1;

%ld\n"

place);

[题目1018:

数的排序]

3,6,9

{inta,b,c,t;

%d,%d,%d"

b,&

c);

if(a>

b){t=a;

a=b;

b=t;

c){t=a;

a=c;

c=t;

if(b>

c){t=b;

b=c;

a,b,c);

#include<

{chara,b,c,d,e;

%c%c%c%c%c"

c,&

d,&

e);

if(a<

='

Z'

&

a>

A'

)a=a+32;

if(b<

b>

)b=b+32;

if(c<

c>

)c=c+32;

if(d<

d>

)d=d+32;

if(e<

e>

)e=e+32;

a,b,c,d,e);

{inta,b,c,d,e;

%d%d%d%d%d"

if(a%27==0)printf("

YES\n"

NO\n"

if(b%27==0)printf("

if(c%27==0)printf("

if(d%27==0)printf("

if(e%27==0)printf("

{intn;

if(n<

0)printf("

negative\n"

positive\n"

if(n%2==0)printf("

even\n"

odd\n"

[题目1023:

简单计算器]

intmain()

{floata,b,c;

charop;

%f%c%f"

op,&

switch(op)

{case'

+'

:

c=a+b;

break;

case'

-'

c=a-b;

*'

c=a*b;

/'

c=a/b;

default:

error"

result=%.2f"

9

[题目1024:

计算阶乘]

输入正整数n,计算n!

,结果用长整型数表示(注n!

=1*2*3*...*n)

{longi,n=1,a;

a);

for(i=1;

i<

=a;

i++)n=n*i;

n);

[题目1025:

计算数列和]

{longn,sum=0,i,t=1;

=n;

i++)

{sum=sum+t;

t=t+2;

sum);

{longn,sum;

sum=n*n;

注:

评判系统不对程序实现细节进行分析,只对运行结果进行评测。

[题目1026:

累加一行字符中的数字]

{charc;

ints=0,a;

while((c=getchar())!

\n'

{if(c>

0'

c<

9'

{a=c-48;

s=s+a;

s);

11

[题目1029:

求最大公约数]

{longr,m,n,temp;

%ld,%ld"

m,&

while(m!

=0)

{r=n%m;

n=m;

m=r;

{longm,n,t,i,s;

t=m>

n?

n:

m;

for(i=t-1;

i>

=1;

i--)

{if(m%i==0&

n%i==0)

{s=i;

break;

}

[题目1030:

字符变换]

c=c+32;

putchar(c);

[题目1037:

{inti,t,n;

floata=2,b=1,s=0;

{s=s+a/b;

t=a;

a=a+b;

%.4f\n"

[题目1044:

输出最小值]

{inti,t,min;

min);

10;

{

t);

if(t<

min)min=t;

%d\n"

min);

*[题目1031:

统计单词个数]

{inti,num=0,word=0;

charc;

for(i=0;

(c=getchar())!

if(c=='

'

)word=0;

elseif(word==0)

{word=1;

num++;

num);

*[题目1042:

百万富翁]

math.h>

{intn,m,i;

scanf("

m);

for(i=1;

=38;

if(0.01*(pow(2,i-1)-1)-i*m>

=0)break;

i-1);

15

(1)进一步熟悉掌握用while语句、do-while语句和for语句实现循环的方法。

[题目1028:

求素数]

#include<

{intm,k,i;

for(m=2;

m<

=200;

m++)

{k=sqrt(m);

for(i=2;

=k;

if(m%i==0)break;

if(i>

k)printf("

m);

[题目1035:

打印菱形]

{intn,i,j,k;

=2*n+1;

{k=abs(n+1-i);

for(j=1;

j<

j++)printf("

"

=2*n+1-2*k;

*"

\n"

[题目1038:

打印图案]

{intn,i,j,k,h;

for(i=-n+1;

=n-1;

{for(j=0;

abs(i);

j++)

for(k=1;

k<

=n-abs(i);

k++)printf("

k);

for(h=n-abs(i)-1;

h>

h--)printf("

h);

17

{inta[10];

inti;

i++)scanf("

a[i]);

for(i=9;

=0;

i--)printf("

a[i]);

[题目1040:

统计不同数字个数]

#include"

{inta[20];

inti,t,p=0;

20;

{scanf("

for(t=0;

t<

i;

t++)

if(a[t]==a[i])break;

if(t==i)

p++;

p);

[题目1062:

打印矩阵]

{inta[3][4],b[4][3],i,j;

3;

for(j=0;

4;

a[i][j]);

b[j][i]=a[i][j];

%d"

b[i][j]);

*[题目1047:

冒泡排序]

inti,j,t;

9;

9-i;

if(a[j]>

a[j+1])

{t=a[j];

a[j]=a[j+1];

a[j+1]=t;

*[题目1046:

计算高精度加法]

string.h"

{inta[100]={0},b[100]={0},c[100]={0};

chars[101];

inti=0,n1=0,n2=0,max=0,e=0;

gets(s);

n1=strlen(s);

for(i=n1-1;

i--)a[n1-1-i]=s[i]-'

n2=strlen(s);

for(i=n2-1;

i--)b[n2-1-i]=s[i]-'

if(n1>

n2)max=n1;

elsemax=n2;

=max;

{c[i]=(a[i]+b[i]+e)%10;

e=(a[i]+b[i]+e)/10;

if(c[max]>

0)printf("

c[max]);

for(i=max-1;

c[i]);

*[题目:

找矩阵中的鞍点]

{inti,j,k,a[3][4],max,maxj,flag;

{max=a[i][0];

maxj=0;

if(a[i][j]>

max)

{max=a[i][j];

maxj=j;

flag=1;

for(k=0;

k++)

if(max>

a[k][maxj])

{flag=0;

if(flag)

{printf("

max);

if(!

flag)

NO"

22

[题目1121:

定义存贮字符串的字符数组]

在下面程序中填充定义字符数组的语句,使程序完整。

{chars[80];

/*定义字符数组s*/

strcpy(s,"

abcdefghijklmn"

%s"

s);

[题目1123:

字符串的输入与输出]

下面程序实现从键盘读入字符串,然后输出到屏幕,请填充必要的语句。

chars[50];

What'

syourname?

"

/*由键盘读入字符串*/

Yournameis"

);

/*打印字符串*/

[题目1122:

字符串的合并]

从键盘输入3个字符串(每个字符串以回车符做为结束标志),将3个字符串以输入先后顺序合并到

字符串s中,请填空使用程序完整。

chars[100]="

chara[30];

gets(a);

strcat(s,a);

23

/*可以写多行代码*/

[自测数据]

[键盘输入]

123

abc

456

[正确输出]

123abc456

[题目1050:

寻找字符串]

[提示]方法1:

建立双重循环,外层循环变量指示第一个串的查找起始位置,内层循环从起始位置开始判

断第二个字符中是否出现在此处;

方法2:

使用字符串函数strstr()。

{inti,j;

chara[80],b[80];

gets(b);

a[i]!

\0'

b[j]!

if(a[i+j]!

=b[j])break;

if(b[j]=='

)break;

if(a[i]!

)printf("

i+1);

NotFound"

24

[题目1059:

函数定义]

下面是使用辗转相除法,求最大公约数的程序,请补充完整程序中函数的定义与调用。

intf(intm,intn)

intr;

while((r=m%n)!

m=n;

n=r;

returnn;

inta,b,n;

%d%d"

a,&

f(a,b));

[题目1083:

编写函数计算阶乘]

下面程序实现由键盘读入整数n,计算并输出n!

,请补充完整计算阶乘的函数。

longfanc(inta)

{longi,n=1;

25

fanc(n));

[题目1124:

函数中的变量]

写出下面程序的运行结果:

intf1(intx)

{staticintz=3,y=0;

y++;

z++;

return(x+y+z);

{inta=1,k;

%4d"

f1(a));

程序运行结果为:

6810

*[题目1084:

编写递归调用函数,实现十进制数转二进制数]

下面程序,实现由键盘输入一个正整数(不大于100000000),输出其对应的二进制数(原码表示)。

请填空:

voidfun(inti)

{if(i>

1)

fun(i/2);

i%2);

fun(n);

26

[题目1091:

交换两数,由大到小输出]

下面程序,交换两数,使两数由大到小输出,请填空

voidswap(int*p1,int*p2)

{inttemp;

temp=*p1;

*p1=*p2;

*p2=temp;

{inta,b;

int*pa,*pb;

pa=&

a;

pb=&

b;

b)swap(pa,pb);

%d%d\n"

a,b);

[题目1065:

数组中的指针]

{printf("

19\n"

2016\n"

2000\n"

2004\n"

2036\n"

2020\n"

21"

[题目1092:

函数实现求字符串长度]

下面程序以指针方式传递参数,由函数实现求字符串长度,请填空完成

intf(char*p)

{returnstrlen(p);

i=f(s);

i);

[题目1125:

定义结构体类型]

/

structstudent

{charname[20];

charsex;

intnum;

floatscore;

28

structstudentstu;

stu.name);

%*c%c"

stu.sex);

stu.num);

stu.score);

%s\n"

prin

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 医药卫生 > 中医中药

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1