C语言第六章习题带答案

合集下载

C语言第六章数组习题答案

C语言第六章数组习题答案

第六章 数组

习题答案

2、0 4

3、0 6

4、&a[i] i%4==0 printf("\n");

5、i+j==3_ a[i][j]

6、12

7、a[i][j]+b[i][j] printf(“\n ”)

8、按行存放

9、( a[i]>a[j])

10、将串str2复制到串str1中后再将串str3连接到串str1之后

三、阅读题

1、如右图所示

2、AQM

3、AzyD

4、9198

5、如右图所示

6、92

7、1,2,5,7,

8、2

9、v1=5,v2=8,v3=6,v4=1

10、a*b*c*d*

四、编程题

1(1)选择法排序

#include <stdio.h>

void main( )

{int i,j,n=10,p,a[10];int temp;

for(i=0;i<n;i++) scanf("%d",&a[i]);//输入十个数

printf("\n 原始的一维数组是:\n");

for(i=0;i<n;i++) printf("%5d",a[i]); /* 输出原始的一维数组序列 */ for(i=0;i<n-1;i++)

{ p=i; /*假定第i 趟中最小数的位置是i*/

for(j=i+1;j<n;j++)

if(a[j]<a[p]) p=j;

if(i!=p) {temp=a[i];a[i]=a[p];a[p]=temp;}

}

printf("\n排序后的一维数组:\n");

for(i=0;i<n;i++) printf("%5d",a[i]); /* 输出排序后的一维数组序列*/

C语言第六章答案及详解

C语言第六章答案及详解

第六章指针

一、选择题

1答案:A

分析:本题主要考指针赋值,n2=n1;是把n2的值赋给n1,故根据指针赋值的定义可知选A,即把q所指对象的值赋给p所指对象。

2答案:B

分析:本题主要考指针定义,因为p指向变量x,故输出其值的时候应该是x的值。

3答案:C

分析:本题主要考指针的定义和赋值,C前面是定义一个量a并赋值为10,后面定义一个指针,并把a的值赋给这个指针。

4答案:C

分析:本题主要考指针的定义及赋值,开始时使p指向a,q指向b,把它们的值交换,然后再显示。故得正确答案C。

5答案:C

分析:本题主要考函数指针的定义,函数前面的*号表求返回值是指针类型,void表示返回无值弄的。故选C。

6答案:A

分析:本题主要考的是指针的变量的赋值,在使用scanf()函数的时候,后面跟的是一个地址,由于pa本身保存的是地址,故选A

7答案:D

分析:本题主要考的指针的赋值及指向指针的指针的赋值,根据定义知选D。

B的正确形式是**q=2;C的正确形式应该是q=&p。

8答案:C

分析:本题主要考的是全局变量和局部变量,以及指针的用法,第一个f(&a)的返回值是5,第二个返回值是2。

9答案:A

分析:本题主要考的是变量自加,指针传值,以及指针的赋值。通过第二行a=b可知p1,p2指向的变量的值相同,都指向了b所指的对象,也是p2所指的对象’a’,由于(*a)++;是实现a所指对象的自加,故由’a’变成’b’,故最终选A。

10答案:A

分析:本题主考NULL,一般来说当我们把一个空值以整数的形式输出出来的时候,默认的情况是0。

C语言答案第6章

C语言答案第6章

第6章

[习题6-1]更正下面函数中的错误。

(1)返回求x和y平方和的函数。 (2)返回求x和y为直角边的斜边的函数。

sum_of_sq(x,y) hypot(double x,double y)

{ {

double x,y; h=sqrt(x*x+y*y);

return(x*x+y*y); return(h);

} }

解:

/*c6_1(1).c*/ /*c6_1(2).c*/

(1) (2)

double sum_of_sq(double x,double y) double hypot(double x,double y)

{ {

return(x*x+y*y); double h;

} h=sqrt(x*x+y*y);

return(h);

}

[习题6-2]下面函数的功能是什么?

(1)itoa (int n, char s [ ] ) (2)int htod(char hex [ ] ) { { int i,dec=0;

static int i=0,j=0; for(i=0;hex[i]!='\0';i++) int c; { if(hex[i]>='0'&&hex[i]<='9') if(n!=0) dec=dec*16+hex[i]-'0';

{ if(hex[i]>='A'&&hex[i]<='F')

j++; dec=dec*16+hex[i]-'A'+10;

c=n%10+'0'; if(hex[i]>='a'&&hex[i]<='f')

itoa(n/10,s); dec=dec*16+hex[i]-'a'+10;

C语言程序设计 第六章 函数 试题及答案

C语言程序设计 第六章 函数 试题及答案
0 1 2 3 4 0 2 4 6 8 10 12 14 16 18
C) 0 1 2 3 4 5 6 7 8 9 D) 0 2 4 6 8 10 12 14 16 18
0 1 2 3 4 0 2 4 6 8 10 12 14 16 18
参考答案:D
*6.26以下程序的正确运行结果是。
#include<stdio.h>
参考答案:D
*6.5以下正确的说法是。
A)实参和与其对应的形参占用独立的存储单元
B)实参和与其对应的形参共占用一个存储单元
C)只有当实参和与其对应的形参同名时才共占用一个存储单元
D)形参是虚拟的,不占用存储单元
参考答案:A
参考分析:本题并不严谨,因为实参可以是表达式,当实参为表达式时,实参并不单独占用独立的存储单元。
A)实参可以是常量、变量或表达式
B)形参可以是常量、变量或表达式
C)实参可以是任意类型
D)实参应与其对应的形参类型一致
参考答案:B
6.8以下正确的说法是。
A)定义函数时,形参的类型说明可以放在函数体内
B)return后面的值不能为表达式
C)如果函数的类型与返回值类型不一致,以函数类型为准
D)如果形参与实参的类型不一致,以实参类型为准
max=5;
for(i=0;i<max;i++) a[i]=i;

