9512.net
甜梦文库
当前位置:首页 >> IT认证 >>

第七届C语言预赛试题4


第七届全国信息技术应用水平大赛模拟题 C 语言程序设计
注:试卷满分 150 分,完成时间 180 分钟。此模拟题仅供参考,具体题型、题量与分值分配以实际预赛题 为准。

单选题(共 60 题,每题 1 分,共 60 分)
1. 下列符号串中,属于 C 语言合法标识符的个数为( _1_2_3,a-b-c,float,9cd,a3b4 A:1 B:2 C:3 D:4 2. 下列能为字符变量 a 赋值的是:char a=_____( A:'ab' B:"a" C:‘\0' D:"\0" 3. 在下列字符序列中,合法的标识符是( A:P12.a B:stud_100 C:$water.1 D:88sum 4. 下列用于 printf 函数的控制字符常量中,代表 tab 的字符常量是( A:'\b'(退格) B:'\t'(水平制表) C:'\r'(回车) D:'\f'(换页) 5. 下列用于 printf 函数的控制字符常量中,代表退格的字符常量是( A:'\b' B:'\t' )。 )。 )。 )。(字符变量赋值用单引号) )。

C:'\r' D:'\n' 6. 如有以下程序:unsigned int a=6; int b=-20; char c; c=(a+b>6); 则 c 的值为( )。(C 的值为 1 或 0) A:6 B:-14 C:1 D:0 7. 关于 C 语言,以下不正确的叙述是( )。

A:在 C 语言程序设计中,逗号运算符的优先级最低(对) B:在 C 语言程序设计中,var 和 VAR 是两个相同的变量(对) C:C 语言也支持重载(对) D:此处的两个语句 int a; 8. 若有定义: a=-13.06; 在程序编译中将会提示出错(错,a=-13)

int a=2,*p; float x=1, y=2; char e=‘w’; )。

则以下用法不正确的是(

A:printf("%c",e+a);(对) B:p=&x;(对) C:a *=y+x;(错) D:x=y=e;(对,都是‘w’) 9. int x=20; printf("%d\n",~x); 以上程序片段的输出是( A:235 B:-21(~是按位取反符号) C:-20 D:-11 10. 在 C 语言中,要求运算数必须是整型的运算符是( A:/ )。 )。

B:++ C:!= D:%(只有整形数据可以取整) 11. 若有定义:int a=7;float x=2.5,y=4.7;则表达式 x+a%3*(int)(x+y)%2/4 的值是(结果保留两位小数) ( )。 A:2.50(int 后的值为 0) B:2.75 C:3.50 D:0.00

注:* ,/,%,的优先级一样
12. 以下运算符中优先级最低的是( A:&&(逻辑与运算符,11) B:&(按位与运算符,8) C:||(逻辑或运算符,12) D:|(按位或运算符,10) 13. 设有定义语句:char c1=1,c2=1;,则以下表达式中值为零的是( A:c1^c2(值为 0) B:c1&c2(值为 1) C:~c2(值为-2) D:c1|c2(值为 1) 14. 以下程序的输出结果是 #include <stdio.h> void main() { unsigned char a,b; a=0x0a|3; b=0x0a&3; printf("%d %d\n",a,b); } ( )。 A:2 11 )。 )。

B:11 2 C:7 13 D:13 7 15. 如果 int i = 4, 则 printf("%d", -i-- )的输出结果是( A:-4 B:-3 C:-3 D:-4 3(--I,输出结果为 3) 3 4 4 )。 ),i 的值是( )。

16. 若 x=2,y=3 则 x&y 的结果是( A:1 B:2 C:3 D:5 17. 下列程序的输出是( )。 main() {int x;,

printf("%d\n",(x=3*5 ,x*2,x+10));} A:15 B:25(15+10=25) C:30 D:40 18. 若 x,i,j 和 k 都是 int 型变量,则计算下面表达式后,x 的值为( )。 x=(i=4,j=16,k=32) A:4 B:16 C:32(输出最后一个) D:其他值 19. 假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是( A:7 B:8(a=2,b=5+1,a+b=2+5=8) )。

C:6 D:2 20. 以下程序运行后的输出结果是( main() {int a,b; a=50;b=90; printf("%d\n",(a,b)); } A:90(输出后一个) B:50 90 C:50 D:其他 21. 以下程序的运行结果是( )。 void main() { int a=4; char ch=‘a’; printf( "%d\n",(a&2)&&(ch>‘A’)); } A:0 B:1 C:2 D:3 22. 以下程序的输出是:( )。 #include <stdio.h> main( ) { int i,j=4; for(i=j; i<=2*j; i++) switch (i/j) { case 0 : case 1: printf("*"); break; )。

case 2: printf("#"); break; } } A:*### B:**## C:***# D:****# 23. 有如下程序片段: int i = 0; while(i++ <= 2); printf("%d", i--); 则正确的执行结果是: ( A:2 B:3 C:4 D:以上都不是 24. 有以下程序段 main() { int i=1,sum=0,n; scanf(“%d”,&n); do { i+=2; )。

sum+=i ; }while(i!=n); printf(“%d”,sum); } 若使程序的输出值为 15,则应该从键盘输入的 n 的值是 ( A:1 B:3 C:5 )。

D:7 25.

以下程序的输出是( #include<stdio.h> void fun(int *p) { int a=10; p=&a; ++a; }

)。

void main() { int a=5; fun(&a); printf("%d\n",a); } A:5 B:6 C:10 D:11 26. 以下关于函数的说法中正确的是 ( )。

A:定义函数时,形参类型说明可放在函数体内 B:return 语句后边的值不能为表达式 C:如果函数类型与返回值类型不一致,以函数类型为准 D:如果形参与实参的类型不一致,以实参为准 27. 已知有定义:int *p(); 则以下说法正确的是 ( A:指向 int 型的指针变量 B:int 型的指针数组 )。

C:一个函数,该函数的返回值是指向 int 型的指针变量 D:一个指向函数的指针变量,该函数的返回值为 int 型 28. 若有如下程序: void s(char *m,int n) { *m=*m+3;n=n+3; printf("%c,%c,",*m,n); } void main() { char p=‘b’,q=‘B’; s(&q,p); printf("%c,%c\n",p,q); }则程序运行后的输出结果是 ( A:E,e,b,E B:e,E,b,F C:E,e,e,E D:e,E,b,E 29. C 语言规定函数返回值的类型由 ( )。 )。

A:在定义时所指定的函数类型所决定 B:调用该函数时的主调函数类型所决定 C:return 语句中的表达式类型所决定 D:调用该函数时系统临时决定 30. 要在 c 语言中求正弦 30 度的值,可以调用库函数,可用格式为 ( A:sin(30) B:sin(30.0) C:sin((double)30) D:sin(3.1415/6) 31. 在 C 语言程序设计中,简单变量作为实参时,它和对应形参之间的数据的传递方式是 ( A:地址传递 )。 )。

B:单向值传递 C:由实参传给形参,再由形参传给实参 D:由用户指定传递方式 32. 以下程序的输出为( )。

int a=2; int f(int *a) { return(*a)++; } void main() { int s=0; {int a=5; s+=f(&a); } s+=f(&a); printf("%d %d\n",a,s); } A:2 7 B:2 10 C:3 7 D:3 11 33. 以下程序输出结果是( )。 #include <stdio.h> int *fun() { int a[4],k; for(k=0;k<4;k++)a[k]=k; return(a); }

void main() { int *p,j; p=NULL; p=fun(); for(j=0;j<4;j++){printf("%d\n",*p);p++;} } A:输出 0 0 0 0 B:输出 0 1 2 3 C:输出 1 1 1 1 D:输出不确定值 34. 以下程序的运行结果是( )。 void fun(int *n) { static int m=2; *n*=m-1; m+=2; } void main() { static int m=1; int i; for(i=1;i<4;i++) fun(&m); printf("%d\n",m); } A:8 B:10 C:11 D:15 35. 下面对 typedef 的叙述中不正确的是 ( )。

A:用 typedef 可以定义各种类型名,但不能用来定义变量

B:typedef 和#define 都是在预编译时处理的 C:用 typedef 只是将已存在的类型用一个新的标识符来代表 D:使用 typedef 有利于程序的通用和移植 36. 要使用内存分配函数 malloc,需要引入的头文件是 ( A:stdio.h B:stdlib.h C:malloc.h D:memory.h 37. 以下宏定义中,不会引起二义性的宏个数为( 1)#define POWER(x) x*x 2) #define POWER(x) (x)*(x) 3) #define POWER(x) (x*x) 4) #define POWER(x) ((x)*(x)) A:1 个 B:2 个 C:3 个 D:4 个 38. 若有二维数组定义语句:int a[4][5]; 则下面对元素 a[2][3]不正确的引用方式是( A:*(&a[2][3]) B:*(a+5*2+3) C:*(a[2]+3) D:*(*(a+2)+3) 39. 若二维数组定义为 a[m][n],则在 a[i][j]之前的元素个数为 ( A:j*m+i B:i*m+j C:i*m+j-1 D:j*m+i-1 40. 有字符数组 a[10]={‘A’,‘\0’}和 b[10]={‘B’},则以下正确的输出语句是 ( A:puts(a,b); B:printf("%s %s\n",a[],b[]); )。 )。 )。 )。 )。

C:putchar(a,b); D:puts(a);puts(b); 41. 下列程序的输出结果是( )。 #include <stdio.h> #include <string.h> void main() { char p1[20]="abcd",p2[20]="ABCD"; char str[50]="xyz"; strcpy(str+2,strcat(p1+2,p2+1)); printf("%s\n",str); } A:xyabcAB B:abcABz C:Ababcz D:xycdBCD 42. 以下程序执行后输出结果是( void main() { char a[]="movie",b[10]="movie"; printf("%d %d\n",sizeof(a),sizeof(b)); } A:5 5 B:6 6 C:6 10 D:10 10 43. 以下程序的输出结果是( )。 void main() { char *p[10]={"abc","aabdfg","dcdbe","abbd","cd"}; )。

printf("%d\n",strlen(p[4])); } A:2 B:3 C:4 D:编译出错 44. 已知有以下的说明, int a[]={8,1,2,5,0,4,7,6,3,9}; 那么 a[*(a+a[3])]的值为 ( A:5 B:0 C:4 D:7 45. 以下程序输出结果是( )。 #include main() { int a[2][2]={1,2,3,4},(*p)[2]; p=a; p++; printf("%d\n",**p ); } A:2 B:3 C:4 D:以上都不对 46. 设 char ch,str[4],*strp;,则正确的赋值语句是 ( )。 A:ch="CBA"; B:str="CBA"; C:strp="CBA"; D:*strp="CBA"; <stdio.h> )。

47. 下面程序的运行结果是( )。 #include #include <stdio.h> <string.h>

fun(char *w,int n) {char t,*s1,*s2; s1=w;s2=w+n-1; while(s1<s2){t=*s1++;*s1=*s2--;*s2=t;} } main() {char *p; p="1234567"; fun(p,strlen(p)); puts(p); } A:7654321 B:1714171 C:1711717 D:7177171 48. 以下程序的输出是( )。 #include <stdio.h> main(){ char a[]="language",*p; p=a; while(*p!=‘u’){ printf("%c",*p-‘u’+‘U’);p++;} } A:LANGUAGE B:language C:LANG D:LANGuage 49. struct s1

{ char a[3]; int num; }t={‘a’,‘b’,‘x’,4},*p; p=&t; 则输出为 x 的语句是( )。 A:printf(“%c\n”,p->t.a[2]); B:printf(“%c\n”,(*p).a[2]) C:printf(“%c\n”,p->a[3]); D:printf(“%c\n”,(*p).t.a[2]); 50. 以下程序的输出是( )。

#include <stdio.h> main(){ struct st {int x; int y; }cnum[2]={1,3,2,7}; printf("%d\n",cnum[0].y/cnum[0].x*cnum[1].x); } A:0 B:1 C:3 D:6 51. 以下对 age 的非法引用是( struct student )。

{int age; int num; }stu1,*p; p=&stu1; A:stu1.age

B:student.age C:p->age D:(*p).age 52. 以下程序的输出是( )。 #include <stdio.h> union myun {struct {int x,y,z;}u; int k; }a; void main() {a.u.x=4;a.u.y=5;a.u.z=6; a.k=0; printf("%d\n",a.u.y); } A:4 B:5 C:6 D:0 53. 若要用 fopen 函数打开一个二进制文件,该文件要既能读也能写,当文件不存在时新建文件,则文件 打开方式字符串应是( A:"ab+" B:"rb+" C:"wb+" D:"ab" 54. 若执行 fopen 函数时发生错误,则函数的返回值是 ( A:地址值 B:0 C:1 D:EOF )。 )。

55. 要打开文件 c:\user\text.txt 用于追加数据,正确的语句是( A:fp=fopen("c:\turboc2\abc.txt","r"); B:fp=fopen("c:\\turboc2\abc.txt","r"); C:fp=fopen("c:\\turboc2\\abc.txt","a+"); D:fp=fopen("c:\turboc2\abc.txt","a+"); 56. 在执行 fopen 函数时,ferror 函数的初值是 ( A:TRUE B:-1 C:1 D:0 57. #include main() { char * s1="Hello",*s2="Beijing"; FILE *pf=fopen("abc.dat","wb+"); fwrite(s2,7,1,pf); fseek(pf,-1,SEEK_CUR); fwrite(s1,5,1,pf); fclose(pf); } 以上程序执行后,文件 abc.dat 中的内容为 ( A:Hellong B:Beijing Hello C:BeijinHello D:Hello )。 <stdio.h> )。

)。

58. 若 fp 为文件指针,且文件已正确打开,i 为整型数据,以下语句的输出结果是( fseek(fp,0,SEEK_END); i=ftell(fp); printf("i=%d\n",i); A:fp 所指的文件记录长度

)。

B:fp 所指的文件长度,以字节为单位 C:fp 所指的文件长度,以比特为单位 D:fp 所指的文件当前位置,以字节为单位 59. 函数调用语句:fseek(fp,-20L,2);的含义是 ( A:将文件位置指针移到距离文件头 20 个字节处 B:将文件位置指针从当前位置向后移动 20 个字节 C:将文件位置指针从文件末尾处后退 20 个字节 D:将文件位置指针移到离当前位置 20 个字节处 60. 若将文件指针的读写位置指针移动到距离文件头 200 个字节的位置,对应正确的操作是 ( A:fseek ( fp, B:fseek ( fp, C:fseek ( fp, D:ftell ( 200 ) 200, SEEK_SET ) 200, SEEK_CUR ) 200, SEEK_END ) )。 )。

多选题(共 20 题,每题 2 分,共 40 分)
1. 关于以下运算,说法正确的有 ( )。

A:设有宏定义"#define F(N) 2*N",则表达式 F(2+3)的值是 10 B:设 int x=4;则执行语句 x += x *= x + 1;后,x 的值为 40 C:设 int a, b = 8;执行 a = b<<2 + 1;后 a 的值是 33 D:设 int a[3][4], *p = a[1]; 该指针变量 p 指向的元素是 a[1][0] 2. 有以下定义:char a[10],*b=a; 则能给 a 数组输入字符串的语句有 ( A:gets(a); B:gets(a[0]); C:gets(&a[0]); D:gets(b); 3. 要求函数的功能是在一维数组 a 中查找 x 值。若找到,则返回所在的下标值;否则,返回 0。设数据 放在数组元素的 a[1]到 a[n]中。在以下给出的函数中,不能正确执行此功能的函数有 ( A:funa(int *a, int n, int x) { *a = x; )。 )。

while(a[n] != x) n--; return n; } B:funb(int *a, int n, int x) { int k; for(k = 1; k <= n; k++) if(a[k] == x) return k; return 0; } C:func(int a[], int n, int x) { int *k; a[0] = x; k = a+n; while(*k != x) k--; return k - n; } D:fund(int a[], int n, int x) { int k = 0; do {k++; }while((k < n+1)&&(a[k]!=x)); if((k < n+1)&&a[k] == x)) return k; else return 0; } 4. 关于下列程序的输入与输出,正确的说法有( #include <stdio.h> void main() { )。

int m,n; printf("Enter m,n∶"); scanf("%d%d",&m,&n); while(m!=n) {while(m>n)m-=n; while(n>m)n-=m; } printf("m=%d\n",m); } A:输入 m>n 时,程序将输出 1 B:输入 m<n 时,程序将输出 1 C:输入 m,n 满足 m%n=0,且 m>n 时,程序输出值为 n 的值 D:输入 m 或 n 为 0 时,程序将陷入死循环 5. 已知有如下程序: void main() { int a[5]={1,2,3,4,5},*b; b=(int*)malloc(sizeof(int)); ____; printf("%d\n",*b); } 要使程序输出为 a[2]的值,则函数 fun 的定义和横线处对应的 fun 调用的正确有 ( A:void fun(int*s,int*d) {*d=*(s+2);} 调用: fun(a,&b) B:void fun(int*s,int&d) {d=*(s+2);} 调用: fun(a,b) C:void fun(int*s,int &d) {d=*(s+2);} )。

调用: fun(a,*b) D:void fun(int*s,int **d) {**d=*(s+2);} 调用: fun(a,&b) 6. 以下函数欲实现交换 x 和 y 的值,且通过正确调用返回交换结果。不能实现这一功能的有 ( A:funa(int *x, int *y) { int *p; *p = *x; *x = *y; *y = *p; } B:funb(int x, int y) { int t; t = x; x = y; y = t; } C:func(int *x, int *y) { int p; p = *x; *x = *y; *y = p; } D:fund(int *x, int *y) { int *p; *x = *x + *y; *y = *x - *y; *x = *x - *y; } 7. 函数调用时,下列说法中正确的有 ( )。 )。

A:若用值传递方式,则形式参数不予分配内存 B:实际参数和形式参数可以同名 C:主调函数和被调用函数可以不在同一个文件中 D:函数间传递数据可以使用全局变量 8. 下面叙述正确的有( )。

A:函数调用可以出现在表达式中 B:函数调用可以作为一个函数的实参 C:函数调用可以作为一个函数的形参

D:函数可以直接调用其本身 9. 下列说法中正确的有 ( )。 A:递归函数的形参是自动变量 B:有些递归函数是不能用非递归算法来实现的 C:c 语言不允许这样的函数调用:函数 A 调用了函数 B,而函数 B 又调用了函数 A D:C 语言不允许函数的嵌套定义 10. 下列关于指针与引用的说法,正确的有 ( )。

A:引用只能在定义时被初始化一次,以后不能改变 B:指针可以被重新赋值以指向另一个不同的对象 C:引用和指针都可以指向空值 D:引用和指针都可以用 const 修饰 11. 若有如下定义:int s[3];则下面表达式中,表示数组元素 s[1]的有 ( )。 A:*&s[1] B:*(&s[0]+1) C:*(s+1) D:*(&(s[0]+1)) 12. 已知:int a=1,*p=&a;则以下表达式可以得到 a 的值的有 ( A:*p B:p[0] C:*&a D:*&p 13. 若有定义: char *str[]={"one","two","three"},**p=str; 则可以表示出字符''t''的表达是 ( A:*str[2] B:*str+2 C:*(p+1) D:**++p 14. 若有以下定义和语句,则对 w 数组元素的正确引用有 int w[2][3], (*pw)[3]; pw = w; ( A:*(w[0]+2) )。 )。 )。

B:pw[0][0] C:*pw[2] D:*(pw[1]+2) 15. 设有以下语句 struct st{ int n; struct st *next; }; static struct st a[3]={5,&a[1],6,&a[2],7,NULL},*p=&a[0]; 则以下表达式的值为 6 的有 ( A:p->n++ B:++p->n C:(++p)->n D:p->next->n 16. 以下关于结构类型变量的定义正确的有 ( A:struct data{ int num; float price; }&book; B:struct data{ int num; float price; }book; book b; C:struct data{ int num; float price; }book; struct data &d=book; D:typedef struct data{ )。 )。

int num; float price; }book; book b; 17. 以下 scanf 函数调用语句中对结构体变量成员的正确引用有( )。 struct { char pupil name[ 20 ];

int age; int sex; } pup[ 5 ],*p; p=pup; A:scanf("%s",pup[ 0 ].name); B:scanf("%d",&pup[ 0 ].age); C:scanf("%d",&(p->sex)); D:scanf("%d",p->age); 18. 以下关于枚举类型的用法中,正确的有 ( A:enum a {1,2,3}; B:enum a {a,b,c}; C:enum a {a,b,c}d; D:enum a {a,b,c}a; 19. 设有如下说明,则正确的说法有( )。 union data{ int i; char c; float f; }a; A:a 所占的内存长度等于成员 f 的长度 B:a 的地址和它的各成员地址都是同一地址 C:a 可以作为函数参数 D:不能直接对 a 赋值 )。

20. 设有结构类型: typedef struct str{ int no; char name[20]; }STR; 另有变量定义:STR a[20], x; 以下语句希望实现,向与文件指针变量 fp 关联的文件输出一个结构信息,正确的代码有( A:fwrite(a, sizeof(STR), 1, fp); B:fwrite(&a[2], sizeof(STR), 1, fp); C:fwrite(&x, sizeof(STR), 1, fp); D:fwrite(x, sizeof(STR), 1, fp); )。

基础操作题(共 6 题,每题 5 分,共 30 分)
1. 下面程序的功能是统计用 0 至 9 之间的不同的数字组成的三位数的个数。 main() { int i,j,k,count=0; for(i=1;i<=9;i++) for(j=0;j<=9;j++) if( ①) continue; else for(k=0;k<=9;k++) if( ② ) count++; printf("%d",count); } #include"stdio.h" void main() { int i,j,k,count=0; for(i=1;i<=9;i++) for(j=0;j<=9;j++) if( i==j) continue; else for(k=0;k<=9;k++)

if( k!=i&&k!=j) count++; printf("%d",count); } 648 2. 下面程序的功能是将字符串 s 中的每个字符按升序的规则插到数组 a 中, 字符串 a 已排好序。 #include <string.h> main() { char a[20]="cehiknqtw"; char s[]="fbla"; int i,k,j; for(k=0;s[k]!= '\0';k++ ) { j=0; while(s[k]>=a[j] && a[j]!= '\0' ) j++; for( ① ) ② ; a[j]=s[k]; } puts(a); } 答案: #include <string.h> void main() { char a[20]="cehiknqtw"; char s[]="fbla"; int i,k,j; for(k=0;s[k]!= '\0';k++ ) { j=0;

while(s[k]>=a[j] && a[j]!= '\0' ) j++; for(i=19;i>=0;i--) a[i+1]=a[i]; a[j]=s[k]; } puts(a); } 3. 下面程序的功能是用辗转相除法求两个正整数 m 和 n 的最大公约数。 hcf(int m,int n) { int r; if(m<n) { r=m; ① ; n=r; } r=m%n; while( ② ) { m=n; n=r; r=m%n; } ③ ; }

#include"stdio.h" void main() { int y,m,n; int hcf(int m,int n);

scanf("%d%d",&m,&n);

y=hcf(m,n); printf("%d\n",y); }

int hcf(int m,int n) { int r; if(m<n) { r=m; m=n;//1 n=r; } r=m%n; while( r!=0) { m=n;n=r;r=m%n; } return n; }

4. 下面程序的功能是从键盘上输入若干学生的学习成绩,统计并输出最高成绩和最低成绩,当输入为负数 时结束输入。 main() { float x,amax,amin; scanf("%f",&x); amax=x; amin=x; while( ① ) { if(x>amax) amax=x;

if( ② ) amin=x; scanf("%f",&x); } printf("\namax=%f\namin=%f\n",amax,amin); }

main() { float x,amax,amin; scanf("%f",&x); amax=x;amin=x; while(x>=0) { if(x>amax) amax=x; if(x<amin) amin=x; scanf("%f",&x); } printf("\namax=%f\namin=%f\n",amax,amin); } 5. 下面程序的功能是不用第三个变量,实现两个数的对调操作。 #include <stdio.h> main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a= ① ; b= ② ; a= ③ ;

printf("a=%d,b=%d\n",a,b); } #include <stdio.h> main() { int a,b; scanf("%d%d",&a,&b); printf("a=%d,b=%d\n",a,b); a=a+b ; b= a-b; a= a-b; printf("a=%d,b=%d\n",a,b); } 6. 下面程序的功能是根据近似公式:π 2/6≈ 1/12+1/22+1/32+ ?? +1/n2,求 π 值。 #include <math.h> double pi(long n) { double s=0.0; long i; for(i=1;i<=n;i++) s=s+ ① ; return( ② ); }

综合操作题(共 2 题,每题 10 分,共 20 分)
1. 将 1 到 9 这九个数字分成 3 个三位数 a,b,c,要求第 1 个三位数,正好是第 2 个三位数的两倍,是第 3 个三位数的三倍。用程序求解怎么分。 #include"stdio.h" void main() { int a,b,c,d,e,f,g,h,i,S1,S2,S3;//a[9]={1,2,3,4,5,6,7,8,9};

for(a=1;a<=9;a++) for(b=1;b<=9;b++) for(c=1;c<=9;c++)

for(d=1;d<=9;d++) for(e=1;e<=9;e++) for(f=1;f<=9;f++)

for(g=1;g<=9;g++) for(h=1;h<=9;h++) for(i=1;i<=9;i++) { S1=100*a+10*b+c; S2=100*d+10*e+f; S3=100*g+10*h+i;

if((S1==2*S2)&&(S1==3*S3)) /* if((a!=b)&&(a!=c)&&(a!=d)&&(a!=e)&&(a!=f)&&(a!=g)&&(a!=h)&&(a!=i)) if((b!=c)&&(b!=d)&&(b!=e)&&(b!=f)&&(b!=g)&&(b!=h)&&(b!=i)) if((c!=d)&&(c!=e)&&(c!=f)&&(c!=g)&&(c!=h)&&(c!=i)) if((d!=e)&&(d!=f)&&(d!=g)&&(d!=h)&&(d!=i)) if((e!=f)&&(e!=g)&&(e!=h)&&(e!=i)) / if((f!=g)&&(f!=h)&&(f!=i)) if((g!=h)&&(g!=i)) if(g!=i)*/ //for(j=1;j<9;j++) printf("%d %d %d \n",S1,S2,S3); } // else printf("no"); printf("\n"); }

#include <stdio.h> int pd1(int a) { int x,y,z; x=a%10; y=a/10%10; if(x==y||y==z||z==x) return 0; return 1; } int pd2(int a,int b) { int x,y,z,xx,yy,zz; x=a%10; y=a/10%10; if(x==xx||x==yy||x==zz) return 0; if(y==xx||y==yy||y==zz) return 0; if(z==xx||z==yy||z==zz) return 0; return 1; } void main() { for(int i=123;i<333;i++) { if(pd1(i)==0||pd1(i*2)==0||pd1(i*3)==0)continue; if(pd2(i,i*2)==0||pd2(i,i*3)==0||pd2(i*2,i*3)==0)continue; printf("%d %d %d \n",i,i*2,i*3); } getchar(); } z=a/100; xx=b%10; yy=b/10%10; zz=b/100; z=a/100;

2. 输入两个字符串,要求将这两个字符串交叉连接。如串 1 为"ABCD",串 2 为"123456",则合并后的串 为"A1B2C3D456"。

#include"stdio.h" void main() { int i,*p; int a[6]={1,2,3,4,5,6}; char s[6]={'A','B','C','D'},*q; p=a; q=s; for(i=1;i<13;i++) { if(i%2!=0) printf("%c",*q++); else if(i%2==0) printf("%d",*p++) ; } }


赞助商链接

更多相关文章:
(客观题)C语言程序设计预赛试题
第七届全国信息技术应用水平大赛预赛试题 C 语言程序设计 一、单选题(60 题,1...【答案】A 【分数】1 分 【选项】 A、0 B、4 C、5 D、7 [15]、有...
C语言预赛
第四届C语言预赛试题 20页 2下载券 C语言预赛试题(1) 21页 1下载券 第六...(七)函数 1)库函数的正确调用。 2)函数的定义方法。 3)函数的类型和返回值...
C语言预赛试题第四届
C语言预赛试题 21页 1财富值如要投诉违规内容,请到百度文库投诉中心;如要提出功能问题或意见建议,请点击此处进行反馈。 C语言预赛试题第四届 隐藏>> 一、单选题...
第四届预赛C语言试题及答案
第四届预赛C语言试题及答案第四届预赛C语言试题及答案隐藏>> 小题, 一、单选题(共 60 小题,每题 1 分,共 60 分) 单选题( 1. 执行下列程序中的输出语句...
4C语言题
第七届C语言预赛试题4 33页 免费 喜欢此文档的还喜欢 C语言题库(选择题) 45...C 语言题库 1楼 C 语言题库 *1 A 一个 C 程序的执行是从___。 A)本...
第六届C语言预赛试题
第六届C语言预赛试题_IT认证_资格考试/认证_教育专区。单选题 [1]、C 语言...#include "stdio.h" main() { int a[]={1,2,3,4,5,6,7,8,9,10,...
第六届C语言预赛试题3
第六届C语言预赛试题 36页 免费 C语言试题3 3页 免费 C语言试题3 4页 5财富...【答 【分 【选 A、7 B、8 C、6 D、2 案】B 数】1 分项】 [3]、...
C语言程序设计预赛
C语言程序设计预赛 隐藏>> 教育工程就业技能大赛预赛 预赛试题 第五全国 ITAT...{2,3,4},{5,6,7}}; int t; t=stu[0].a+stu[1].b%stu[0].c;...
...C语言程序设计预赛试题(客观题含答案)
第七届全国信息技术应用水平大赛预赛试题 C 语言程序设计 一、单选题(60 题,1...(4) #define POWER(x) ((x)*(x)) 【答案】A 【分数】1 分 【选项】...
C语言程序设计预赛主观题答案及评分标准
C语言程序设计预赛主观题答案及评分标准。程序填充题...4、下列程序可以求出 1~299 中能被 3 整除,且...2012 第七届itatC语言程... 9页 1下载券 C...
更多相关标签:

All rights reserved Powered by 甜梦文库 9512.net

copyright ©right 2010-2021。
甜梦文库内容来自网络,如有侵犯请联系客服。zhit325@126.com|网站地图