C语言程序设计教程第四章练习题解析汇报(1)

合集下载

c语言程序设计教程第二版课后答案

c语言程序设计教程第二版课后答案

c语言程序设计教程第二版课后答案【篇一:c语言程序设计(第2版)-- 课后题答案】p> 参考答案第1章进入c语言程序世界二、1.i love china!printf(we are students.\n)2.6项目实训题参考答案1.编写一个c程序,输出以下信息:* * * * * * * * * * * * * * * * * * * *i am a student!* * * * * * * * * * * * * * * * * * * *main(){ printf(********************\n);printf( i am a student!\n);printf(********************\n);}2.已知立方体的长、宽、高分别是10cm、20cm、15cm,编写程序,求立方体体积。

解:main(){int a,b,c,v;a=10;b=20;c=15;v=a*b*c;printf(v=%d,v);}本程序运行结果为:v=3000第2章编制c程序的基础知识一选择题c b a b a c c二操作题,2,-8,23.000000,2.500000,-8.0000002. abc defghwhy is21+35equal 523.34214. aaa项目实训题1.定义一个符号常量m为5和一个变量n值为2,把它们的乘积输出。

#define m 5main(){ int n,c;n=2; c=m*n;printf(%d\n,c);}2.编程求下面算术表达式的值。

(1)x+a%3*(int)(x+y)%2/4,设x=2.5,a=7,y=4.7;(2)(float)(a+b)/2+(int)x%(int)y,设a=2,b=3,x=3.5,y=2.5。

(1)main(){ int a=7;float x=2.5,y=4.7;printf(%f\n,x+a%3*(int)(x+y)%2/4);}(2)main(){ int a=2,b=3;float x=3.5,y=2.5;printf(%f\n,(float)(a+b)/2+(int)x%(int)y);}第三章顺序结构程序设计一选择题a c d c c二操作题1. x=3,a=2,b=32. z=12.7000002 13 3 2 bb cc abc n3. 1 2 1a2 1 2三.编程题编程题解:#include stdio.hmain(){float sj,gz,yfgz;printf(time,salary:);scanf(%f,%f,sj,gz);yfgz=sj*gz*0.9;printf(total salary:%f\n,yfgz);}本程序运行结果为:time,salary:4,3crtotal salary:10.8000002.编写一个程序求出任意一个输入字符的ascii码解:#include stdio.hmain(){char c;printf(input a string:);scanf(%c,c);printf(%c ascii is %d\n,c,c);}本程序运行结果为:input a string:acra ascii is 973、编写一个程序用于水果店售货员算帐:已知苹果每斤2.50元,鸭梨每斤1.80元,香蕉每斤2元,橘子每斤1.6元,要求输入各类水果的重量,打印出应付3解:main(){float p,y,x,j,ys,g,fk;printf(apple,pear,banana,orange(weight)=);scanf(%f,%f,%f,%f,p,y,x,j);ys=2.5*p+1.8*y+2*x+1.6*j;printf(fu kuan=);scanf(%f,g);fk=g-ys;printf(result:\n);printf(fukuan=%6.2fyuan\nshoukuan=%6.2fyuan\nzhaohui=%6. 2fyuan\n,g,ys,fk);}本程序运行结果为:apple,pear,banana,orange(weight)=1,2,3,4fu kuan=100result:fukuan=100.00yuanshoukuan= 18.50yuanzhaohui= 81.50yuan项目实训1.假设银行定期存款的年利率rate为2.25%,并已知存款期为n 年,存款本金为capital元,试编程计算n年后可得到本利之和deposit。

谭浩强版本C语言课后习题第四章

谭浩强版本C语言课后习题第四章
法2:
1 #include<stdio.h> 2 int main() 3{ 4 int a,b,c,temp,max; 5 scanf("%d,%d,%d",&a,&b,&c); 6 temp=(a>b)?a:b; 7 max=(temp>c)?temp:c; 8 printf("最大的是:%d\n",max); 9 return 0; 10 }
31 printf("\n反序数字为\n");
32 printf("%d%d%d%d%d",indiv,ten,hundred,thousand,ten_thousand);
33 break;
34 case 4:printf("%d,%d,%d,%d",thousand,hundred,ten,indiv);
35 printf("\n反序数字为\n");
36 printf("%d%d%d%d",indiv,ten,hundred,thousand);
37 break;
38 case 3:printf("%d,%d,%d",hundred,ten,indiv);
39 printf("\n反序数字为\n");
8、
1 #include<stdio.h> 2 int main() 3{ 4 float score; 5 char grad; 6 printf("enter score:"); 7 scanf("%f",&score); 8 while(score>100||score<0) 9 {printf("enter again:"); 10 scanf("%f",&score); 11 } 12 switch((int)(score/10)) 13 {case 10: 14 case 9:grad='A';break; 15 case 8:grad='B';break; 16 case 7:grad='C';break; 17 case 6:grad='B';break; 18 case 5: 19 case 4: 20 case 3: 21 case 2: 22 case 1:

C 课后习题答案第四章

C  课后习题答案第四章
case 'b' : cout << '$' ; break ;
case 'c' : cout << '*' ; break ;
case 'd' : continue ;
}
cout << '#' << endl ;
}
}
答案:
$#
*#
*#
%
7.#include <iostream.h>
void main()
#include <iostream.h>
#include <stdlib.h>
#include <time.h>
#include <math.h>
int isPrime(int);
void createAry(int[], int);
void outAry(const int[], int);
void main()
cout << f( a, 3, 3 ) << endl ;
}
int f( int a[][3], int row, int col )
{int i, j, t=1 ;
for( i=0; i<row; i ++ )
for( j=0; j<col; j++ )
{a[i][j] ++ ;
if( i == j ) t*= a[i][j] ;
}
void createAry(int a[], int n)
{ srand( time(0) );

《C语言程序设计》第4章习题答案

《C语言程序设计》第4章习题答案

1、选择题(1)C(2)D(3)B(4)D(5)C(6)B(7)B(8)C(9)A(10)C(11)C(12)B 2、填空题(1)①int men[10] ;②float step[4]={1.9,-2.33,0,20.6};③_int grid[4][10] ;(2)①int m[10]={9,4,7,49,32,-5};②0 9③scanf("%d",m[1]);④m[0] =39;⑤m[0] =a[3]+a[5];(3)①3 ②5 ③8 ④8 ⑤9 ⑥12 ⑦9(4)①int a[10]={9,4,12,8,2,10,7,5,1,3}; ②0 9 ③8 8(5)103、程序填空题(1)array[20]20&array[i ]20max=array[i];min=array[i];sum+array[i];sum/20(2)-5.77000021(3)ABCDEFGHIJKLEFGHIJKLABFDEFGHIJKLABFDEFGHI4、程序设计题(1)#define SIZE 100#include<stdio.h>void main(){int a[SIZE+1],i,j;for(i=2;i<=100;i++)a[i]=i;for(i=2;i<=100;i++)for(j=i+1;j<=100;j++)if(a[i]!=0&&a[j]%a[i]==0)a[j]=0;printf("\n");j=0;for(i=2;i<=100;i++){if(a[i]!=0){printf("%-4d",a[i]);j++;}if(j==10){j=0;printf("\n");}}}(2)#define S 14#include"stdio.h"void main(){int a[S][S],i,j,n;printf("please enter n:");scanf("%d",&n);for(i=1;i<=n;i++){a[i][i]=1;a[i][1]=1;}for(i=3;i<=n;i++)for(j=2;j<i;j++)a[i][j]=a[i-1][j-1]+a[i-1][j];for(i=1;i<=n;i++){for(j=1;j<=n-i;j++)printf(" ");for(j=1;j<=i;j++)printf(" %3d",a[i][j]);printf("\n");}}(3)#define SIZE 80#include<stdio.h>void main(){char str1[SIZE+SIZE],str2[SIZE];int i,j;puts("Please enter 2 string:");scanf("%s",str1);scanf("%s",str2);i=0;while(str1[i]!='\0')i++;j=0;while(str2[j]!='\0'){str1[i]=str2[j];i++;j++;}str1[i]='\0';printf("%s\n",str1);}(4)#define SIZE 80#include<stdio.h>#include<string.h>void main(){char string[SIZE];int len,i,j,flag;long number;puts("Please enter a digital string:");scanf("%s",string);len=strlen(string);if(string[0]=='-'){flag=-1;i=1;}else{flag=1;i=0;}number=string[i]-'0';for(i++;i<len;i++)number=number*10+(string[i]-'0');number=flag*number;printf("%d\n",number);}(5)#define SIZE 40#include<stdio.h>void main(){int m,n,i,j;float price[SIZE],sum;printf("\nPlease input M and N:");scanf("%d%d",&m,&n);m=m-n;printf("Please input %d price :",n);sum=0;for(i=0;i<n;i++){scanf("%f",&price[i]);sum=sum+price[i];}printf("Aver are %10.2f.",sum/n);while(m>0){for(i=0;i<n-1;i++)price[i]=price[i+1];printf("\nPlease input one price:"); scanf("%f",&price[n-1]);m--;sum=0;for(i=0;i<n;i++){sum=sum+price[i];}printf("Aber are %10.2f",sum/n);}}。

C语言程序设计习题集第4章 循环结构(答案)

C语言程序设计习题集第4章 循环结构(答案)

第4章循环结构一、选择题1、有以下程序段int k=0;while(k=1)k++;while 循环执行的次数是(A)A)无限次B)有语法错,不能执行C) 一次也不执行D)执行1次2、t为int类型,进入下面的循环之前,t的值为0while(t=1){ …… }则以下叙述中正确的是(B)A) 循环控制表达式的值为0B)循环控制表达式的值为1C) 循环控制表达式不合法D)以上说法都不对3、在C程序中,与while(m)中表达式m完全等价的是(B )A) m==0 B) m!=0 C) m==1 D)m!=14、有以下程序,程序运行后的输出结果是(C).main(){int i=1,sum=0;while(i<=4){sum=sum+i;i=i+1;}printf(“%d\n”,sum);}A)4 B)5 C)10 D)死循环5、有以下程序,程序运行后的输出结果是(D ).main(){int i=1,sum=0;while(i<=4)sum=sum+i;i=i+1;printf(“%d\n”,sum);}A)4 B)5 C)10 D)死循环6、有如下程序main(){int n=9;while(n>6){n-—;printf(“%d",n);}}该程序段的输出结果是(B)A)987 B) 876 C) 8765 D) 98767、以下程序的输出结果是(B)main(){int num= 0;while(num<=2){num++;printf(“%d\n”,num);}}A) 1 B) 1 C)1 D)l2 2 23 348、有以下程序,若运行时输入3.6 2.4<回车〉,则输出的结果是( B)。

main(){float x,y,z;scanf(“%f%f”,&x,&y);z=x/y;while(1){if(fabs(z)>1。

0){x=y;y=z;z=x/y;}elsebreak;}printf(“%f\n”,y);}A)1.500000 B)1.600000 C)2。

c语言程序设计第四版第四章答案谭浩强

c语言程序设计第四版第四章答案谭浩强

第四章什么是算术运算什么是关系运算什么是逻辑运算解:略。

C语言中如何表示“真”和“假”系统如何判断一个量的“真”和“假”解:设有一个逻辑表达式,若其结果为“真”,则以1表示;若其结果为“假”,则以0表示。

但是判断一个逻辑量的值时,以0代表“真”,以非0代表“假”。

例如3&&5的值为“真”,系统给出3&&5的值为1。

写出下面各逻辑表达式的值。

设a=3,b=4,c=5。

(1) a+b>c&&b==c(2) a||b+c&&b-c(3) !(a>b)&&!c||1(4) !(x=a)&&(y=b)&&0(5) !(a+b)+c-1&&b+c/2解:(1) 0(2) 1(3) 1(4) 0(5) 1有3个整数a、b、c,由键盘输入,输出其中最大的数。

解:方法一#include <>main(){ int a,b,c;printf("请输入3个整数:");scanf("%d,%d,%d",&a,&b,&c);if(a<b)if(b<c) printf("max=%d\n",c);else printf("max=%d\n",b);else if(a<c) printf("max=%d\n",c);else printf("max=%d\n",a);}方法二:使用条件表达式,可以使程序更加简明、清晰。