C语言第6章习题答案

C语言第6章习题答案
result += *(ptr+i); return result; }
6
temp = *ptra; *ptra = *ptrb;
1
*ptrb = temp; } if ( *ptra > *ptrc ) {
temp = *ptra; *ptra = *ptrc; *ptrc = temp; } if ( *ptrb > *ptrc ) {
temp = *ptrb; *ptrb = *ptrc; *ptrc = temp; } printf("a=%d,b=%d,c=%d\n",a,b,c); printf("*ptra=%d,*ptrb=%d,*ptrc=%d\n",*ptra,*ptrb,*ptrc); return 0; }
s++; t++; } return *s - *t; }
(6) #include <stdio.h>
5
#define M 5 #define N 3 int sum (int *a); int main( ) {
static int a[M][N]; int i,j; for( i = 0; i < M; i++ )
if ( max < *(ptr+i) ) {

(完整版)c语言第六章循环结构程序设计(习题册答案)

(完整版)c语言第六章循环结构程序设计(习题册答案)

第六章循环结构程序设计

基础练习(A)

一、选择题

1、C语言中while和do-while循环的主要区别是(A)。

A) do-while的循环体至少无条件执行一次

B) while的循环控制条件比do-while的循环控制条件严格

C) C)do-while允许从外部转到循环体内

D) do-while的循环体不能是复合语句

2、以下描述中正确的是(C)。

A) 由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用

复合语句

B)do-while循环由do开始,用while结束,在while(表达式)后面不能写分号

C) 在do-while循环体中,一定要有能使while后面表达式的值变为零(“假”)的操

D)do-while循环中,根据情况可以省略while

3、设有程序段

int k=10;

while(k) k=k-1;

则下面描述中正确的是(A)。

A)while循环执行10次B)循环是无限循环

C)循环体语句一次也不执行D)循环体语句执行一次

4、下列循环语句中有语法错误的是( D )。

A) while(x=y) 5;B) while(0) ;

C) do 2;while(x==b);D) do x++ while(x==10);

5、已知int i=1;执行语句while (i++<4) ;后,变量i的值为(C)。

A) 3 B) 4 C) 5 D) 6

6、语句while(!E);中的表达式!E等价于(A)。

A)E==0 B)E!=1 C)E!=0 D)E==1

7、下面程序段的运行结果是(A)。

C语言第六章复习题(含答案)

C语言第六章复习题(含答案)

1.t为int类型,进入下面的循环之前,t的值为0

while( t=l )

{ ……}

则以下叙述中正确的是( B )

(A) 循环控制表达式的值为0 (B) 循环控制表达式的值为1

(C) 循环控制表达式不合法(D) 以上说法都不对

2.有以下程序

main( )

