C语言程序高手进来!急

6.不正确的变量说明是( )。
A. unsigned int ui;
B. short int s;
C. double int A;
D. int i,j,k;

7.合法的C语言程序标识只符是( )。
A. 5dm
B. a>b
C. Hh
D. $a

8.不合法的字符常量是( )。
A. ’2’
B. ’\101’
C. ’ab’
D. ’\n’

9.若有代数式 (3ae)/(bc),则不正确的表达式是( )。
A. a/b/c*e*3
B. 3*a*e/b/c
C. 3*a*e/b*c
D. a*e/c/b*3

10.以下选项中不合法的赋值语句是( )。
A. c=(a=1,b=2);
B. k=i=j;
C. a=b+c=5;
D. n1=(n2=(n3=0));

11.若希望当A的值为奇数时,表达式的修正为“真”,A的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是( )。
A. A%2= =1
B. !(A %2 = =0)
C. !(A%2)
D. A%2

12.若w=1,x=2,y=3,z=4,则条件表达式w<x?x:y<z?y:z的值是( )。
A. 4
B. 3
C. 2
D. 1

13.设ch 是char 型变量,其值为 A, 下面表达式的值为( )。

ch = ( ch >= ‘A’ && ch <= ‘Z’ ) ? ( ch + 32 ) : ch ;
A. A
B. a
C. Z
D. z

14.假定所有变量均已正确说明,下列程序运行后x的值是( )。

a=b=c=0, x=35;

if (! a) x――;

else if (b ); if ( c) x=3;

else x=4

A. 34
B. 4
C. 35
D. 3

15.下面程序段的输出结果是( )。

int n=4;

while (n――) printf(“%2d”, ――n);

A. 2 0
B. 31
C. 3 2 1
D. 2 1 0

16.下面程序段的输出结果是( )。

int x=3;

do

{ printf(“%3d”, x-=2); }

while (!(――x));
A. 1
B. 30
C. 1 -2
D. 死循环

17.以下for循环的执行次数是( )。

for (x=0,y=0;(y=123)&&(x<4);x++);
A. 是无限循环
B. 循环次数不定
C. 执行4次
D. 执行3次

18.若有说明:int a[5][6]; 则对a数组元素的正确引用是( )。

A. a[2][6]
B. a[4,5]
C. a[1+3][0]
D. a(1)(5)

19.判断字符串s1是否大于字符串s2,应当使用( )。
A. if ( s1>s2)
B. if (strcmp ( s1,s2))
C. if ( strcmp( s2, s1)>0)
D. if ( strcmp( s1,s2 )>0)

1.设a=10,则赋值表达式a+=a-=a*a的值是:

11.若x 是int型变量,下面程序段的输出结果是 。

for ( x=3; x<6 ; x++ )

