- 设x为char型变量,且初值为 'f',则执行printf("%c\n", 'A'+(x-'a'+1));后的输出结果是 ( )。
- 若有char test; 将大写字母B赋给变量test,则语句中正确的是( )。
- 程序的输出结果是( )main(){int i;for(i=1;i<=5;i++){if(i%2)printf("#");else continue;printf("*");}printf("$\n");}
- 语句:printf("%d",(a=2) && (b=-2));的输出结果是( )。
- 程序的输出结果( )main(){int x=3;do{printf("=",x-=2);}while(--x);}
- 设有定义语句“int (*ptr)[10];”,其中的ptr是( )。
- 程序的输出结果是( )#include
main(){int i=0,a=0;while(i<20 for(;;) {if((i)= break;else i--;}i+=11; a+>
答案:32
- 设a=5,b=6,c=5,d=8,m=2,n=2,执行 (m=a>b)&&(n=c>d) 后n的值为( )。
答案:0
- 主调函数中要实现交换两个整型变量的值,应该调用4个函数中的( )。
答案:void fun_c (int *x, int *y){ *x=*x+*y;*y=*x-*y; *x=*x-*y; }
- 选项中,两个条件语句语义等价的是( )。
答案:if(a-2)printf("%d\n",a); if(a==2)printf("%\n",a); if(a!=2)printf("%\n",a);
- 为表示关系x≥y≥z,应使用C语言表达式( )。
答案:(x>=y)&&(y>=z)
- 变量a所占内存字节数是( )。union U{ char st[4];int i;long l;};srruct A{ int c;union U u;}a;
- 程序段用于构成一个简单的单向链表,划线处应填( )。 struct STRU { int x; int y; float rate; struct STRU *p; }a,b,*pa=&a; a.x=0; a.y=0; a.rate=0;(); b.x=0;b.y=0;b.rate=0;b.p=NULL;
- 若有 int t=10; 则执行语句printf("%o,%d,%x",t,t,t); 输出的结果是( )。
- 已知 int x=10,y=20,z=30,则执行 if (x>y) z=x;x=y;y=z; 语句后,x、y、z 的值是( )。
- 已知char ch;则putchar(ch)可以实现ch变量的输出。( )
- 下面的程序用来将一个十进制正整数转化成八进制数,例如输入一个正整数25,则输出31,应填入划线处的选项是( )。#include
int main( ){ int i=0,j=0,a,b[10 ]={0};printf("Enter an integer:"); scanf("%d",&a);sub(a,b);for(;i<10 i++) {if() j=1; if(j! b[i]); } return 0;}void sub(int c,int d[ ]){ int e,i=9;while(c! e=c%8; d[i]> - 若有int *p; 则表示*p为指针变量( )
- power(2,3)函数为计算2的三次方的幂函数。( )
- 执行下面的程序后,a的值为( )main(){int a,b;for(a=1,b=1;a<=100;a++){if(b>=20)break;if(b%3==1) {b+=3; continue; }b-=5;}}
- 若要说明一个类型名ST,使ST s 等价于 char *s,则正确的typedef语句是( )。
- 定义变量:int n=10;则循环的输出结果是( )while(n>7){n--;printf("%d\n",n);}
- 程序的功能是:求正整数n的各位之积,在划线处应填入( )。#include
long func(long m){ long k=1; do { k*=m; m/=10; } while (_____); return (k); }int main( ){ long n; scanf("%ld",&n); printf("%ld\n",func(n));return 0; } - 能正确表示a和b同时为正或同时为负的逻辑表达式是( )
- 与scanf("%d",&a);等价的语句是( )。
- 下面的程序,正确的说法是( )。 #include
int main( ) { int x=3,y=0,z=0; if (x=y+z) printf("* * * *"); else printf("# # # #"); return 0; } - 程序的输出结果( )main(){int n=0;while(n++<=1) printf("%d\t",n);printf("%d\n",n);}
- 将整数变量a和浮点类型变量b,按照“12,3.14“格式写入文件指针fp所指的文件中的语句为( )。
- 已知x=43,ch='A',y=0,则表达式(x>=y&&ch<'B'&&!y)的值是( )
- 程序段如下int k=0;while(k++<=2); printf("last=%d\n",k);则执行结果是last=( )
- 下面程序的功能是( )。#include
#include main(){ char a[]="clanguage",t; int i,j,k; k=strlen(a); for(i=0;i<=k-1;i+=1) for(j=i+1;j a[j]) {t=a[i];a[i]=a[j];a[j]=t;} puts(a); printf("\n"); } - 若有类型声明:typedef struct NODE { int num; struct NODE *next;} OLD;叙述正确的是( )。
- 为了避免嵌套的if-else语句的二义性,C语言规定else总是与( )组成配对关系。
- 下面有关for循环的正确描述是( )
- 若有float x; 则执行printf("%d",(int)x)语句以后, x的类型为int型( )
- C语言的源程序中必须包含库函数。( )
- C语言中函数返回值的类型由return语句中的表达式的类型决定。( )
- 程序的输出结果是( )。main(){ char p1[]="abcd",p2[]="efgh",str[50]="ABCDEFG"; strcat(str,p1); strcat(str,p2); printf("%s",str); }
- 假设有如下语句:enum num{zero,first,second}a;int b;关于变量赋值,不正确的是( )。
- 若有函数max(a,b),并且已使函数指针变量p指向函数max,当调用该函数时,正确的调用方法是_______( )。
- 若有定义,则*(p+5)的值为( )。char s[]=”Hello”, *p=s;
- 若程序中定义函数float myadd(float a, float b){ return a+b;} 并将其放在调用语句之后,则在调用之前应对该函数进行说明。说明中正确的是( )。
- 下面程序的输出结果是( )。#include
int main(){ int x=3; int *p=&x; (*p)+=5; printf("%d",x); return 0;} - 有语句:int a[10],;则是对指针变量p的正确定义和初始化( )。
- 若有说明语句“int a[5],*p=a;”,则对数组元素的正确引用是( )。
- 若有类型声明: typedef struct{ int a; int b;}c;这正确的语句是( )。
- 下面程序的输出结果是( )#include
int main(){ int a=2, b=7, c=5,k; k=a>0; switch(k) { case 1: switch(b<0 xss=removed> - 下面程序的功能是( )。main(){ char s[ ]="father"; int i,j=0; for(i=1;i内容已经隐藏,点击付费后查看s[i]) j=i; printf("%c,%d\n",s[j],j+1); }
- 在使用求根公式法解一元二次方程时,需要用到的数学函数为( )。
- 若有类型声明: struct NODE { int num; struct NODE *next;} OLD;叙述正确的是( )。
- 若有int *p=(int *)malloc(sizeof(int));则向申请到内存空间存入整数123的语句为( )。
- 下面程序的输出结果是( )。#include
int main(){ char t1='g',t2='G'; t1=t1-'a'+'A'; t2=t2-'A'+'a'; printf("%c,%c\n",t1,t2); return 0;} - 程序输出a数组中的最小值及其下标,在划线处应填入的是( )。main( ){ int i,p=0,a[10]; for(i=0;i<10 a[i]); for(i=1;i>
- 程序的输出结果是( )。 func( int x) { int p;if(x==0 || x==1) return (3); p=x-func(x-2);return p; } int main( ) { printf("%d\n",func(9)); return 0;}
- 关于函数叙述中,正确的是( )。
- 4个变量定义中,定义p为二级指针的是( )。
- 下面程序的运行以后的结果是( )。main(){ char a[]="clanguage",t; int i,j,k; k=strlen(a); for(i=0;i<=k-1;j+=1) for(j=i+1;j
a[j]) {t=a[i];a[i]=a[j];a[j]=t;} puts(a); printf("\n"); } - 若有程序:void fun(float*a,float*b)( float w;*a=*a+*a;w= *a;*a= *b;*b=w;}int main(){ float x=2.0,y=3.0,*px=&x,*py=&y;fun(px,py);printf(”%.0f,%.0f\n”,x,y);return 0;)程序的输出结果是( )。
- 若有共用体定义:union utepy{ int i; char ch;}temp;当执行"temp.i=266;"语句后,temp.ch的值是( )。
- fp为文件型指针,正确的定义是( )。
- 在程序中,while循环的循环次数是( )main( ){ int i=0; while(i<10 if(i<1) continue; if(i= >
- 能正确计算1×2×3×…×10的程序段是( )
- C语言程序中的main( )函数必须放在程序的开始部分。( )
- 若当A的值为奇数时,表达式的值为"真",A的值为偶数时,表达式的值为"假",则下面不能满足要求的表达式是( )。
- 关于函数的叙述中正确的是( )。
- 若i,j已定义为int型,则]程序段中循环体的总的执行次数是( )for(i=5;i;i--) for(j=0;j内容已经隐藏,点击付费后查看
- 程序输出的结果是( ) 。 #include
main( ) { char str[ ]="1a2b3c"; int i; for(i=0;str[i]!='\0';i++) if(str[i]<'0' || str[i]>'9') printf("%c",str[i]); printf("\n"); } - 设在主函数中有定义和函数调用语句,且fun函数为void类型;正确的fun函数的首部应为( )(要求形参名为b)。 int main() { double s[10][22]; int n; ∶ ∶ fun(s); ∶ ∶return 0; }
- 若已定义的函数有返回值,则关于该函数调用的叙述中正确的是:( )
- 若有int x; float y; double z;则表达式的值为4的是( )。
- 4个变量定义中,定义p为指针数组的是( )。
- 有函数fun(char *a,char *b) { while((*a!='\0')&&(*b!='\0')&&(*a==*b)) { a++;b++; } return(*a-*b); }该函数的功能是( )。
- 条件表达式中能完全等价于条件表达式if(x)的是( )。
- 有如下程序int a[10]={1,2,3,4,5,6,7,8,9,10},*P=a;则数值为9的表达式是( )。
- 程序的输出结果是( )。main(){ char s[]={"12134211"}; int v[4]={0,0,0,0},k,i; for(k=0;s[k];k++) { switch(s[k]) { case '1':i=0;break; case '2':i=1;break; case '3':i=2;break; case '4':i=3; } v[i]++; } for(k=0;k内容已经隐藏,点击付费后查看
- 对于变量定义int a; float b;语句scanf("-%*c%f",&a,&b);在运行时输入123c4.678,则b获得的值为( )。
- 关闭文件的操作函数为( )。
- 在C语言中,全局变量的存储类别是:( )
- 设有数组定义:char array[]="China";则strlen(array)的值为( )。
- 运行下面程序时,从键盘输入"1605
",则输出结果是( )#include int main( ){ int t,h,m; scanf("%d",&t); h=(t/100); if (h==0) h=12; printf("%d:",h); m=t0; if (m<10 xss=removed> - 若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式为( )。
- 符合C语言语法的实型常量是( )。
- 程序的功能是:按顺序读入10名学生的4门课程的成绩,计算出每位学生的平均分并输出,程序如下:main(){int n,k;float score,sum,ave;sum=0.0;for(n=1;n<=10;n++){for(k=1;k<=4;k++){scanf("%f",&score);sum+=score};}ave=sum/4.0;printf("NO%d:%f\n",n,ave);}}程序有一条语句出现在程序的位置不正确。这条语句是( )
- 若有说明:int n=2,*p=&n,*q=p,则非法的赋值语句是( )。
- 若有 int x=9; float y; 则执行语句y=x/4; 输出的结果是( )。
- 定义结构体数组:struet St{char name[15];int age;)a[10]={”ZHANG”,14,”WANG”,15,”LIU”,16,”ZHANG”,17);执行语句printf(”%d,%c”,a[2].age,*(a[3].name+2))的输出结果为( )。
- 已知int a=010, b=0x10, c=10;则printf("%d,%d,%d\n",a,b,c);的输出结果为( )。
- 设有类型说明 enum color {red,yellow,black=100,blue },则执行语句: printf(“%d”, yellow);输出结果是( )。
- 若有定义:struct link{ int 有int;struck link *next;}a,b,c,*p=&a,*q=&c;且变量a和b之间已有如下图所示的链表结构:a bdata next data next┌──┬──┐ ┌──┬──┐│ 5 │ ──> │ 9│ 0 │└──┴──┘ └──┴──┘则能够把c插入到a和b 之间并形成新的链表的语句组是_______( )。
- 程序段如下int k=0; while(k++<=2) printf("%d\n",k);则执行结果是( )
- 对结构变量stul中成员age的非法引用是( )。struct student{ int age; int num;}stu1,*p;p=&stu1;
- 程序的功能是:将无符号八进制数字构成的字符串转换为十进制整数。例如,输入的字符串为:556,则输出十进制整数366,划线处应填( )。#include
main(){ char s[6]; int n,j; gets(s); if(s[0]!='\0') n=s[0]-'0'; j=1; while(s[j++]!='\0') ____; printf("%d\n",n); } - 对于变量定义char ch='\\141';请问语句printf("%c",ch);的输出结果为( )。
- 程序段( )x=-1; do { x=x * x;} while(!x);
- 假设有结构体定义如下:struct Date { int month; int day; int year; }; struct Stu { int num;char name[20]; char sex;int age; struct Date birthday; }a; int year ;语句中,错误的语句是( )。
- 若有定义语句:char s[100],d[100]; int j=0,i=0; ,且s中已赋字符串,实现将字符串s中的内容拷贝到字符串d中,划线处语句为( )。(注意:不得使用逗号表达式) while(s[i]) { d[j]=__; j++; } d[j]=0;
- 对于变量定义int a; float b;语句scanf("-%f",&a,&b);在运行时输入1235.6,则a获得的值为( )。
- 程序的输出结果是( )。 struct HAR { int x; int y; struct HAR *p; }h[2]; int main() { h[0].x=1; h[0].y=2; h[1].x=3; h[1].y=4; h[0].p=&h[1]; h[1].p=h; printf("%d%d\n",(h[0].p)->x,(h[1].p)->y); }
- 设有数组定义:char array[]='China';则数组array所占的存储空间为( )。
- 程序执行后的输出结果是( ) 。(设a[0][0] 是数组a中的第1个元素) #include
main( ) { int a[4][5]={1,2,4,8,10,-1,-2,-4,-8,-10,3,5,7,9,11}; int i,j,n=9; i=n/5; j=n-i*5-1; printf("NO. %d: %d,%d is %d\n",n,i,j,a[i][j]); } - 程序执行后的输出结果是( )。main(){ int i,j,a[3][3]; for(i=0;i<3 i++) for(j=0;j i;j++) a[i][j]=i*j; printf(>
- 如果c为字符型变量,空格字符的ASCII码为十进制数32,判断c是否为空格不能使用( )。
- 执行下面的程序段后,变量k中的值为( )。int k=3,s[2];s[0]=k; k=s[1]*10;
- 不正确的定义是( )。
- 23.5E3为合法的浮点型常量( )
- unsigned char型变量的取值范围为:-27~27-1( )
- 在C语言中,一个函数一般由两个部分组成,它们是函数首部和函数体。( )
- 输出sin30度的值对应代码为:printf("\tsin(%lf)=%lf\n",30,sin(30));。( )
- 若有定义float x;则为变量x在内存中分配的字节数是4( )
- 函数的函数体可以是空语句。( )
- 假设有结构体定义如下:struct student{ int num; char name[20]; char coursename[20]; }stu1= ={1001,"李芳","C语言程序设计"},stu2;语句中,正确的语句是( )。
- 已知char ch;则getchar(ch)可以实现ch变量的输入。( )
- 当输入为"quert?"时,下面程序的执行结果是( )#include
main(){char c;c=getchar();while((c=getchar())!='?') putchar(++c);} - 设有以下定义语句:int a[3][2]={10, 20, 30, 40, 50, 60}, (*p)[2];p=a;则 *(*(p+2)+1)的值为 ( )。
- 程序有语法性错误,有关错误原因的正确说法是(C)int main(){ int G=5,k;void prt_char();…… k=prt_char(G); ……}
- 有以下程序#include
int main(){ int m=1,n=2,*p=&m,*q=&n,*r; r=p;p=q;q=r; printf("%d,%d,%d,%d\n",m,n,*p,*q); return 0;}程序运行后的输出结果是_( )。 - 有以下程序段int main(){ int a=5,*b,**c; b=&a;c=&b; …… return 0;}那么表达式**c的值是_( )。
- 设有char *a= "ABCD"; 则printf("%s",a)的输出是;而printf("%c",*a)的输出是( )。
- 设有变量定义struct stu{ int age; int num;}std,*p=&std;能正确引用结构体变量std中成员age的表达式是( )。
- 下列程序的输出结果是( )struct abc{ int a; int b; int c;};int main(){struct abc s[2]={{1,2,3},{4,5,6}};int t;t=s[0].a+s[1].b;printf("%d\n",t);return 0;}
- 变量a所占的内存字节数是【数据类型以Visual C++系统为例】( )struct stu{char name[20];int n;int score[4];} a ;
- 设有以下说明语句 struct ex { int x;float y;char z; } example; 则下面的叙述中不正确的是( )。
- 有如下定义 struct person{ char name[9]; int age; }; struct person calss[4]={ "Johu",17, "Paul",19, "Mary",18, "Adam",16,};根据以上定义,能输出字母M的语句是( )。
- 设有如下的函数 ggg(x) float x; {printf("\n%d",x*x);}则函数的类型( )。
- 有如下函数调用语句 func(rec1,rec2+rec3,(rec4,rec5));该函数调用语句中,含有的实参个数是( )
- 在调用函数时,如果实参是数组名,它与对应形参之间的数据传递方式是( )。
- 现有如下程序 #include "stdio.h" int fun(int x) { printf("x=%d\n",++x); } int main() {fun(12+5);return 0;} 则程序的输出结果是( )
- 以下给字符数组str定义和赋值正确的是( )。
- 当接受用户输入的含有空格的字符串时,应使用函数( )。
- 以下对二维数组a进行正确初始化的是( )。
- 以下定义语句中,错误的是( )。
- 在定义int a[5][4]; 之后,对a的引用正确的是( )。
- for语句中的表达式可以部分或全部省略,但两个 不可省略。但当三个表达式均省略后,因缺少条件判断,循环会无限制地执行下去,形成死循环。( )
- 在do-while循环中,循环由do开始,用while结束;必须注意的是:在while表达式后面的 不能丢,它表示do-while语句的结束。( )
- while循环语句中,while后一对圆括号中表达式的值决定了循环体是否进行,因此,进入while循环后,一定有能使此表达式的值变为 的操作,否则,循环将会无限制地进行下去。( )
- 程序段如下int k=1;while(!k==0) {k=k+1;printf("%d\n",k);}说法正确的是 。( )
- 程序段如下int k=-20;while(k=0) k=k+1;则以下说法中正确的是 。( )
- 设a=1,b=2,c=3,d=4,则表达式a
- 设x,y,z,t均为int型变量,则执行以下语句后,t的值为( )x=y=z=1;t=++x || ++y && ++z;
- 假定所有变量均已正确说明,下列程序段运行后x的值是( )a=b=c=0; x=35;if (!a) x--;else if (b);if (c) x=3;else x=4;
- 设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中值为0的表达式是( )
- 若k是int型变量,则下面程序片段的输出结果是( )k=8;if (k<=0) if (k==0) printf("####") else printf("&&&&");else printf("****");
- 下面程序的输出结果是( )。#include
int main(){ int m=5, n=2, x;x=-m++;x=x+4/++n;printf("%d\n",x);return 0;} - 若 int t=3,则下列选项中不正确的赋值语句是( )。
- 若有 int t=5; 则执行语句 t*=t+=3;后,t的值是( )。
- 若有int x; 则执行x=24.2%3后的x值为8。( )
- 以下程序运行后的输出结果是( )。#include
int main(){ int t=012; printf("%d\n",++t;) return 0;} - 可实现输出“| 20| 30|”的语句是( )。
- 设有char ch; 与语句“ch=getchar();”等价的语句是( )。
- 能实现输出“|China | 30.13|”的语句是( )。
- 可实现输出“比例值为20%”的语句是( )。
- 阅读程序#include
int main(){ int i,j; float x,y; scanf("%f,%f",&i,&j); scanf("%f,%f",&x,&y); printf("i=%d,j=%d",i,j); printf("x=%f,y=%f",x,y); return 0;}如果从键盘上输入 32,18<回车> 12.5,-4.3<回车>则程序的运行结果是() - C语言源程序的语句分隔符是( )。
- 下列叙述中,正确的是( )。
- C编译程序是( )。
- 一个C语言程序的执行是从( )。
- 编辑程序的功能是( )。
答案:G
答案:test=66;###test='B';
答案:#*#*#*$
答案:1
答案:1
答案:一个指向具有10个元素的一维数组的指针
温馨提示支付 ¥5.00 元后可查看付费内容,请先翻页预览!