{ int i,s=0;

for(i=1;i<10;i+=2) s+=i+1;

printf(“%d\n”,s);

}

程序执行后的输出结果是 ( D )。

(A) 自然数1~9的累加和 (B) 自然数1~10的累加和

(C) 自然数1~9中的奇数之和 (D) 自然数1~10中的偶数之和

3.以下程序段的输出结果是( C )。

int x=3;

do

{ printf("%3d",x-=2); }

while(!(- -x));

(A)1 (B)30 (C)1 -2 (D)死循环

4.以下程序中,while循环的循环次数是( D)。

main()

{ int i=0;

while(i<10)

{ if(i<1) continue;

if(i==5) break;

i++;

}

......

}

(A) 1 (B) 10

(C) 6 (D) 死循环,不能确定次数

5.下面程序的输出是( B )。

(A)741 (B)852 (C)963 (D)875421

main()

{int y=9;

for(;y>0;y--)

{if(y%3==0)

{printf("%d",--y);continue;}

}

}

6.若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是( A)。

C语言程序设计-第5、6 章习题答案

C语言程序设计-第5、6 章习题答案

第五章练习题答案一、选择题

CCAAB ADCDD BDC

二、判断题

错错对对错错对错对对

三、程序题

80

偶数

15 28

13 6

相同(相等)

第六章练习题答案一、选择题

BBABC BBBAB

二、判断题

错对对对错错对

三、程序填空

18、八

19、查找(顺序查找)

20、奇数

21、6

22、50 45

23、26 15

24、2 3

25、ff3(m,n,++b)

四、程序设计题

26

int fun1(int a[], int n)

{

int i,s=0;

for(i=0;i<n;i++) s+=a[i]*a[i];

return s;

}

27

void fun2(int a[], int n, int* c1, int* c2)

{

int i;

*c1=*c2=0;

for(i=0;i<n;i++)

if(a[i]%2!=0) (*c1)++; else (*c2)++;

}

28

int fun5(int m, int n)

{

int r;

while(1) {

if(n==0) return m;

r=m%n;

m=n; n=r;

}

}

数据结构与算法(C语言篇)第6章 习题答案[2页]

数据结构与算法(C语言篇)第6章 习题答案[2页]

习题答案

1.填空题

(1)序列有序(2)块内无序、块间有序(3)存储地址

(4)内部排序、外部排序

2.选择题

(1)D (2)C (3)A (4)C (5)C (6)C (7)B (8)A

3.思考题

(1)

重复遍历整个序列,从第一个元素开始,两两比较相邻元素的大小,如果反序则交换,直到整个序列变为有序为止。

(2)无序序列:29–18–25–47–58–12–51–10

归并排序:

第一次归并后的顺序为:18–29–25–47–12–58–10–51

第二次归并后的顺序为:18–25–29–47–10–12–51–58

第三次归并后的顺序为:10–12–18–25–29–47–51–58

快速排序:

第一次划分后的顺序为:10–18–25–12–29–58–51–47

第二次划分后的顺序为:10–12–18–25–29–58–51–47

第三次划分后的顺序为:10–12–18–25–29–47–51–58

堆排序:

第一次构造大顶堆:58–47–51–29–18–12–25–10

4.编程题

(1)