程序如下:#include <>main(){ int a,b,c,temp,max;printf("请输入3个整数:");scanf("%d,%d,%d",&a,&b,&c);temp=(a>b)a:b; /* 将a和b中的大者存人temp中 */max=(temp>c)temp:c; /* 将a和b中的大者与c比较,取最大者*/printf("3个整数的最大数是%d\n”,max);}有一函数:写一程序,输入x值,输出y值。

C程序设计第四版谭浩强_习题&例题第4章

C程序设计第四版谭浩强_习题&例题第4章

第4章例4.1#include<stdio.h>#include<math.h>int main(){double a,b,c,disc,p,q,x1,x2;scanf("%lf%lf%lf",&a,&b,&c);disc=b*b-4*a*c;if(disc<0) printf("This equetion hasn't real roots\n");else{p=-b/(2*a);q=sqrt(disc)/(2*a);x1=p+q;x2=p-q;printf("real root:\nx1=%7.2f\nx2=%7.2f\n",x1,x2);}return 0;}例4.2#include<stdio.h>int main(){float a,b,t;scanf("%f%f",&a,&b);if(a>b){t=a;a=b;b=t;}printf("%5.2f,%5.2f\n",a,b);return 0;}例4.3#include<stdio.h>int main(){float a,b,c,t;scanf("%f,%f,%f",&a,&b,&c);if(a>b){t=a;a=b;b=t;}if(a>c){t=a;a=c;c=t;}if(b>c){t=b;b=c;c=t;}printf("%5.2f,%5.2f,%5.2f\n",a,b,c);return 0;}例4.4#include<stdio.h>int main(){char ch;scanf("%c",&ch);ch=(ch>='A'&&ch<='Z')?ch+32:ch;printf("%c\n",ch);return 0;}例4.5#include<stdio.h>int main(){int x,y;scanf("%d",&x);if(x<0)y=-1;elseif(x==0) y=0;else y=1;printf("x=%d,y=%d\n",x,y);return 0;}#include<stdio.h>int main(){int x,y;scanf("%d",&x);if(x>=0)if (x>0) y=1;else y=0;else y=-1;printf("x=%d,y=%d\n",x,y);return 0;}例4.6#include<stdio.h>int main(){char grade;scanf("%c",&grade);printf("Your score:");switch(grade){case 'A':printf("85~100\n");break;case 'B':printf("70~84\n");break;case 'C':printf("60~69\n");break;case 'D':printf("<60\n");break;default:printf("enter data error\n");}return 0;}例4.7#include<stdio.h>int main(){void action1(int,int),action2(int,int);char ch;int a=15,b=23;ch=getchar();switch(ch){case 'a':case 'A':action1(a,b);break;case 'b':case 'B':action2(a,b);break;default:putchar('\a');}return 0;}void action1(int x,int y){printf("x+y=%d\n",x+y);}void action2(int x,int y){printf("x*y=%d\n",x*y);}例4.8程序1#include<stdio.h>int main(){int year,leap;printf("enter year:");scanf("%d",&year);if(year%4==0){if(year%100==0){if(year%400==0)leap=1;elseleap=0;}elseleap=1;}elseleap=0;if(leap)printf("%d is ",year);elseprintf("%d is not ",year);printf("aleap year!\n");return 0;}程序2#include<stdio.h>int main(){int year,leap;printf("enter year:");scanf("%d",&year);if(year%4!=0)leap=0;else if(year%100!=0)leap=1;else if(year%400!=0)leap=0;else leap=1;if(leap)printf("%d is ",year);elseprintf("%d is not ",year);printf("aleap year!\n");return 0;}程序3#include<stdio.h>int main(){int year,leap;printf("enter year:");scanf("%d",&year);if(year%4==0&&year%100!=0||year%400==0) leap=1;else leap=0;if(leap)printf("%d is ",year);elseprintf("%d is not ",year);printf("aleap year!\n");return 0;}程序4#include<stdio.h>#include<iostream.h>int main(){int year;bool leap;printf("enter year:");scanf("%d",&year);if(year%4==0){if(year%100==0){if(year%400==0)leap=true;elseleap=false;}elseleap=true;}elseleap=false;if(leap)printf("%d is ",year);elseprintf("%d is not ",year);printf("aleap year!\n");return 0;}例4.9#include<stdio.h>#include<math.h>int main(){double a,b,c,disc,x1,x2,realpart,imagpart;scanf("%lf,%lf,%lf",&a,&b,&c);printf("The equation ");if(fabs(a)<=1e-6)printf("is not a quadratic\n");else{disc=b*b-4*a*c;if(fabs(disc)<=1e-6)printf("has two equal roots:%8.4f\n",-b/(2*a));else if(disc>1e-6){x1=(-b+sqrt(disc))/(2*a);x2=(-b-sqrt(disc))/(2*a);printf("has distinct real roots:%8.4f and %8.4f\n",x1,x2);}else{realpart=-b/(2*a);imagpart=sqrt(-disc)/(2*a);printf("has conplex roots:%8.4f\n");printf("%8.4f+%8.4fi\n",realpart,imagpart);printf("%8.4f-%8.4fi\n",realpart,imagpart);}}return 0;}例4.10#include<stdio.h>int main(){int c,s;float p,w,d,f;printf("please enter price,weight,discount:");scanf("%f,%f,%d",&p,&w,&s);if(s>=3000) c=12;else c=s/250;switch(c){case 0:d=0;break;case 1:d=2;break;case 2:case 3:d=5;break;case 4:case 5:case 6:case 7:d=8;break;case 9:case 10:case 11:d=10;break;case 12:d=15;break;}f=p*w*s*(1-d/100);printf("freight=%10.2f\n",f);return 0;}习题1.算术运算符:+正号2 -负号2 *乘法3 /除法3 %求余3 +加法4 -减法4 ++自增2 --自减2用算术运算符和括号将运算对象(也成操作数)连接起来的、符合C语法规则的式子,称为C算术表达式。

C语言程序设计教程第四章练习题解析

C语言程序设计教程第四章练习题解析
4对:在C++中在复合语句中定义变量为合法,但在C语言中就是非法得
12、C语言程序得基本单位就是( )、
A.程序行
B、语句
C、函数
D、字符
答案:C
解析:函数就是C语言程序得基本单位
13、C语言中决定函数返回值得类型得就是()、
A、return语句中得表达式类型
B、调用函数得主调函数类型
C。调用函数时临时
intd=1;
intfun(intp)
{
staticintd=5;
d+=p;
printf("%d ",d);
return d;
}
voidmain()

