C语言题目<请帮个忙,因为我是新手,刚学,不会>

一、填空题:
1、输入正方形的边长,计算正方形的周长。
#include “stdio.h”
int main()
{ ( );
scanf( );
x=x*4;
printf(“%f\n”,x);
return 0;
}
2、#include “stdio.h”
int main()
{ ( );
scanf( );
printf(“a=%d\tb=%d\n”,a,b);
return 0;
}
二、单选题:
1、若x和y均定义为int型,z定义为double型,以下不合法的scanf( )函数调用语句是( )
A. scanf("%d%lx,%le″,&x,&y,&z); B. scanf("%2d*%d%lf″,&x,&y,&z);
C. scanf("%x%o%6.2f″,&x,&y,&z); D. 其它答案都不对
2、以下所列的C语言常量中,错误的是( )
A 0xFF B 1.2e0.5 C 0. D ‘\72’
3、若变量c为char类型,能正确判断出c为小写字母的表达式是( )
A ‘a’<=c<= ‘z’ B (c>= ‘a’)||(c<= ‘z’)
C (c>= ‘a’)&&(c<= ‘z’) D 其它答案都不对
4、程序是从( )开始执行。
A 程序中的第一条语句 B 程序中的第一条可执行语句
C 程序中的第一个函数 D 程序中的main函数
5、以下程序的运行结果是()
#include “stdioh”
int main ()
{int i,j,m,n ;
i=8;
j=10;
m=++i;
n=j++;
printf("%d,%d",m,n);
return 0;
}
A 9, 10 B 8, 11 C 8,10 D 9,11
6、若有以下定义和语句:
char c1='b',c2='e';
printf("%d,%c\n",c2-c1,c2-'a'+'A');
则输出的结果是( )
A 2,M B 3,E C 输出项与对应的格式控制不一致,输出结果不确定
D 其它答案都不对
7、以下程序的输出结果是()
#include “stdio.h”
int main()
{int a=12,b=12;
printf("%d,%d\n",- -a,+ +b);
return 0;
}
A 10 10 B 12 12 C 11 10 D 11 13
8、设有以下定义
int a=0;
double b=1.25;
char c='A';
#define d 2
则下面语句中错误的是()
A a++; B b++; C d++; D 其它答案都不对
9、有如下程序段:
int a1,a2;
char c1,c2;
scanf("%d%c%d%c″,&a1,&c1,&a2,&c2);
若要求a1,a2,c1,c2的值分别为10、20、A、B,正确的数据输入是( )
A 10A 20B<CR>(<CR>表回车) B 10 A 20 B<CR>
C 10A20 B<CR> D 其它答案都不对

一、填空题:
1、输入正方形的边长,计算正方形的周长。
#include “stdio.h”
int main()
{ double x;
scanf("%f",&x);
x=x*4;
printf(“%f\n”,x);
return 0;
}
第2题不知道题目是什么
二、单选题:
1、若x和y均定义为int型,z定义为double型,以下不合法的scanf( )函数调用语句是( )
A. scanf(”%d%lx,%le〃,&x,&y,&z); B. scanf(”%2d*%d%lf〃,&x,&y,&z);
C. scanf(”%x%o%6.2f〃,&x,&y,&z); D. 其它答案都不对
答案A.没有%lx这种格式,一般l代表长型,而x代表16进制

2、以下所列的C语言常量中,错误的是( )
A 0xFF B 1.2e0.5 C 0. D ‘\72’
答案B.指数形式的常量中的E后必须是整型阶码

3、若变量c为char类型,能正确判断出c为小写字母的表达式是( )
A ‘a’<=c<= ‘z’ B (c>= ‘a’)||(c<= ‘z’)
C (c>= ‘a’)&&(c<= ‘z’) D 其它答案都不对
答案C.&&为逻辑与,||为逻辑或,c应该在a与z之间

4、程序是从( )开始执行。
A 程序中的第一条语句 B 程序中的第一条可执行语句
C 程序中的第一个函数 D 程序中的main函数
答案D.一个C程序总是从main函数开始执行

5、以下程序的运行结果是()
#include “stdioh”
int main ()
{int i,j,m,n ;
i=8;
j=10;
m=++i;
n=j++;
printf("%d,%d",m,n);
return 0;
}
A 9, 10 B 8, 11 C 8,10 D 9,11
答案A.++i是先将i加1再将i的值赋给m,而j++是先将j的值赋给n再将n加1

6、若有以下定义和语句:
char c1='b',c2='e';
printf("%d,%c\n",c2-c1,c2-'a'+'A');
则输出的结果是( )
A 2,M B 3,E C 输出项与对应的格式控制不一致,输出结果不确定
D 其它答案都不对
答案B.%d表示输出整型数,c2-c1代表2个字符的ASC码相减,结果是3.%c是输出字符,e-a+A的ASC码结果代表的是字符E

7、以下程序的输出结果是()
#include “stdio.h”
int main()
{int a=12,b=12;
printf("%d,%d\n",- -a,+ +b);
return 0;
}
A 10 10 B 12 12 C 11 10 D 11 13
答案D.解释可以参考第5题

8、设有以下定义
int a=0;
double b=1.25;
char c='A';
#define d 2
则下面语句中错误的是()
A a++; B b++; C d++; D 其它答案都不对
答案C.#define是宏定义命令,它定义了d的值为2,那d的值到文件结束了都是2,不能改变

9、有如下程序段:
int a1,a2;
char c1,c2;
scanf(”%d%c%d%c〃,&a1,&c1,&a2,&c2);
若要求a1,a2,c1,c2的值分别为10、20、A、B,正确的数据输入是( )
A 10A 20B<CR>(<CR>表回车) B 10 A 20 B<CR>
C 10A20 B<CR> D 其它答案都不对
答案B.
参考答案仅做参考
温馨提示:答案为网友推荐,仅供参考
相似回答