1void Bubble_Sort(int a[], int n){

2 int i, j, temp; //定义三个整型变量

3 for(j = 0; j < n-1; j++){ //按轮次进行判断

4 //每一轮判断完成后,最后一个元素都是当前未排序序列的最大值

5 //每一轮排序,未排序的元素都会减1

6 for(i = 0;i < n-1-j; i++){ //从第一个元素开始依次向后判断

7 if(a[i] > a[i+1]){ //判断元素余后一个元素

C语言第六章习题答案

C语言第六章习题答案

6.1 用筛选法求100之内的素数. #include <stdio.h>

#define N 101

void main()

{ int i,j,line,a[N];

for(i=1;i<=100;i++)

a[i]=i;

a[1]=0;

for(i=2;i<sqrt(100);i++)

for(j=i+1;j<=100;j++)

{ if(a[i]!=0 && a[j]!=0) if(a[j]%a[i]==0)

a[j]=0;

}

printf("n");

for(i=2,line=0;i<=100;i++) { if(a[i]!=0)

{ printf("%5d",a[i]); line++;

if(line==10)

{ printf("n");

line=0;

}

}

}

}

6.2 用选择法对10个数排序.

#define N 10

main()

{

int i,j,min,temp,a[N];

printf("请输入十个数:n"); for (i=0;i<=10;i++)

{ printf("a[%d]=",i);

scanf("%d",&a[i]);

}

printf("n");

for(i=1;i<=10;i++)

printf("%5d",a[i]);

printf("n");

for (i=1;i<=9;i++)

{ min=i;

for(j=i+1;j<=10;j++)

if(a[min]>a[j]) min=j; temp=a[i];

a[i]=a[min];

a[min]=temp;

c语言教学资料—第6章课后答案.docx

c语言教学资料—第6章课后答案.docx

第6章练习与思考

1.指针变量有哪几种运算类型?

除了一般变量能做的它都能做以外,还有取地址和取内容运算。

2.有一个4x4的矩阵,试用指针变量按照4行4列格式,输岀矩阵中各元素的值。

#include "stdio.h"

void main()

{

int 询4][4]={{1,1丄1},{1丄1,1},{1丄1,1},{1,1,1,1}};

int *p=a;

for(i=0;i<4*4;i++)

{ printf(n%3d",*(p+i));

if((i+l)%4=0)

printf(H\n H);

}

}

3•输出一个字符串,将这个字符串屮大写字母改为小写字母,第一个字母变大写。

#include "stdio.h"

void main()

{

char a[100],*p 二NULL;

int i;

printf(n Please input a string:\n H);

gets(a);

P=a;

if(*p>=,a,&&*p<=,z,)

*p=*p・32;

for(i=l;a[i]!='\O f;i++)

{

if(*(p+i)>='A '&&*(p+i)v=Z) *(p+i)=*(p+i)+32;

}

puts(a);

}

4.指向函数的指针有哪些特点?

(1)可以通过调用指向函数的指针来调用函数。

(2)对于已定义的函数指针可以指向返回值类型相同的不同函数。

(3)函数指针可做函数的参数。

5.编写程序,在己知字符串str中截取一子串。要求该子串是从血的第m个字符开始, 由n

个字符组成。

#include "stdio.h"

练习题-第六章_数组(有答案)

练习题-第六章_数组(有答案)

一、填空题

1.在C语言中,二维数组元素在内存中的存放顺序是。

2.定义了二维数组:int array[4][5],该数组所占的内存空间为______字节。

3.假设有整型数组array[100][100],其中第66行,第66列元素array[66][66]在数

组中排列的位置(位置从1开始算起)为6566 。

4.若有定义:int a[3][4]={{1,2},{0},{4,6,8,10}};则初始化后,a[2][1]得到的初值是

________。

5.下面的程序段的运行结果是____he_____。

char x[ ]=“the teacher”;

int i =0;

while(x[++i] != ’\0’)

if(x[i-1] = = ‘t’) printf(“%c”,x[i]);

二、单项选择题

1.下面程序( B )(每行程序前面的数字表示行号)。

1 main( )

2 { float a[10]={0.0};

3 int i;

4 for(i=0;i<3;i++) scanf(“%d”,&a[i]);

5 for(i=1;i<10;i++) a[0]=a[0]+a[i];

6 printf(“%f\n”,a[0]);

7 }

A)没有错误B)第2行有错误

C)第4行有错误D)第6行有错误

2.下面程序中有错误的行是(D)(每行程序前面的数字表示行号)。

1main( )

2{

3int a[3]={1};

4int i;

5scanf(“%d”,&a);

6for(i=1;i<3;i++) a[0]=a[0]+a[i];

C语言6章作业答案

C语言6章作业答案

6.3

#include

void main()

{

int a[3][3],sum=0;

int i,j;

printf("enter data:\n");

for (i=0;i<3;i++)

for (j=0;j<3;j++)

scanf("%d",&a[i][j]);

for (i=0;i<3;i++)

for(j=0;j<3;j++)

if(i==j||i+j==2)

sum=sum+a[i][j];

printf("sum=%6d\n",sum);

}

6.4

解一:

#include

void main()

{ int a[11]={1,4,6,9,13,16,19,28,40,100}; int number,i,j;

printf("array a:\n");

for (i=0;i<10;i++)

printf("%d ",a[i]);

printf("\n");

printf("insert data:");

scanf("%d",&number);

if (number>a[9])

a[10]=number;

else

for (i=0;i<10;i++)

if (a[i]>number)

{ for(j=9;j>=i;j--) //从后往前移

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

a[i]=number;

break;

}

printf("Now array a:\n");

for (i=0;i<11;i++)

printf("%d ",a[i]);

printf("\n");

}解二:

#include

void main()

{ int a[11]={1,4,6,9,13,16,19,28,40,100}; int number,i,j;

c语言第6章练习题--数组

c语言第6章练习题--数组

c语言第6章练习题--数组

(一)基本概念

1、若有说明:int a[10];则对a数组元素的正确引用是(D)

A) a[10] B) a[3,5] C) a(5) D) a[10-10]

2、在C语言中,一维数组的定义方式为:类型说明符数组名__A_______

A) [常量表达式] B) [整型表达式]

