C语音上机南开题答案(3)

2019-01-12 15:33

68.填空题 正确:if(k>=i) 【1】break; . 编程题

【2】i++ void fun (int a[3][3], 【3】′ \\0′ int b[3][3]) . 改错题

{ (1)错误:while(i>j) int i,j;

正确:while(i

正确:*c='\0'; b[i][j]=a[i][j]+a[j][i]; . 编程题

/*把矩阵a 加上a 的转置,存放在 void fun(int m, int *k, int xx[]) 矩阵b 中*/ {

}

int i,j,n=0; 71.填空题 for(i=4;i

【1】j=0,--I /*找出大于1 小于整数m 的非素数*/ 【2】j++,i-- {for(j=2;j

if(i%j==0) break; (1)错误:fun(int m) if(j

} (2)错误:for(i=100,i<=m,i+=100) *k=n;

正确:for(i=100;i<=m;i+=100) /*返回非素数的个数*/ . 编程题

}

double fun(STREC *a, STREC *b, 69.填空题 int *n) 【1】i {

【2】g*g*g==i int i,j=0; . 改错题

double av=0.0; (1)错误:fun(char *s, int num[5]) for(i=0;i

正确:switch(*s) if(a[i].s

/*将低于平均值的学生记录存入结构 void fun(char p1[],char p2[]) 体b 中*/ { *n=j;

int i,j;

/*指针传回低于平均值的学生人数*/

for(i=0;p1[i]!='\\0';i++); /*求出的i 为p1 return av; 字符串的总长度,包括结束标记位*/ /*返回平均值*/ for(j=0;p2[j]!='\\0';j++) }

p1[i++]=p2[j];

72.填空题 /*将p2 字符串连在p1 字符串后面*/ 【1】aa[i]%2==0 p1[i]='\\0';

【2】i

(1)错误:i=1; 70.填空题 正确:i=0;

【1】j=i 或j=i+2 (2)错误:while(i<3||*p) 【2】aa[i]>aa[j] 正确:while(i<3&&*p) . 改错题

(3)错误:b[k]= ' '; (1)错误:if(i%k!=0) 正确:b[k++]=' '; 正确:if(i%k==0) . 编程题

(2)错误:if(k

void fun(int (*s)[10], int *b,

int *n, int mm, int nn) {

int i,j,k=0; for(i=0;i

/*将二维数组s 中的数据按行的顺序 依次放到一维数组b 中*/ for(j=0;j

/*通过指针返回元素个数*/ }

73.填空题

【1】void fun(char s[],int n) 【2】j=0

【3】s[j]= ′ \\0′ . 改错题

错误:int fun(int x, y) 正确:int fun(int x,int y) . 编程题

void fun(char *a,char *p) {

char *t=a; for(;t<=p;t++) if(*t!='*') *(a++)=*t;

/*将p 以前有不是星号的字符保留下来*/ for(;*t!='\\0';t++) *(a++)=*t;

/*将p 以后的所有星号保留下来*/ *a='\\0';

/*在字符串最后加上结束标记位*/ }

74.填空题 【1】N-1

【2】bb[n++]=aa[i] 【3】i,bb[i] . 改错题

(1)错误:fun( int n) 正确:double fun( int n) (2)错误:c=a;a+=b;b+=c; 正确:c=a;a+=b;b=c; . 编程题

int fun (STREC *a, STREC *b, int l, int h ) {

int i,j=0; for(i=0;i

if(a[i].s>=l&&a[i].s<=h) /*将分数高于l,低于h 的学生记录 存于结构体数组b 中*/ b[j++]=a[i];

return j;

/*返回分数范围内的学生人数*/ }

75.填空题 【1】i

【2】s[j]=s[i] . 改错题

(1)错误:fun(double a,double x0) 正确:double fun(double a,double x0) (2)错误:if(fabs(x1-x0)>0.00001) 正确:if(fabs(x1-x0)>=0.00001) . 编程题

void fun(char a[M][N],char *b) {

int i,j,k=0; for(i=0;i

/*将字符串数组中的M 个字符串,按顺 序存入一个新的字符串*/ for(j=0;a[i][j]!='\\0';j++) b[k++]=a[i][j]; b[k]='\\0';

/*在字符串最后加上结束标志符*/ }

76.填空题 【1】&n 【2】t*I 【3】s+t . 改错题

(1)错误:return 1; 正确:return 3; (2)错误:return 3 正确:return 1; . 编程题

int fun(int a[], int n) {

int i,j=1; for(i=1;i

/*若该数与前一个数不相同,则要保留*/ a[j++]=a[i]; return j;

/*返回不同数的个数*/ }

77.填空题 【1】b!=0 【2】a%b; 【3】n*m/a . 改错题

(1)错误:if n= =0 正确:if (n= =0) (2)错误:result*=n- -

正确:result*=n- - ; . 编程题

void fun(int *a, int *b) { int i,j;

for(j=0;j

b[j]=0; /*数组b 初始化为0*/ for(i=0;i=100) b[10]++;

/*如果年龄大于等于100,b[10]自增1*/ else

b[a[i]/10]++;

/*如果年龄小于100,则将其分别统计 到b[a[i]/10]中*/ }

78.填空题 【1】bb[i][j]=0 【2】1 【3】j==n-1-i . 改错题

(1)错误:if k>0 正确:if (k>0)

(2)错误:else if(k=0) 正确:else if(k==0) . 编程题

int fun(char *s) {

int i,j=0;

for(i=0;s[i]!='\\0';i++) if(s[i]!=' '&&(s[i+1]==' '|| s[i+1]=='\\0'))

/*如果一个字母的下一个字符为空格或 者结束标记,则表示一个单词结束*/ j++; return j; /*返回单词个数*/ }

79.填空题 【1】N 【2】M 【3】bb[i]/N . 改错题

错误: for(i=0,str[i],i++) 正确:for(i=0;str[i];i++) . 编程题

void fun(char *a) {

int i,j=0;

for(i=0;a[i]!='\\0';i++) if(a[i]!='*')

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

/*若不是要删除的字符'*'则留下*/ a[j]='\\0';

/*最后加上字符串结束符'\\0'*/ }

80.填空题 【1】a*10+*p-'0' 【2】b*10+*p-′0′ 【3】ch . 改错题

(1)错误: t=1.0-1/i; 正确:t-=1.0/i; (2)错误: ; 正确:return t; . 编程题

STREC fun(STREC *a, char *b) { int i;

STREC str={\

/*若没找到指定的学号,在结构体变 量中给学号置空串,给成绩置-1*/ for(i=0;i

if(strcmp(a[i].num,b)==0) /*找到指定学号的学生数据*/ str=a[i]; return str; /*返回学生记录*/ }

81.填空题 【1】flag=1 【2】flag=0 【3】aa[k++]=i . 改错题 错误:c=aa[i]; 正确:ch=aa[i]; . 编程题

double fun(int n) { int i; double s=0.0; for(i=1;i<=n;i++) s=s+1.0/(i*(i+1)); /*求级数的和*/ return s; }

82.填空题

【1】strlen(str1)

(1)错误: int fun(int n,int xx[][])

正确:int fun(int n,int xx[][M]) (2)错误:printf(\正确:printf(\. 编程题

void fun(int a ,int b,long *c) {

*c=a*1000+b/10*100+a/10*10+ b;

/*将a 数的十位和个位数依次放在c 数的十位和千位上,b 数的十位和 个位数依次放在c 数的百位和个位上*/ }

83.填空题 【1】break 【2】′ \\0′ 【3】*p++ . 改错题

(1)错误:int d; 正确:long d; (2)错误:if(d%2=0) 正确:if(d%2==0) (3)错误:s\=10; 正确:s/=10; . 编程题

void fun(char *s,char t[]) {

int i,j=0,k=strlen(s); /*k 为字符串的长度*/ for(i=1;i

/*将s 所指字符串中下标为奇数的 字符存入t 所指字符串中*/ t[j++]=s[i]; t[j]='\\0';

/*在字符串最后加上结束标志*/ }

84.填空题 【1】p=str 【2】p[i]++ 【3】s[i]= ′ \\0′ . 改错题 (1)错误:k++ 正确:k++ ; (2)错误:if(m=k) 正确:if(m= =k) . 编程题

void fun(char *s, char t[]) { int i=0;

for(;*s!='\\0';s++)

/*找出ASCII 值为奇数的字符依次 存入数组t 中*/

if(*s%2==1) t[i++]=*s; t[i]='\\0';

/*在字符串的末尾加上串结束符*/ }

85.填空题 【1】j>i

【2】bb[j]=bb[j-1] 【3】break . 改错题

错误:c[t]= \\0\正确:c[t]= '\0'; . 编程题

fun(STU a[], STU *s) { int i; *s=a[0];

/*先认为第1 个值最小*/ for(i=0;i

/*如果在循环的过程中再发现比第1 个 值更小的则赋给*s*/ if(s->s>a[i].s) *s=a[i]; }

86.填空题

【1】i==0||i==n-1||j==0||j==n-1 【2】bb[i][j]=0 . 改错题 错误: 缺{ 正确:加{ . 编程题

float fun (float *a, int n) {

float av=0.0; int i;

for(i=0;i

return (av/n); /*返回平均值*/ }

87.填空题

【1】str1[i]!=' ' 【2】i++ . 改错题

(1)错误:int fun(int n) 正确:float fun(int n) (2)错误:for(i=2;i

void fun (char *a) {

while(*a!='\\0') a++; a--;

/*指针a 指向字符串的尾部*/ while(*a=='*') a--;

/*指针a 指向最后一个字母*/ *(a+1)='\\0';

/*在字符串最后加上结束标志位*/ }

88.填空题 【1】array 【2】*(*(p+i)+j) . 改错题

(1)错误: result*=- -n; 正确:result*=n- -; (2)错误: return; 正确:return result; . 编程题

double fun(STREC *h) {

double av=0.0; STREC *p=h->next;

/*p 直接指向\头结点\的下一个结点,即第一个成绩*/ while(p!=NULL)

{av=av+p->s; /*求总分数*/ p=p->next; }

return av/N; /*返回平均值*/ }

89.填空题

【1】\【2】str[i]!='*' 【3】\. 改错题

错误: printf(\正确:printf(\. 编程题

double fun(double x[10]) {

double x1=0.0,s=0.0; int i;

for(i=0;i<10;i++) x1=x1+x[i]; x1=x1/10;

/*求10 个数的平均值*/ for(i=0;i<10;i++) s=s+(x[i]-x1)*(x[i]-x1); return sqrt(s/10); /*求10 个数的方差*/

}

90.填空题 【1】bb[i]=0

【2】bb[i]+=score[i][j] . 改错题

(1)错误:缺少语句 正确:应填入nose 或n (2)错误:缺少语句 正确:应填入[d] . 编程题

double fun (STREC *a,STREC *b, int *n) { int i;

double av=0.0; *n=0;

for(i=0;i

{ b[*n]=a[i];*n=*n+1;}

/*将高于等于平均分的学生存入b 所 指存储单元中,并统计人数*/ return av; /*返回平均分*/ }

91.填空题 【1】i

(1)错误:s[j]=s[i]; 正确:s[j++]=s[i]; (2)错误:s[i]= '\\0'; 正确:s[j]= '\\0'; . 编程题

double fun(int n) { int i; double s=0.0; for(i=1;i<=n;i++)

s=s+(1.0/(2*i-1)-1.0/(2*i)); /*计算S=(1-1/2)+(1/3-1/4)+…+ (1/(2n-1)-1/2n)*/ return s; }

92.填空题 【1】sum=0 【2】sum+=n 【3】ld

. 改错题

{

(1)错误:void fun(int a) char *p=a;

正确:int fun(int *a) while(*p=='*') p++;

(2)错误:a[j]=a[j+1]; /*指针p 指向字符串第一个字母*/ 正确:a[j]=a[j-1]; for(;*p!='\\0';p++,a++) . 编程题

*a=*p;

double fun(int m) /*从第一个字母开始,其后的字符 { 都放入指针a 所指的字符串中*/ int i; *a='\\0';

double s=0.0; /*在字符串最后加上结束标记符*/ for(i=1;i<=m;i++) }

s=s+log(i);

95.填空题 /*计算s=ln(1)+ln(2)+ln(3) 【1】&&

+…+ln(m)*/ 【2】fputc(ch,fp1) return sqrt(s); 【3】fclose(fp) /*对s 求平方根并返回*/ . 改错题

}

(1)错误:while(t>=num) 93.填空题 正确:while(fabs(t)>=num) 【1】&n (2)错误:t=s%n; 【2】i=1 或i=2 正确:t=s/n; 【3】f*=i . 编程题

. 改错题

void fun(char *a,int n ) (1)错误:for(i=0;i<=3;i++) { int i=0, k=0; 正确:for(i=1;i<=3;i++) char *p, *t; (2)错误:if(k>=1&&k<=6) p=t=a;

正确:

/*开始时,p 与t 同时指向数组的首地址*/

if((k>=1&&k<=6)&&(i!=0)&&(j!=0)||(k==0)) while(*t=='*') . 编程题

/*用k 来统计前部星号的个数*/ double fun(double x, int n) {k++; t++;} { if(k>n)

int i;

/*如果k 大于n,则使p 的前部保留n 个星 double s=1.0,s1=1.0; 号,其后的字符依次存入数组a 中*/ for(i=1;i<=n;i++) { while(*p) {s1=s1*i; {a[i]=*(p+k-n); /*各项中的阶乘*/ i++; s=s+pow(x,i)/s1; p++; /*按公式求出*/ }

}

a[i]='\\0';

return s; /*在字符串最后加上结束标志位*/ }

} 94.填空题 }

【1】xx[i] 96.填空题 【2】bb[n++]=xx[i] 【1】flag=1 【3】n 【2】j%i==0 . 改错题

【3】flag==1 (1)错误:for(i=1;i

正确:for(i=1;i<=y;i++) (1)错误:double fun(double q) (2)错误:t=t/1000; 正确:double fun(int q) 正确:t=t00; (2)错误:s=s+(n+1)/n; . 编程题

正确:s=s+(double)(n+1)/n; void fun (char *a)

(3)错误:return s;

正确:return t; . 编程题

double fun(int n) { int i;

double s=0.0,s1=0.0; for(i=1;i<=n;i++) { s1=s1+i;

/*求每一项的分母*/ s=s+1.0/s1;

/*求S=1+1/(1+2)+1/(1+2+3)+…+ 1/(1+2+3+…+n)*/ } return s; }

97.填空题 【1】*p1<*p2 【2】*p1>*p2 【3】′\\0′ . 改错题

(1)错误:fun(int k) 正确:double fun(int k) (2)错误:return s 正确:return s ; . 编程题

double fun(int n) { int i;

double s=0.0,s1=0.0; for(i=1;i<=n;i++) {s1=s1+pow(i,0.5); /*求每一项*/ s=s+s1;

/*按公式求出s*/ } return s; }

98.填空题 【1】i

【2】p->next=s 【3】p->next . 改错题

(1)错误:f(double x) 正确:double f(double x) (2)错误: return s 正确:return s ; . 编程题

void fun (char a[ ], char b [ ], int n) {

int i,k=0;

for(i=0;a[i]!='\\0';i++) if(i!=n)

/*将不是指定下标的字符存入数组b 中*/ b[k++]=a[i]; b[k]='\\0';

/*在字符串最后加上结束标记*/ }

99.填空题

【1】″out99.dat″, ″w″ 【2】fputc(ch,fp) 【3】fclose(fp) . 改错题

(1)错误:#define FU(m,n) (m/n) 正确:#define FU(m,n) (m)/(n) (2)错误:return(Value); 正确:return (value); . 编程题

unsigned fun(unsigned w) {

if(w>=10000) return w000;

/*求出n 位整数w 的后n-1 位的数*/ if(w>=1000) return w00; if(w>=100) return w0; if(w>=10) return w; }

100.填空题 【1】x>y 【2】x>z 【3】y>z . 改错题

(1)错误:int i,j,k,sum; 正确:int i,j=0,k,sum; (2)错误:if(sum%4=2) 正确:if(sum%4= =2) (3)错误:return j; 正确:return j++; . 编程题

float fun (float h ) { long t;

t=(h*1000+5)/10;

/*单精度数h 乘以1000 后再加5,相 当于对h 中的第三位小数进行四舍 五入除以10 后将其赋给一个长整 型数时就把第三位小数后的数全 部截去*/

return (float)t/100; /*除以100,保留2 位小数*/ }__


C语音上机南开题答案(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:环保、水保管理办法

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: