有以下程序
# include <stdio.h>
# define N 5
# define M N+1
# define f(x) (x*M)
main()
{ int i1, i2;
i1 = f(2) ;
i2 = f(1+1) ;
printf("%d %d\n", i1, i2);
}
程序的运行结果是
A)12 12
B)11 7
C)11 11
D)12 7
答案 B
解析:根据宏替换的替换规则,我们可知,f(2)=2*N+1=2*5+1=11,f(1+1)=1+1*N+1=1+1*5+1=7 。因此本题的选项为 B 。
以下程序的输出结果是( )。f(int b[],int m,int n){int i,s=0;for(i=m;i<n;i=i+2)s=s+b[i];return s;}void main(){int x,a[]={1,2,3,4,5,6,7,8,9};x=f(a,3,7);printf("%d\n",x);}A.10 B.18 C.8 D.15
有以下程序 #include <stdio.h> #define N 5 #define M N+1 #define f(x) (x*M) main() {int i1,i2; i1=f(2); i2=f(1+1); printf("%d%d\n",i1,i2); } 程序的运行结果是
A.12 12
B.11 7
C.11 11
D.12 7
1 . 默认情况下,不属于E x c e l 已定义填充序列的有( ) 。
A .A ,B ,C ,D ,E ,F ,G
B .M O N ,T U E ,W E D ,T H U ,F R l ,S A T
C . S U N D A Y , M O N D A Y , T U E S D A Y , W E D N E S D A Y , T H U R S D A Y , F R I D A Y , S A T — U R D A Y
D .星期日,星期一,星期二,星期三,星期四,星期五,星期六
2 0 .进行键盘输入的大小写转换的控制键是( ) 。
A .C a p s l o c k
B .S h i f t
C .N u m l o c k
D .A I t
混凝土结构设计原理课后答案5(最新版)7-1已知矩形截面柱mm h ,mm b 400300=。计算长度0l 为3m ,作用轴向力设计值kN N 300=,弯矩设计值m kN M ?=1251、m kN M ?=1502混凝土强度等级为C30,钢筋采用HRB335级钢,设计纵向钢筋s A 及sA 的数量。习题7-1属于偏心受压构件按非对称配筋的截面设计。【解题要点】(1) 材料强度和几何参数C30混凝土,f c=14.3HRB335级钢筋,f y=f y=300,b =0.55,a s = a s =40,h 0=360(2) 求弯矩设计值M 1/M 2=125/150=0.85,N /f c bh =300000/(14.3300400)=0.17524/123497.255.115/3000/5.115121210=-=M M i l mm h A I i 应考虑纵向挠曲影响()0.198.003.1/1300195.00.1,0.186.22020取=? ?+= ns m c a ns m c C h l e N M h C ? 取1.0M =M 2=150(3) 计算i e ,判别大小偏心受压mm 3.1330/mm 20a =h emm,500/0=?=N M emm 1083.0mm 5200=?=h e i故按大偏心受压构件设计。 (4) 计算s A补充条件:55.0b =mm 6802s =-+= a h e e i22s 0y b b 20c 1mm 240002.0mm 185)()5.01(=-=-=bh a h f bh f Ne A s =308)(5) 按已知As =308求s A314.0)(20c 10s =-= bh f a h f A Ne s y s ,55.039.0211b s =22y 0c 1mm 240002.0mm 1316=-+=bh f Nf A bh f A y s s 全部钢筋22s s mm 720006.0mm 1624=+bh A A满足受压构件纵筋的最小配筋率的两项要求。(6)配筋。)mm 6032=)mm 13882=,符合净距不小于50mm 的要求。(6)垂直M 作用平面受压承载力验算。大偏心受压,垂直M 作用平面方向的受压承载力一般满足要求,无需验算? 7-2已知条件与题7-1相同,但受压钢筋已配有416的HRB335级钢筋的纵向钢筋。设计s A 数量。 习题7-2属于已知受压钢筋s A ,计算受拉钢筋s A 的情况。【解题要点】由习题7-1的判断知,可先按大偏心受压构件计算。由式(7-7)变形为:228.0)(20c 10s =-= bh f a h f A Ne s y s ,55.0262.0211b s =mm 802s 0=a h x ,由式(7-6): 2y y s 0c 1s mm 1153=-+= f Nf A bh f a A 2min mm 240=bh 且总纵向受力钢筋22s s mm 720006.0mm 1957=+bh A A)mm 11402=比较7-1知,增大受压筋会使总用钢量加大!7-6已知条件同题7-1,设计对称配筋的钢筋数量。 习题7-6属于偏心受压构件按对称配筋的截面设计问题。【解题要点】:由条件知及N N h e =b 0i ,mm 1083.0mm 520 ,应按大偏心受压构件设计。()20s c 1112536080mm 802mm 70m m a h f Ne A A e x a bf a N x s y ss =-= 取总钢量为22s mm 720006.0mm 2250=?=+bh A A s)mm 12562s =A 用钢量比7-2 大!7-7已知矩形截面柱mm b ,mm h 400600=,计算长度m l 60=,柱上作用轴向力设计值kN N 2600=,弯矩设计值m kN M M ?=18021,混凝土强度等级为C30,钢筋为HRB400钢筋。设计使用年限为50年,构件的环境类别为二a 。设计对称配筋的钢筋数量,并验算垂直弯矩作用平面的抗压承载力。 习题7-7属于偏心受压构件按对称配筋的截面设计问题(小偏压)。【解题要点】:(1) 材料强度和几何参数C30混凝土,f c=14.3HRB400级钢筋,f y=f y=360,b =0.518,a s = a s =45,h 0=555(2) 求弯矩设计值M 1/M 2=1.0,N /f c bh =0.7622/123434/2.173121210=-=M M i l mm h A I i 应考虑纵向挠曲影响()0.132.132.1/130010.10.166.02020 =? ?+=ns m c a ns m c C h l e N M h C ? 取1.32M =237.6(3) 计算i e ,判别大小偏心受压mm 2030/mm 20a =h emm,4.91/0=?=N M emm 1653.0mm 4.1110=?=h e i故为小偏心受压构件设计。 (3)计算。mm 4.3662s i =-+= a h e e 由式(7-34):72.0= 可见082.12b 1b =-(4)计算)(s s A A ,配筋。22020c 1s mm 480002.0mm 767)()5.01(=-=bh a h f bh f Ne A A s y s 取全部钢筋2s s mm 13200055.015342=+bh A A A s满足附表9-1对受压构件纵筋的最小配筋率的两项要求。选用配筋为每侧318)mm 763(2s =s A A(5)M 作用平面外受压承载力验算。895.012,15/0=-=?=?得查表,b lkN N A f A f N 2600)2(9.0c s y u =+= ?故垂直M 作用平面方向的受压承载力满足要求。 7-11已知工字形截面柱尺寸如下图所示,计算长度m l 60=,轴向设计值kN N 650=,弯矩设计值m kN M M ?=2.22621。设计使用年限为50年,构件的环境类别为一类。混凝土强度等级为C30,钢筋为HRB335级钢。设计对称配筋的数量。 习题7-11属于工作截面对称配筋的截面设计。【解题要点】(1) 材料强度和几何参数C30混凝土,1f c=14.3HRB335级钢筋,f y=f y=300,b =0.55,a s = a s =40,h 0=660(2) 求弯矩设计值工形截面特征参数:118720mm 2483f f 3f y mm 10735.7712)2)(12?=-= h h b b h b I mm 89.255yy = A I iM 1/M 2=1.0,N /1f c A =0.38220.112344.23/y 0=?-= i l应考虑纵向挠曲影响()0.11.11.1/130010.10.10.131.12020 =? ?+=ns m c a ns m c C h l e N M h C ?取 取1.1M =248.8(3) 计算i e ,判别大小偏心受压mm 3.2330/a =h emm,383/0=?=N
有以下程序 #include <stdio.h> #define N 5 #define M N+1 #define f(x) (x*M) main() { int i1,i2; i1=f(2) i2=f(1+1); printf("%d %d\n",i1,i2); } 程序的运行结果是______。
A.12 12
B.11 7
C.11 11
D.12 7
编写函数jsValue,它的功能是:求Hofstadter数列中的第m项H(m)(m<1000),结果由函数返回。其中数列H(n)的定义为:
H(1)=H(2)=1
H(n)=H(n-H(n-1))+H(n-H(n-2))(n>2)
最后调用函数writeDat()读取50个数据m,分别得出结果且把结果输出到文件out.dat中。
例如:当t=997时,函数值为605。
部分源程序已给出。
请勿改动主函数main()和写函数writeDat()的内容。
include<stdio. h>
int jsValue(int m)
{
main ( )
{
int m;
m=300;
printf ("m=%d, k-%d\n", m, jsValue (m));
writeDat ( );
writeDat ( )
{
FILE *in, *out;
int i,m,s;
in= fopen ( "in. dar" , "r" );
ut=f open ( "out. dar" , "w" );
for (i=0; i<50; i++) {
fscanf (in, "%d", &m);
s=jsValue (m);
printf( "%d\n", s );
fprintf (out, "%d\n" , s );
}
fclose (in);
fclose (out);
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写函数fun(),该函数的功能是:把高于等于平均分的学生数据放在b所指的数组中,低于平均分的学生数据放在c所指的数组中,高于等于平均分的学生人数通过形参n传回,低于平均分的学生人数通过形参m传回,平均分通过函数值返回。
注意:部分源程序给出如下。
请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
试题程序:
include <stdio.h>
define N 12
typedef struct
{char num[10];
double S;
} STREC;
double fun(STREC *a,STREC *b,STREC *C,int *n,int *m)
{
}
main()
{
STREC s[N]={{“GA05”,65},{“GA03”,86},
{“GA02”,76},{“GA04”,95},{“GA01”,93},
{“GA07”,78},{“GA08”,68},{“GA06”,88},
{“GA09”,60},{“GAll”,54},{“GAl2”,56},
{“GAl0”,98}};
STREC h[N],l[N],t;
FILE *out;
int i,j,m,n;
double ave;
ave=fun(S,h,l,&n,&m);
printf("The %d student data which is higher than %7.3f:\n",n,ave);
for(i=0;i<n;i++)
printf("%s %4.lf\n",h[i].num,
h[i].s);
printf("\n");
printf("The %d Student data which iS lower than%7.3f:\n",m,ave);
for(i=0;i<m;i++)
printf("%s %4.1f\n",l[i].num, l[i].s);
printf("\n");
ut=fopen("out26.dat", "w");
fprintf(out, "%d\n %7.3f\n",n,ave);
for(i=0;i<n-1;i++)
for(j=i+1;i<n;j++)
if(h[i].s<h[j].s)
{t=h[i];h[i]=h[i];h[j]=t;}
/*分数从现到低排列*/
for(i=0;i<n; i++)
fprintf(out,“%4.1f\n",h[i].s);
fprintf(out,"%d\n %7.3f\n",m,ave);
for(i=0;i<m-1;i++)
for(j=i+1;i<m;j++)
if(l[i].s<l[j].s)
{t=l[i];l[i]=l[j];l[j]=t;}
/*分数从高到低排列*/
for(i=0;i<m;i++)
fprintf(out,"%4.1f\n",l[i].s);
fclose(out);
}
有下列程序:
#include<stdi0.h>
#include”strin9.h”
typedefstruct{charname[9];charsex;floatscore
[2];}STU;
voidf(STUa)
{
STUb={"Zha0",'m',85.0,90.0);inti;
strcpy(a.name,b.name);
sex=b.sex;
for(i=0;i<2;i++)a.score[i]=b.score[i];
}
voidmain( )
{
STUc={"Qian",'f',95.0,92.0);
f(c);
printf("%s,%c,%2.Of,%2.Of\n",C.name,C.sex,
score[O],C.score[1]);
}
程序的运行结果是( )。
A.Qian,f,95,92
B.Qian,m,85,90
C.Zha0,f,95,92
D.Zha0,m,85,90
阅读下列函数说明和C代码,填入(n)处。
[说明]
以下C语言程序实现了生成从里到外是连续的自然数排列的回旋矩阵,矩阵形式如下:
7 6 5 16
8 1 4 15
9 2 3 14
10 11 12 13
程序的变量说明如下:
x1:矩阵上边界;
x2:矩阵下边界;
y1:矩阵左边界;
y2:矩阵右边界;
s:数组元素升降标记,s等于1为升,s等于-1为降;
a[]:存放矩阵元素的数组。
仔细阅读C语言程序源码,将(n)处的语句补充完整。(注:每处仅一个语句)
[C程序]
include<stdio.h>
void main ( )
{
const int N=20;
int i=0,j=0,a[N][N],n;
int m,x1,x2,y1,y2,s;
while (1)
{
Printf ("\ninput matrix row N( N>=2): ");
scanf ("%d",&n);
printf ("\n");
if (n>=2)
break;
}
m=n*n;
x1=0; y1=0; x2=n; y2=n;
if(n%2==0)
{j=n-1; y2=n-1; s=1;}
else
{i=n-1; y1=1; s=-1; }
while (1)
{
if (s==1)
{
for (i; i<x2; i++) a[i][j]=m--;
i--;
j--;
(1)
for (j;j>=y1;j--) a[i][j]=m--;
j++;
i--;
y1++;
(2)
}
else
{
for (i;i>=x1;i--)
a[i][j]=m--;
i++;
j++;
(3)
for (j;j<y2;j++)
(4)
(5)
i++;
(6)
S=i;
}
if (m<1) break;
}
for (i=O;i<n; i++)
{
for (j=O;j<n;j++)
printf ("%6d",a[i][j]);
printf ("\n");
}
printf ("\n");
}