ﻩint a=3;
ﻩprintf("%d \n",fun(a+fun(d)));

A.699
B、66 9
C、61515
D、6 615
答案:C
解析:首先调用fun(d),将全局变量d=1带入,此时fun()函数内得静态局部变量d得值就是1,d+=p后d得值就是6,输出d得值,返回d得值;
A、当调用时,会调用内部函数
B、当调用时,会调用外部函数
C.当调用时,会调用两次,先调用内部函数再调用外部函数
D、都不调用,会报错
答案:A
解析:当内部函数与外部函数重名时,会优先调用内部函数
6、在C语言中,声明外部函数需要添加得关键字就是()
A、extern
B、static
C、this
D.auto
答案:A

ﻩintd=5;
ﻩd+=p++;
ﻩprintf(”%d”,d);
}

C语言程序设计教程李含光版第4章习题解答

C语言程序设计教程李含光版第4章习题解答
1
{ unsigned int p=0; while(s!=0) { p=p+s%10; s=s/10; } return p; } (2) . #include<stdio.h> #include<stdlib.h> #include<math.h> void f1(float,float,float,float); void f2(float,float,float,float); void f3(float,float,float,float); int main() { float a,b,c,d; scanf("%f %f %f",&a,&b,&c); if(a==0) { printf("不是一元二次方程\n"); exit(0); } d=b*b-4*a*c; if(d>0) f1(a,b,c,d); else if(d==0) f2(a,b,c,d); else f3(a,b,c,d); return 0; } void f1(float a,float b,float c,float d) { float x1,x2; { x1=(-b+sqrt(d))/(2*a); x2=(-b-sqrt(d))/(2*a); printf("%.2f ,%.2f\n",x1,x2); } } void f2(float a,float b,float c,float d)
3
(4) . #include<stdio.h> #define RATE 0.053 double fun(float); void display(float,int); int main() { float dep; int season; scanf("%f %d",&dep,&season); display(dep,season); return 0; } double fun(float d) { return d*RATE; } void display(float d,int s) { int i; printf("季度 利息 余额\n"); printf("-------------------------------\n"); for(i=1;i<=s;i++) { printf("%-4d %-.2f %-.2f\n",i,fun(d),fun(d)*i+d); printf("-------------------------------\n"); } } (5) . #include<stdio.h> double fun(void); int main() { printf("%lf\n",fun()); return 0; } double fun(void) { double s=0; int n=1; while((double)(2*n-1)/((2*n)*(2*n))>1e-4) { s=s+(double)(2*n-1)/((2*n)*(2*n)); n++;

C语言程序设计 练习题参考答案 第四章 (1) 一维数组

C语言程序设计 练习题参考答案 第四章 (1) 一维数组
printf("%4d",a[i]);
printf("\n请输入要插入的整数,输入之后按回车键,如要结束请输入-1\n");
scanf("%d",&x);
}
}
/* 4.15 将十进制数转换成二进制数,并按位存到数组中。(限正整数) */
C语言程序设计 练习题参考答案 第四章 (1) 一维数组
/* 4.11 fibonacci数列,前15项 1,1,2,3,5,。。。。。*/
#include "stdio.h"
void main()
{
int f[15]={1,1}, i;
for(i=2;i<=14;i++) /* 计算 */
f[i]=f[i-2]+f[i-1];
printf("fibonacci数列,前15项\n"); /* 输出 */
for(i=0;i<=14;i++)
{
printf("%5d",f[i]);
if((i+1)%5==0)
for(i=0;i<=9;i++)
printf("%3d",a[i]);
}
/* 4.13 有序数列中插入若干个数,仍然保持有序 */
#include "stdio.h"
void main()
{
int a[100]={1,4,8,10};
int i,k,x,count=4;/* i,k 循环变量, x 输入整数,count 有多少整数*/

C语言程序设计教程第四章练习题解析(1)

C语言程序设计教程第四章练习题解析(1)

单选题1、关于C语言中的函数,下列描述正确的是()A.函数的定义可以嵌套,但函数的调用不可以嵌套B.函数的定义不可以嵌套,但函数的调用可以嵌套C.函数的定义和函数的嵌套均不可以嵌套D.函数的定义和函数的调用均不可以嵌套答案:B解析:函数的定义不可以嵌套,但函数的调用可以嵌套2、定义一个函数:exce((v1, v2), (v3,v4,v5),v6); 在该函数调用时,实参的个数为()个A.3B.4C.5D.6答案:A解析:(v1, v2),(v3,v4,v5)和v6一共三个实参3、关于C语言中print()函数与scanf()函数,下列描述中正确的是()A.printf()函数可以向任何地方输出数据B.printf()只向控制台输出数据C.scanf()只能输入英文字母和数字D.scanf()函数可以识别输入的空格答案:B解析:printf()是向控制台输出的函数4、在C语言中,内部函数需要添加的关键字是()A.externB.staticC.thisD.auto答案:B解析:在定义内部函数时,需要在函数的返回值类型前面添加static关键字(又称为静态函数)。

5、当调用时,会调用内部函数A.当调用时,会调用内部函数B.当调用时,会调用外部函数C.当调用时,会调用两次,先调用内部函数再调用外部函数D.都不调用,会报错答案:A解析:当内部函数与外部函数重名时,会优先调用内部函数6、在C语言中,声明外部函数需要添加的关键字是()A.externB.staticC.thisD.auto解析:声明外部函数的方式是在函数的返回值类型前面添加extern关键字7、关于C语言中的局部变量,下列描述中错误的是()A.局部变量就是在函数内部声明的变量B.局部变量只在函数内部有效C.局部变量只有当它所在的函数被调用时才会被使用D.局部变量一旦被调用,其生存周期持续到程序结束答案:D解析:当函数调用结束时局部变量就会失去作用8、关于C语言中的全局变量,下列描述中正确的是()A.全局变量的作用域一定比局部变量的作用域范围大B.静态类别变量的生存周期贯穿于整个程序的运行期间C.函数的形参都属于全局变量D.未在定义语句中赋初值的auto变量和static变量的初值都是随机值答案:B解析:选项1不对:如果程序中只有一个主函数,则在整个程序运行中,局部变量都在起作用;选项3不对:除了C++的引用类型参数,所有函数的形参都是局部变量;选项4不对:static变量定义时就存储地全局区,初始化为0;9、当全局变量与局部变量重名时,那么在调用时()A.局部变量会被屏蔽B.全局变量会被屏蔽C.都不会调用,系统会报错D.会调用两次,先调用局部变量,再调用全局变量答案:B解析:当局部变量与全局变量重名时,全局变量会被屏蔽。

程序设计基础课后答案第四章

程序设计基础课后答案第四章

4.1 阅读下列程序,写出执行结果1.#include <iostream.h>void main(){ int i, conut=0, sum=0 ;float average ;int a[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 } ;for( i=0; i<10; i++ ){ if( a[i] % 2 == 0 ) continue ;sum += a[ i ] ;conut ++ ;}average = sum / conut ;cout << "conut = " << conut << '\t' << "average = " << average << endl ;}2.#include <iostream.h>void main(){ int a[9] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 } ;int *p = a , sum = 0 ;for( ; p<a+9; p++ )if( *p % 2 == 0 ) sum += *p ;cout << "sum = " << sum << endl ;}3.const int n = 5 ;#include <iostream.h>#include <iomanip.h>void main(){ int a[n][n]={ 0 }, i, j, k ;for( k=1 , i=0 ; i<n ; i++ )for( j=i; j>= 0; j-- , k++ )a[j][i - j ] = k ;for( i=0 ; i<n ; i++ ){ for( j=0; j<n ; j++ )cout << setw( 3 ) << a[i][j] ;cout << endl ;}}4.int f(int [],int);#include <iostream.h>void main(){ int a[] = { -1, 3, 5, -7, 9, -11 } ;cout << f( a, 6 ) << endl ;}int f( int a[], int size ){ int i, t=1 ;for( i=0 ; i<size; i ++ )if( a[i]>0 ) t *= a[i] ;return t;}5.int f( int [][3], int, int ) ;#include <iostream.h>void main(){ int a[][3] = { 0, 1, 2, 3, 4, 5, 6, 7, 8 } ;cout << f( a, 3, 3 ) << endl ;}int f( int a[][3], int row, int col ){ int i, j, t=1 ;for( i=0; i<row; i ++ )for( j=0; j<col; j++ ){ a[i][j] ++ ;if( i == j ) t *= a[i][j] ;}return t ;}6.#include<iostream.h>void test1( int *a1 ){ a1 = new int( 5 ) ;cout << "*a1 = " << *a1 << endl ;}void test2(int * & a2){ a2 = new int( 5 ) ;cout << "*a2 = " << *a2 << endl ;}void main(){ int *p = new int( 1 ) ;test1( p ) ;cout << "test1: *p1 = " << *p << endl ;test2( p ) ;cout << "test2: *p2 = " << *p << endl ;}7.#include <iostream.h>void main(){ char s[] = "abccda" ;int i ; char c ;for( i = 1 ; ( c=s[i] ) != '\0'; i ++ ){ switch( c ){ case 'a' : cout << '%' ; continue ;case 'b' : cout << '$' ; break ;case 'c' : cout << '*' ; break ;case 'd' : continue ;}cout << '#' << endl ;}}8.#include <iostream.h>void main(){ char *str[] = { "c++", "basic", "pascal" } ;char **p ;int i ;p = str ;for( i=0 ; i<3 ; i++ )cout << *( p+i ) << endl ;}9.#include <iostream.h>void main(){ char s1[] = "Fortran" , s2[] = "Foxpro" ;char *p , *q ;p = s1 ; q = s2 ;while( *p && *q ){ if ( *p == *q )cout << *p ;p ++ ;q ++ ;}cout << endl ;}10.#include <string.h>#include <iostream.h>void main(){ char str[][10] = { "vb", "pascal", "c++" }, s[10] ;strcpy( s , ( strcmp( str[0] , str[1] ) < 0 str[0] : str[1] ) ) ;if( strcmp( str[2], s ) < 0 ) strcpy( s, str[2] ) ;cout << s << endl ;}4.2 思考题1.数组说明语句要向编译器提供什么信息?写出一维数组、二维数组说明语句的形式。

C程序设计第四版第四章答案

C程序设计第四版第四章答案

//5.输入一个小于1000的正数,先判断是否小于1000,若小于输出平方根的整数//部分,否则重新输入。

/*#include<stdio.h>#include<math.h>double Proot(double n){double d;if(n>1000){printf("重新输入\n");}else{d=(double)sqrt(n);}return d;}int main(){printf("%.0f\n",Proot(9));printf("%.0f\n",Proot(19));printf("%.0f\n",Proot(1119));return 0;}*///6.当x<1时,y=x,当1<=x<10时,y=2x-1;当x>=10时,y=3x-11.编写程序。

/*#include<stdio.h>double Fun(double x){double y;if(x<1){y=x;}else if(x>=1&&x<10){y=2*x-1;}else{y=3*x-11;}return y;}int main(){printf("%f\n",Fun(0));printf("%f\n",Fun(8.9));printf("%f\n",Fun(11110));printf("%f\n",Fun(-1.5));return 0;}*///7.当x<0时,y=-1,当x=0时,y=0;当x>0时,y=1.编写程序。

/*#include<stdio.h>double Fun(double x){double y;if(x<0){y=-1;}else if(x==0){y=0;}else{y=1;}return y;}int main(){printf("%f\n",Fun(0));printf("%f\n",Fun(10));printf("%f\n",Fun(-0.01));return 0;}*///8.成绩分等级/*#include<stdio.h>void Graded(float g){if(g>=90&&g<=100){printf("A\n");}else if(g>=80&&g<90){printf("B\n");}else if(g>=70&&g<80){printf("C\n");}else if(g>=60&&g<70){printf("D\n");}else if(g<60){printf("E\n");}else{printf("others\n");}}int main(){Graded(98);Graded(198);Graded(68);Graded(58);return 0;}*/#include<stdio.h>void Dengji(char s){switch(s/5){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:case 8:case 9:case 10:case 11:printf("D\n");break;case 12:case 13:printf("C\n");break;case 14:case 15:case 16:printf("B\n");break;case 17:case 18:case 19:case 20:printf("A\n");break;default:printf("error\n");}}int main(){Dengji(100);Dengji(110);Dengji(80);Dengji(40);return 0;}/*9.给一个不多于5位的正整数,求出它是几位数,分别输出每一位数字,按义序输出各位数字*//*#include<stdio.h>int Count(int n){int num;if(n>9999){return num=5;}else if(n>999){return num=4;}else if(n>99){return num=3;}else if(n>9){return num=2;}else{return num=1;}}int Printnum(int n){int wan=n/10000;int thou=(n-wan*10000)/1000;int hund=(n-wan*10000-thou*1000)/100;int shi=(n-wan*10000-thou*1000-hund*100)/10;int ge=n-wan*10000-thou*1000-hund*100-shi*10;printf("%d,%d,%d,%d,%d\n",wan,thou,hund,shi,ge);printf("%d,%d,%d,%d,%d\n",ge,shi,hund,thou,wan);return 0;}//int Orderfan(int n){int main(){printf("%d\n",Count(6789));Printnum(7689);printf("%d\n",Count(89));Printnum(760);return 0;}*///10.分别用if和switch语句编写程序,求应发的奖金总额。

c语言程序设计第四章习题答案

c语言程序设计第四章习题答案

第四章选择结构1:实现输入一个字符的大小写字母的转换#include<stdio.h>void main(){char x='a';printf("输入x:\n");scanf("%c",&x);if( x>='A' && x<='Z'){x=x+32; /*是大写,转换为小写,至于为什么要+32吗,请看看大小写字母的ASCII码差值*/}elseif( x>='a' && x<='z'){x=x-32; /*是小写,转换为大写*/}/*其它不用理*/printf("%c\n",x);}2:输入一个大写字母实现,输出字母表中的前后字母,但是当时A 或是Z时提示输出的“没有前面的字母”,“没有后面的字母”#include<stdio.h>void main(){char x;printf("输入一个大写字母x:\n");scanf("%c",&x);if (x=='A'){printf("没有前面的字母");}if( x=='Z'){ printf("没有后面的字母");}else// (x>'A'||x<'Z'){printf("%c, %c",x-1,x+1);}}3:实现的是对百分制的评等级#include<stdio.h>void main(){float x;printf("请输入学生的成绩x的值\n");scanf("%f",&x);if(x>=90&&x<=100){printf("等级为A ");}else{if (x>=80&&x>=89){printf("等级为B ");}elseif (x>=70&&x<=79){printf("等级为C ");}elseif (x>=60&&x<=69){printf("等级为D ");}else{printf("等级为E ");}}}4:知道今天的日期,年月日,求出明天的年月日#include <stdio.h>int main(){int year,month,day;int maxdays[]={31,28,31,30,31,30,31,31,30,31,30,31};printf("请输入年月日,中间用空格隔开!\n");scanf("%d %d %d",&year,&month,&day);if(year%400==0 || (year%4==0 && year%100!=0)) maxdays[1]=29;//闰年二月最大值是29if(month>12 || month<1){printf("日期不合法!\n");return 0;}if(day>maxdays[month-1]){printf("日期不合法!\n");return 0;}day++;if(day>maxdays[month-1]){day=1;month++;if(month>12){month=1;year++;}}printf("明天的日期是:%d-%d-%d\n",year,month,day);return 0;}5:输入三角形的三条边的长度,判断能否构成三角形,并且判断三角形的形状。

11《C语言程序设计》教案第四章数组(1)—一维数组

11《C语言程序设计》教案第四章数组(1)—一维数组

min_p=j;} printf(“the min is%d,position %d”,min,min_p);
} (5)数组在内存中的存放 例如 int data[3];则在内存中的状态如下:
1000 1002
1004
data[0] data[1] data[2]
讨论、思考题、作业: 实验指导书习题
f[0]=1;f[1]=1;f[2]=f[0]+f[1];f[3]=f[2]+f[1];依次类推找出 公式为: f[i]=f[i-1]+f[i-2]; 循环语句为:for(i=2;i<20;i++) 程序代码: main()
{ int i;
static int f[20]={1,1};
/*定义 20 个元素的数组
参考资料(含参考书、文献等):
叶斌 陈世强. C 语言程序设计. 北京:科学出版社 授课类型:理论课 讨论课□ 实验课□ 练习课□ 其他□ 教学方式:传统授课 双语□ 讨论□ 示教□ 指导□ 其他□ 教学资源:多媒体 模型□ 实物□ 挂图□ 音像□ 其他□
定义了一个二维数组 b,该数组由 9 个元素构成,其中每一个数组元素都属于浮点(实
数)数据类型。
数组
b
的各 个数据元 素依次
是:b[0][0],b[0][1],b[0][2],b[1][0],b[1][1],b[1][2],b[2][0],b[2][1],b[2][2](注意:下标从 0-2)。
每个数组元素也都可以作为单个变量使用。
例如:int a[10]={0,0,0,0,0,0,0,0,0,0}; 或 int a[10];系统会对所有数
组元素自动赋 0 值。
4)在对全部数组元素赋初值时,可以不指定数组长度。

C语言程序设计课堂练习题4-6

C语言程序设计课堂练习题4-6

C语言程序设计课堂练习题(2012-12-26)第4章基本程序设计技术一、选择题1.若有以下程序:main(){ int x=1,a=0;do{a+=1;}while(x,x--);}则语句a+=1;执行的次数是()A. 0B. 1C. 无限次D. 2答案:2.若有以下程序:main(){ int i;f or(i=0;i<3;i++)switch(i){case 1:printf("%d",i);case 2:printf("%d",i);def ault:print f("%d",i);}}执行后输出结果是( )A.011122B. 012C. 012020D.120答案:3.以下程序的输出结果是:main(){ int a=0,i;f or(i=1;i<5;i++){ switch(i){ case 0:case 3:a+=2;case 1:case 2:a+=3;def ault:a+=5;}}printf("%d\n",a)}A. 31B.13C. 10D.20答案:4.若输入字符串:abcde<回车>,则以下while循环体将执行( ) main(){ char ch;while((ch=getchar())!='e')printf("*");}A. 2B. 3C. 无限次D.4答案:5.有以下程序段:int n=0,p;do{scanf("%d",&p);n++;}while(p!=12345&&n<3);此处do-while循环的结束条件是( ).A. p的值不等于12345并且n的值小于3B. p的值等于12345并且n的值大于等于3C. p的值不等于12345或者n的值小于3D. p的值等于12345或者n的值大于等于3 答案:6.以下程序的输出结果是( )main(){int i=0,a=0;while(i<20){ f or(;;){if((i%10)==0) break;else i--;}i+=11;a+=i;}printf("%d\n",a);}A. 21B. 32C. 33D.11答案:7.以下程序的输出结果是( )main(){ int a,b;f or(a=1,b=1;a<=100;a++){if(b>=10) break;if(b%3==1){b+=3;continue;}}printf("%d\n",a);}A. 101B. 6C. 5D.4答案:8.若有以下程序:main(){ int a=15,b=21,m=0;switch(a%3){case 0:m++;break;case 1:m++;switch(b%2){def ault:m++;case 0:m++;break;}}printf("%d\n",m);}执行后输出的结果是( )A. 1B. 2C. 3D.4答案:二、编程题1.编写程序实现一个专家诊断系统。

C语言程序设计教程第四章练习题解析(1)

C语言程序设计教程第四章练习题解析(1)
A.3
B.4
C.5
D.6
答案:A
解析:(v1, v2),(v3,v4,v5)和v6一共三个实参
3、关于C语言中print()函数与scanf()函数,下列描述中正确的是()
A.printf()函数可以向任何地方输出数据
B.printf()只向控制台输出数据
C.scanf()只能输入英文字母和数字
D.scanf()函数可以识别输入的空格
s=2;
else
s=n-fun(n-1);
return s;
}
void main()
{
printf("%ld\n", fun(3));
}
A.1
B.2
C.3
D.4
答案:A
解析:fun()函数传入3时,返回3-fun(2);fun()函数传入2时,返回2。所以fun(3)返回3-2=1。
23、在C语言中,函数的隐含存储类别是()。
12、C语言程序的基本单位是()。
A.程序行
B.语句
C.函数
D.字符
答案:C
解析:函数是C语言程序的基本单位
13、C语言中决定函数返回值的类型的是()。
A.return语句中的表达式类型
B.调用函数的主调函数类型
C.调用函数时临时
D.定义函数时所指定的函数类型
答案:D
解析:函数的返回值取决于定义函数时指定的返回值类型
28、下列程序的输出结果是()。
int b=2;
int func(int *a)
{
b += *a;
return b;
}
void main()
{
int a=2, res=2;

C语言第4章_习题讲解

C语言第4章_习题讲解

1. 若要跳出 switch 结构,应使用 switch (表达式) break 语句。 { case 常量表达式1:语句1 break;
case 常量表达式 2: 语句 2 break; 2.多个case可以共用一组执行语句 …… case 常量表达式n:语句n break; default:语句n+1 }
例如,有函数如下: -1 (x<0) Y= 0 (x=0) 1 (x>0) 编写程序,由键盘输入x的值,屏幕显 示Y的值。
main ( ) main main ( ( )) { int x,y; int x,y; {{ int x,y; scanf("%d",&x); scanf("%d",&x); scanf("%d",&x); if(x<0) if(x!=0) if(x<0) y=-1; y=-1; if (x<0)y=-1; if(x>0) y=1; else if(x>0)y=1; else y=0; y=1; if (x==0) else y=0; y=0; else printf("x=%d,y=%d\n",x,y); printf("x=%d,y=%d\n",x,y); } printf("x=%d,y=%d\n",x,y); } }

语句4
#include<stdio.h> main( ) { int score; scanf(“%d”, &score); if (score>100||score<0) printf(“输入错误”); else if ( score<60) printf(“不及格”); else if ( score <80) printf(“中等”); else printf(“优秀”); }
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

单选题1、关于C语言中的函数,下列描述正确的是()A.函数的定义可以嵌套,但函数的调用不可以嵌套B.函数的定义不可以嵌套,但函数的调用可以嵌套C.函数的定义和函数的嵌套均不可以嵌套D.函数的定义和函数的调用均不可以嵌套答案:B解析:函数的定义不可以嵌套,但函数的调用可以嵌套2、定义一个函数:exce((v1, v2), (v3,v4,v5),v6); 在该函数调用时,实参的个数为()个A.3B.4C.5D.6答案:A解析:(v1, v2), (v3,v4,v5)和v6一共三个实参3、关于C语言中print()函数与scanf()函数,下列描述中正确的是()A.printf()函数可以向任何地方输出数据B.printf()只向控制台输出数据C.scanf()只能输入英文字母和数字D.scanf()函数可以识别输入的空格答案:B解析:printf()是向控制台输出的函数4、在C语言中,部函数需要添加的关键字是()A.externB.staticC.thisD.auto答案:B解析:在定义部函数时,需要在函数的返回值类型前面添加static关键字(又称为静态函数)。

5、当调用时,会调用部函数A.当调用时,会调用部函数B.当调用时,会调用外部函数C.当调用时,会调用两次,先调用部函数再调用外部函数D.都不调用,会报错答案:A解析:当部函数与外部函数重名时,会优先调用部函数6、在C语言中,声明外部函数需要添加的关键字是()A.externB.staticC.thisD.auto答案:A解析:声明外部函数的方式是在函数的返回值类型前面添加extern关键字7、关于C语言中的局部变量,下列描述中错误的是()A.局部变量就是在函数部声明的变量B.局部变量只在函数部有效C.局部变量只有当它所在的函数被调用时才会被使用D.局部变量一旦被调用,其生存周期持续到程序结束答案:D解析:当函数调用结束时局部变量就会失去作用8、关于C语言中的全局变量,下列描述中正确的是()A.全局变量的作用域一定比局部变量的作用域围大B.静态类别变量的生存周期贯穿于整个程序的运行期间C.函数的形参都属于全局变量D.未在定义语句中赋初值的auto变量和static变量的初值都是随机值答案:B解析:选项1不对:如果程序中只有一个主函数,则在整个程序运行中,局部变量都在起作用;选项3不对:除了C++的引用类型参数,所有函数的形参都是局部变量;选项4不对:static变量定义时就存储地全局区,初始化为0;9、当全局变量与局部变量重名时,那么在调用时()A.局部变量会被屏蔽B.全局变量会被屏蔽C.都不会调用,系统会报错D.会调用两次,先调用局部变量,再调用全局变量答案:B解析:当局部变量与全局变量重名时,全局变量会被屏蔽。

10、在C语言中,关于变量的作用域,下列描述中错误的是()A.局部变量只在整个函数的运行周期中有效B.全局变量的作用域为整个程序的运行周期C.当全局变量与局部变量重名时,局部变量会屏蔽掉全局变量D.全局变量会覆盖掉所有与它重名的局部变量答案:D解析:当全局变量与局部变量重名时,全局变量会被屏蔽掉11、在C语言中,如果在一个函数的复合语句中定义了一个变量,则该变量()A.只在该复合语句中有效,在该复合语句外无效B.在该函数中任何位置都有效C.在本程序的原文件围均有效D.此定义方法错误,其变量为非法变量答案:D解析:1、2与3错:函数复合语句中定义的变量在该复合语句中引用;但如果函数含有该变量,则在函数中可以引用该变量4对:在C++中在复合语句中定义变量为合法,但在C语言中是非法的12、C语言程序的基本单位是()。

A.程序行B.语句C.函数D.字符答案:C解析:函数是C语言程序的基本单位13、C语言中决定函数返回值的类型的是()。

A.return语句中的表达式类型B.调用函数的主调函数类型C.调用函数时临时D.定义函数时所指定的函数类型答案:D解析:函数的返回值取决于定义函数时指定的返回值类型14、若有函数调用语句:fun(a+b, (x,y), fun(n+k,d,(a,b))); 在此函数调用语句中实参的个数是()。

A.3B.4C.5D.6答案:A解析:a+b返回一个值,(x,y)返回一个值,fun(n+k,d,(a,b))返回一个值。

15、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是()。

A.input x,y,z;B.scanf("%d%d%d",&x,&y,&z);C.scanf("%d%d%d",x,y,z);D.read("%d%d%d",&x,&y,&z);答案:B解析:读取键盘输入的数据要用scanf()函数,scanf()中的参数要传入变量的地址16、若变量已正确说明为float类型,要通过语句 scanf("%f %f %f",&a,&b,&c); 给a赋予10.0,b赋予22.0,c赋予33.0,不正确的输入形式是()。

A.10 22 33B.10.0,22.0,33.0C.10.0 22.0 33.0D.10; 22; 33答案:B解析:用scanf()读取从键盘输入的数据时,中间不能加逗号,要用空格隔开17、若有定义:int x,y; char a,b,c; 并有以下输入数据(此处\u代表空格):1\u2\uA\uB\uC,那么能给x赋整数1,给y赋整数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是()。

A.scanf("x=%d y=%d",&x,&y);a=getchar();b=getchar();c=getchar();B.scanf("%d %d",&x,&y);a=getchar();b=getchar();c=getchar();C.scanf("%d%d%c%c%c,&x,&y,&a,&b,&c);D.scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&c);答案:D解析:空格也会作为一个字符赋给字符变量。

18、对嵌套子程序调用说确的是()。

A.外层子程序可以调用所有的层子程序B.层子程序只可以调用包含本身的外层子程序,不可以隔层调用C.外分程序必须能完全套住分程序D.以上说法均不正确答案:C19、C语言中函数能否嵌套调用和递归调用?()A.二者均不可B.前者可,后者不可C.前者不可,后者可D.二者均可答案:D解析:两者调用都可以20、C语言规定,程序中各函数之间()。

A.既允许直接递归调用也允许间接递归调用B.不允许直接递归调用也不允许间接递归调用C.允许直接递归调用不允许间接递归调用D.不允许直接递归调用允许间接递归调用答案:A解析:各程序间既可以直接调用也可以间接调用。

21、有如下程序:long fib(int n){if (n>2)return fib(n-1)+fib(n-2);elsereturn 2;}void main(){printf("%d\n",fib(3));}该程序的输出结果是()。

A.2B.4C.6D.8答案:B解析:向fib()函数传入3时,返回fib(1)+fib(2)的值;向fib()函数传入1和2时,都返回2,所以fib(3)返回2+2=4。

22、以下程序的输出结果是()。

long fun(int n){long s;if (n==1 || n==2)s=2;elses=n-fun(n-1);return s;}void main(){printf("%ld\n", fun(3));}A.1B.2C.3D.4答案:A解析:fun()函数传入3时,返回3-fun(2);fun()函数传入2时,返回2。

所以fun(3)返回3-2=1。

23、在C语言中,函数的隐含存储类别是()。

A.autoB.staticC.externD.无存储类别答案:C解析:为简化编程,C语言中允许在定义外部函数时省略关键字extern。

24、以下叙述中不正确的是()。

A.在不同的函数中可以使用相同名字的变量B.函数中的形式参数是局部变量C.在一个函数定义的变量只在本函数围有效D.在一个函数的复合语句中定义的变量在本函数围有效答案:D解析:函数的复合语句中定义的变量仅仅在该复合语句中有效。

25、以下程序运行后,输出结果是()。

int func(int a, int b){static int m=0,i=2;i+=m+1;m=i+a+b;return m;}void main(){int k=4,m=1,p;p=func(k,m);printf("%d,",p);p=func(k,m);printf("%d\n",p);}A.8,15B.8,16C.8,17D.8,8答案:C解析:函数体的静态局部变量不随函数的调用结束而销毁,而是一直存在。

26、以下程序的输出结果是()。

int d=1;int fun(int p){static int d=5;d+=p;printf("%d ",d);return d;}void main(){int a=3;printf("%d \n",fun(a+fun(d)));}A.6 9 9B.6 6 9C.6 15 15D.6 6 15答案:C解析:首先调用fun(d),将全局变量d=1带入,此时fun()函数的静态局部变量d的值是1,d+=p后d的值是6,输出d的值,返回d的值;然后调用fun(a+6),将局部变量a=3带入,此时fun()函数的静态局部变量d的值是6,d+=p后d赋值15,输出d的值,返回d的值。

27、在C语言中,若需一变量只在本文件中所有函数使用,则该变量的存储类别是()。

A.externB.registerC.autoD.static答案:D解析:static修饰全局变量时,表示该变量仅在本文件中可使用。

28、下列程序的输出结果是()。

int b=2;int func(int *a){b += *a;return b;}void main(){int a=2, res=2;res += func(&a);printf("%d\n",res);}A.4B.6C.8D.10答案:B解析:func()函数中,对全局变量b自增a的值,func()函数返回4;res+=4,res赋值为6。

相关文档
最新文档