C) [整型常量]或[整型表达式] D) [整型常量]

3、在C语言中,引用数组元素时,其数组下标的数据类型允许是

(C)

A) 整型常量B) 整型表达式C) 整型常量或整型表达式D) 任何类型的表达式

4、以下能对一维数组a进行正确初始化的语句是(CD)

A) int a[10]=(0,0,0,0,0) B) int a[10]={};

C) int a[]={0}; D) int a[10]={10*1};

5、以下能正确定义一维数组的选项是(B)

A) int num[]; B) #define N 100 C) int num[0..100]; D) int N=100;

int num[N]; int num[N];

6、以下对一维整型数组a的正确说明是(D)

A) int a(10); B) int n=10,a[n];

C) int n; scanf("%d",&n); int a[n]; D) #define SIZE 10

int

a[SIZE];

7、对以下说明语句的正确理解是__B________

int a[10]={6,7,8,9,10};

A) 将这5个初值依次赋给a[1]至a[5]

B) 将这5个初值依次赋给a[0]至a[4]

C语言第六章习题带答案

C语言第六章习题带答案

练习6-1答案

一、选择题

1.已知函数abc的定义为:

void abc()

{……}

则函数定义中void的含义是( A )。

A.执行函数abc后,函数没有返回值B.执行函数abc后,函数不再返回C.执行函数abc后,可以返回任意类型 D.以上三个答案全是错误的

2.已知:int p();,p是( C )。

A.int型变量

B.函数p的调用

C.一个函数声明,该函数的返回值是int型的值

D.强制类型转换表达式中的变量

3.以下正确的函数形式是( D )。

A.double fun(int x, int y) B.fun(int x, y)

{ z=x+y; return z; } { int z; return z; }

C.fun(x, y) D.double fun(int x, int y) { int x, y; double z; z=x+y; return z; } { double z; z=x+y; return z; }

4.以下说法正确的是( C )。

A.定义函数时,形参的类型说明可以放在函数体内

B.return后边的值不能为表达式

C.如果函数值的类型与返回值表达式的类型不一致,以函数值类型为准

D.如果形参与实参的类型不一致,以实参类型为准

5.C语言允许函数值类型缺省定义,此时该函数值隐含的类型是( B )。

A.float 型B.int型C.long型D.double型6.下面函数调用语句含有实参的个数为( B )。

func((exp1, exp2), (exp3, exp4, exp5));

c语言第六章数组习题答案【可编辑】

c语言第六章数组习题答案【可编辑】

第六章 数组

习题答案

2、0 4

3、0 6

4、&a[i] i%4==0 printf("\n");

5、i+j==3_ a[i][j]

6、12

7、a[i][j]+b[i][j] printf(“\n ”)

8、按行存放

9、( a[i]>a[j])

10、将串str2复制到串str1中后再将串str3连接到串str1之后

三、阅读题

1、如右图所示

2、AQM

3、AzyD

4、9198

5、如右图所示

6、92

7、1,2,5,7,

8、2

9、v1=5,v2=8,v3=6,v4=1

10、a*b*c*d*

四、编程题

1(1)选择法排序

#include <stdio.h>

void main( )