printf ( ( x%2 ) ? ( “ ** %d”) : (“## %d\n”), x);

12.补足程序,实现如下功能:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。

void main()

{ float score, max=0, min=100;

printf(“ Input the score”);

scanf( “ %f”, &score);

while ( (1) )

{ if ( score > max) max=score;

if ( (2) ) min=score;

printf(“ Input the score”);

scanf( “ %f”, &score);

}

printf(“ The max score is %f \n min is %f\n”,max, min);

}

来凑热闹!
6.不正确的变量说明是( )。
A. unsigned int ui;
B. short int s;
C. double int A;
D. int i,j,k;
选c 没有double int这种类型。

7.合法的C语言程序标识只符是( )。
A. 5dm
B. a>b
C. Hh
D. $a
选c 标识符只能是数字、字母、下划线组成,且只能以字母或下划线开头。

8.不合法的字符常量是( )。
A. ’2’
B. ’\101’
C. ’ab’
D. ’\n’
选c 单引号表示字符,c选项是单引号内是字符串。

9.若有代数式 (3ae)/(bc),则不正确的表达式是( )。
A. a/b/c*e*3
B. 3*a*e/b/c
C. 3*a*e/b*c
D. a*e/c/b*3
选c 优先级在同一等级,自左至右运算。

10.以下选项中不合法的赋值语句是( )。
A. c=(a=1,b=2);
B. k=i=j;
C. a=b+c=5;
D. n1=(n2=(n3=0));
选c 先算b+c是一个数,5不能赋值给它。

11.若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是( )。
A. A%2= =1
B. !(A %2 = =0)
C. !(A%2)
D. A%2
选c %是区余运算,如果A是奇数则A%2==1、!(A %2 = =0)、A%2 为真。

12.若w=1,x=2,y=3,z=4,则条件表达式w<x?x:y<z?y:z的值是( )。
A. 4
B. 3
C. 2
D. 1
选c w<x?x:y<z?y:z可看做w<x?x:(y<z?y:z)。w<x为真,则返回x,假返回y<z?y:z。

13.设ch 是char 型变量,其值为 A, 下面表达式的值为( )。

ch = ( ch >= ‘A’ && ch <= ‘Z’ ) ? ( ch + 32 ) : ch ;
A. A
B. a
C. Z
D. z
选B ch=‘A’,‘A’<=ch<=‘Z’,为真,返回 ch + 32,A对应十进制67,加32对应97,刚好是a。

14.假定所有变量均已正确说明,下列程序运行后x的值是( )。

a=b=c=0, x=35;

if (! a) x――;

else if (b ); if ( c) x=3;

else x=4

A. 34
B. 4
C. 35
D. 3
选B else对应前面的最近的if。!a为真,执行x--,接着判断c,c为假,执行些x=4。

15.下面程序段的输出结果是( )。

int n=4;

while (n――) printf(“%2d”, ――n);

A. 2 0
B. 31
C. 3 2 1
D. 2 1 0
选A 可写成这样子第一次while (4) printf(“%2d”, 2);第二次while (2) printf(“%2d”, 0);跳出循环。

16.下面程序段的输出结果是( )。

int x=3;

do

{ printf(“%3d”, x-=2); }

while (!(――x));
A. 1
B. 30
C. 1 -2
D. 死循环
选c 此循环只要--x不为0,就会终止。printf()执行了两次,这就是do...while()与while()...的区别。

17.以下for循环的执行次数是( )。

for (x=0,y=0;(y=123)&&(x<4);x++);
A. 是无限循环
B. 循环次数不定
C. 执行4次
D. 执行3次
选C 其中y=123不起作用,x<4决定了循环的终止。x的值分别取了0、1、2、3、4。

18.若有说明:int a[5][6]; 则对a数组元素的正确引用是( )。

A. a[2][6]
B. a[4,5]
C. a[1+3][0]
D. a(1)(5)
选c 数组下标用[]中括号括起来表示行与列,a[5][6]有5行6列,分别是a[0][0],a[0][1]...a[4][5]。

19.判断字符串s1是否大于字符串s2,应当使用( )。
A. if ( s1>s2)
B. if (strcmp ( s1,s2))
C. if ( strcmp( s2, s1)>0)
D. if ( strcmp( s1,s2 )>0)
选D

1.设a=10,则赋值表达式a+=a-=a*a的值是:
答: a*a=100,然后a-=100,即a=-90,最后a+=-90即a=-90+(-90)=-180。

11.若x 是int型变量,下面程序段的输出结果是 。

for ( x=3; x<6 ; x++ )

printf ( ( x%2 ) ? ( “ ** %d”) : (“## %d\n”), x);

答:
**3##4
**5

12.补足程序,实现如下功能:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。

void main()

{ float score, max=0, min=100;

printf(“ Input the score”);

scanf( “ %f”, &score);

while ( (1) )

{ if ( score > max) max=score;

if ( (2) ) min=score;

printf(“ Input the score”);

scanf( “ %f”, &score);

}

printf(“ The max score is %f \n min is %f\n”,max, min);

}

答:(1)score>=0 (2)score<min
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-10-29
6、C 7、C 8、C 9、C 10、C 11、C 12、C 13、B 14、B 15、A 16、C
17、C 18、C 19、D 1、:-180 11、**3##4
**5
12、(1)score>=0(2)score<min \\哦哟,回答的人还挺多嘛!呵呵,我是学计算机的。他们有些地方是错的,请相信我。试试就知道了。呵呵,不过都基本正确。随便选一个都不会错多少。
第2个回答  2008-10-26
6~14: C C C C C B B
15~19: A C C C D
1: -180
11:
** 3## 4
** 5
12:(1)score>=0(2)score<min
没想到我写答案的时候楼上两位抢先了一步。不过貌似二位的答案有些疏忽吧?
第3个回答  2008-10-26
6.c 7.c 8.c 9.c 10.c 11.c 12.c 13.c 14.c 15.c 16.c 17.c 18.c 19.c

1. -180
11. **3##4
**5

12. (1)score>=0 (2)score<min
第4个回答  2008-10-31
6.c
7.c
8.c
9.c
10.c
11.c
12.b
13.b
14.b
15.a
16.c
17.c
18.c
19.d
1. -180
11.
** 3## 4
**

12.

#include<iostream>
using namespace std;

void main()

{ float score, max=0, min=100;

printf(" Input the score");

scanf( " %f", &score);

while ( (1) )

{ if ( score > max) max=score;

if ( (2) ) min=score;

printf("Input the score");

scanf( " %f", &score);
if(score<0) break; //添加的

}

printf("The max score is %f \n min is %f\n",max, min);

}
相似回答