{int i,j,n=10,p,a[10];int temp;

for(i=0;i<n;i++) scanf("%d",&a[i]);//输入十个数

printf("\n 原始的一维数组是:\n");

for(i=0;i<n;i++) printf("%5d",a[i]); /* 输出原始的一维数组序列 */ for(i=0;i<n-1;i++)

{ p=i; /*假定第i 趟中最小数的位置是i*/

for(j=i+1;j<n;j++)

if(a[j]<a[p]) p=j;

if(i!=p) {temp=a[i];a[i]=a[p];a[p]=temp;}

}

printf("\n排序后的一维数组:\n");

for(i=0;i<n;i++) printf("%5d",a[i]); /* 输出排序后的一维数组序列*/

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

练习6-1答案

一、选择题

1.已知函数abc的定义为:

void abc()

{……}

则函数定义中void的含义是( A )。

A.执行函数abc后,函数没有返回值B.执行函数abc后,函数不再返回C.执行函数abc后,可以返回任意类型 D.以上三个答案全是错误的

2.已知:int p();,p是( C )。

A.int型变量

B.函数p的调用

C.一个函数声明,该函数的返回值是int型的值

D.强制类型转换表达式中的变量

3.以下正确的函数形式是( D )。

A.double fun(int x, int y) B.fun(int x, y)

{ z=x+y; return z; } { int z; return z; }

C.fun(x, y) D.double fun(int x, int y) { int x, y; double z; z=x+y; return z; } { double z; z=x+y; return z; }

4.以下说法正确的是( C )。

A.定义函数时,形参的类型说明可以放在函数体内

B.return后边的值不能为表达式

C.如果函数值的类型与返回值表达式的类型不一致,以函数值类型为准

D.如果形参与实参的类型不一致,以实参类型为准

5.C语言允许函数值类型缺省定义,此时该函数值隐含的类型是( B )。

A.float 型B.int型C.long型D.double型6.下面函数调用语句含有实参的个数为( B )。

func((exp1, exp2), (exp3, exp4, exp5));

A.1 B.2 C.4 D.5

7.以下程序的功能是计算函数F(x, y, z)=(x+y)/(x-y)+(z+y)/(z-y)的值,请选择填空。

#include

#include

float f(float, float);

main()

{float x, y, z, sum;

scanf("%f%f%f", &x, &y, &z);

sum=f( ①B )+f( ②C ); (注:或者选择sum=f( ①C )+f( ②B ))

printf("sum=%f\n", sum);

}

float f(float a, float b)

{float value;

value=a/b;

return(value);

}

①A.x-y, x+y B.x+y, x-y C.z+y, z-y D.z-y, z+y

②A.x-y, x+y B.x+y, x-y C.z+y, z-y D.z-y, z+y

二、填空题

8.以下程序的功能是根据输入的"y"("Y")与"n"("N"),在屏幕上分别显示出"This is YES."与"This is NO."。请填空,①是( break;)、②是( getchar() 或getch() 或getche() )。

#include

void YesNo(char ch)

{switch (ch)

{ case 'y':

case'Y': printf("\nThis is YES.\n"); ①;

case 'n':

case 'N': printf("\nThis is NO.\n");

}

}

main()

{char ch;

printf("\nEnter a char 'y', 'Y' or 'n', 'N':");

ch= ②;

printf("ch:%c", ch);

YesNo(ch);

}

9.下面函数pi的功能是:根据以下公式,返回满足精度(0.0005)要求的π的值,请填空,①是( t=n=1, s=0 )、②是( s*2 )。

π/2=1+1/3+(1/3)*(2/5)+(1/3)*(2/5)*(3/7)+(1/3)*(2/5)*(3/7)*(4/9)+….

#include

#include

#include

double pi(double eps)

{double s, t; int n;

for ( ①; t>eps; n++)

{ s+=t;

t=n*t/(2*n+1);

}

return( ②);

}

main()

{double x;

printf("\nPlease enter a precision:");

scanf("%1f", &x);

printf("\neps=%1f, =%1f", x, pi(x));

}

三、读程序,写结果

10.下列程序的运行结果是( 5 )。

#include

fun(int p)

{ int a=10;

p=a;

++p;

}

main()

{ int a=5;

fun(a);

printf("%d\n", a);

}

11.下列程序的运行结果是( 8 )。

#include

int abc(int u, int v);

main()

{ int a=24, b=16, c;

c=abc(a, b);

printf("%d\n", c);

}

int abc(int u, int v)

{ int w;

while (v)

{ w=u%v;

u=v;

v=w;

}

return u;

}

12.下列程序的运行结果是:

( before swap a=5,b=10

in swap x=10,y=5

after swap a=5,b=10 )。

#include

main()

{ int a, b;

a=5; b=10;

相关文档
最新文档